/* SN GROUP — ENVOI 73 (30.10.2026) : bloc « Contact visite » de la fiche d'un bien (includes/courtier-bien.php), sous les boutons.
   Disposition demandée par David (16:37) : petite photo ronde à gauche, nom de l'agence, nom du courtier, adresse, mobile, e-mail.
   Verre dépoli clair aux couleurs SN (sable #F5F0E8, doré #C4A87C, brun #6C5836, anthracite #19130B), repli opaque sans flou.
   Liens d'au moins 44 px, texte d'au moins 14 px (16 px sur téléphone), aucun mot coupé. Rien d'autre de la fiche ne change. */
.sn-courtier { position: relative; margin: 22px 0 0; padding: 16px 16px 8px; border-radius: 16px; color: #19130B;
  background: linear-gradient(140deg, rgba(245, 240, 232, .82), rgba(196, 168, 124, .18));
  border: 1px solid rgba(196, 168, 124, .55);
  box-shadow: 0 14px 34px -22px rgba(25, 19, 11, .45), inset 0 1px 0 rgba(255, 255, 255, .75);
  -webkit-backdrop-filter: blur(18px) saturate(1.2); backdrop-filter: blur(18px) saturate(1.2); }
.sn-courtier-titre { margin: 0 0 12px; font-family: inherit; font-size: 14px; font-weight: 400; line-height: 1.3; letter-spacing: .12em;
  text-transform: uppercase; color: #6C5836; }
.sn-courtier-tete { display: flex; align-items: flex-start; gap: 14px; margin: 0 0 8px; }
.sn-courtier-photo { flex: none; width: 64px; height: 64px; margin: 2px 0 0; border-radius: 50%; overflow: hidden;
  border: 1px solid rgba(196, 168, 124, .7); background: #19130B; }
.sn-courtier-photo img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: 50% 22%; }
.sn-courtier-photo .sn-courtier-logo { object-fit: contain; object-position: 50% 50%; padding: 12px; box-sizing: border-box; }
.sn-courtier-qui { min-width: 0; }
.sn-courtier-agence { margin: 0; font-size: 14px; line-height: 1.3; letter-spacing: .06em; color: #6C5836; }
.sn-courtier-nom { margin: 2px 0 0; font-family: var(--font-serif, Georgia, serif); font-size: 20px; line-height: 1.2; font-weight: 400; color: #19130B; }
.sn-courtier--agence .sn-courtier-agence { font-family: var(--font-serif, Georgia, serif); font-size: 20px; letter-spacing: 0; color: #19130B; }
.sn-courtier-adresse { margin: 6px 0 0; font-size: 14px; line-height: 1.45; color: #4A4038; }
.sn-courtier-adresse span { display: block; }
.sn-courtier-liens { list-style: none; margin: 0; padding: 0; }
.sn-courtier-liens li + li { border-top: 1px solid rgba(196, 168, 124, .4); }
.sn-courtier-liens a { display: flex; align-items: center; gap: 10px; min-height: 44px; padding: 4px 6px; margin: 0 -6px; border-radius: 8px;
  font-size: 15px; line-height: 1.3; color: #19130B; text-decoration: none; white-space: nowrap; }
.sn-courtier-liens a span { min-width: 0; overflow: hidden; text-overflow: ellipsis; text-decoration: underline; text-decoration-color: rgba(108, 88, 54, .45); text-underline-offset: 3px; }
.sn-courtier-liens a:hover { background: rgba(196, 168, 124, .16); }
.sn-courtier-liens a:hover span { text-decoration-color: #6C5836; }
.sn-courtier-liens a:focus-visible { outline: 2px solid #6C5836; outline-offset: 1px; }
.sn-courtier-ico { flex: none; width: 20px; height: 20px; color: #6C5836; }
@supports not ((-webkit-backdrop-filter: blur(1px)) or (backdrop-filter: blur(1px))) {
  .sn-courtier { background: #F5F0E8; }
}
@media (max-width: 820px) {
  .sn-courtier-liens a, .sn-courtier-adresse { font-size: 16px; }
}
