/* Dialogue téléphonique : discret, non intrusif, réservé aux clics sur ordinateur. */
.dv-call-dialog{
  width:min(640px,calc(100vw - 32px));
  max-height:calc(100dvh - 32px);
  box-sizing:border-box;
  overflow-y:auto;
  margin:auto;
  padding:34px 36px 28px;
  border:1px solid #dce7df;
  border-radius:22px;
  background:#fbfaf6;
  color:#142f3b;
  box-shadow:0 26px 90px rgba(11,31,39,.28),0 6px 18px rgba(11,31,39,.08);
}
.dv-call-dialog:not([open]){display:none}
.dv-call-dialog::backdrop{
  background:rgba(9,29,37,.58);
  -webkit-backdrop-filter:blur(3px);
  backdrop-filter:blur(3px);
}
.dv-call-dialog__close{
  position:absolute;
  top:14px;
  right:14px;
  z-index:1;
  width:40px;
  height:40px;
  display:grid;
  place-items:center;
  border:0;
  border-radius:50%;
  background:transparent;
  color:#1a3946;
  cursor:pointer;
}
.dv-call-dialog__close:hover{background:#e7efea}
.dv-call-dialog__close:focus-visible,
.dv-call-dialog__actions a:focus-visible{
  outline:3px solid #d4ad49;
  outline-offset:3px;
}
.dv-call-dialog__upper{
  display:grid;
  grid-template-columns:minmax(0,1fr) 150px;
  align-items:center;
  gap:22px;
  padding-right:8px;
}
.dv-call-dialog__copy{min-width:0}
.dv-call-dialog__eyebrow{
  display:flex;
  align-items:center;
  gap:9px;
  margin:0 0 17px;
  color:#28645f;
  font:800 .7rem/1.4 Manrope,'DM Sans',sans-serif;
  letter-spacing:.10em;
  text-transform:uppercase;
}
.dv-call-dialog__eyebrow-dot{
  width:9px;
  height:9px;
  border-radius:50%;
  background:#83b38c;
  box-shadow:0 0 0 4px #e5f0e6;
  flex:none;
}
.dv-call-dialog h2{
  margin:0 0 12px;
  max-width:350px;
  color:#14313e;
  font:800 clamp(1.7rem,3vw,2rem)/1.16 Manrope,'DM Sans',sans-serif;
  letter-spacing:-.045em;
}
.dv-call-dialog__intro{
  margin:0;
  max-width:405px;
  color:#4e6268;
  font-size:.93rem;
  line-height:1.55;
}
.dv-call-dialog__hours{
  display:flex;
  align-items:flex-start;
  gap:11px;
  margin-top:21px;
  padding:13px 14px;
  background:#edf4ee;
  border:1px solid #d9e7dc;
  border-radius:12px;
}
.dv-call-dialog__hours p{
  display:flex;
  flex-direction:column;
  gap:2px;
  margin:0;
  line-height:1.4;
}
.dv-call-dialog__hours strong{font-size:.87rem;font-weight:800;color:#164b4e}
.dv-call-dialog__hours span{font-size:.84rem;color:#234d56}
.dv-call-dialog__hours small{font-size:.78rem;color:#536a6d;white-space:nowrap}
.dv-call-dialog__clock{width:20px;height:20px;flex:none;color:#286862;margin-top:2px}
.dv-call-dialog__portrait{
  overflow:hidden;
  height:205px;
  width:150px;
  border-radius:18px;
  background:#e3eee9;
  box-shadow:0 2px 0 rgba(28,70,71,.08);
}
.dv-call-dialog__portrait img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 38%}
.dv-call-dialog__actions{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:13px 17px;
  margin-top:26px;
}
.dv-call-dialog__actions a{
  display:inline-flex;
  justify-content:center;
  align-items:center;
  gap:9px;
  min-height:49px;
  box-sizing:border-box;
  text-align:center;
  white-space:nowrap;
  text-decoration:none;
  border-radius:100px;
  font:800 .86rem/1.3 Manrope,'DM Sans',sans-serif;
}
.dv-call-dialog__call{
  padding:11px 19px;
  background:#235d57;
  color:#fff;
  transition:background .17s ease;
}
.dv-call-dialog__call:hover{background:#164840;color:#fff}
.dv-call-dialog__call svg{width:17px;height:17px;flex:none}
.dv-call-dialog__request{
  padding:11px 3px;
  color:#173d4b;
  text-decoration:underline!important;
  text-decoration-color:#b6c9c5!important;
  text-underline-offset:5px;
}
.dv-call-dialog__request:hover{color:#2c716b}
.dv-call-dialog__request span{font-size:1rem}
.dv-call-dialog__note{
  margin:16px 0 0;
  color:#63757b;
  font-size:.78rem;
  line-height:1.5;
}
body.dv-call-dialog-open{overflow:hidden}
@media(max-width:620px){
  .dv-call-dialog{padding:26px 22px 22px;border-radius:18px}
  .dv-call-dialog__upper{grid-template-columns:minmax(0,1fr);padding-right:5px}
  .dv-call-dialog__portrait{display:none}
  .dv-call-dialog__actions{flex-direction:column;align-items:stretch}
  .dv-call-dialog__call,.dv-call-dialog__request{width:100%}
}
@media(prefers-reduced-motion:reduce){
  .dv-call-dialog__call{transition:none}
}
