/* WebFusion v4.35 · modal "Contato demonstrativo" (Módulos 78.3 e 84.3) */
.demo-contact-overlay{
  position:fixed;
  inset:0;
  z-index:10800;
  display:grid;
  place-items:center;
  padding:20px;
  background:rgba(10,34,40,.66);
  -webkit-backdrop-filter:blur(4px);
  backdrop-filter:blur(4px);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .2s ease,visibility .2s ease;
}
.demo-contact-overlay.show{opacity:1;visibility:visible;pointer-events:auto}
body.demo-contact-open{overflow:hidden}
.demo-contact-modal{
  width:min(480px,100%);
  max-height:calc(100dvh - 40px);
  overflow:auto;
  background:#fff;
  color:#1F3338;
  border:1px solid rgba(27,94,107,.16);
  border-radius:22px;
  box-shadow:0 28px 90px rgba(0,0,0,.25);
}
.demo-contact-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:20px 22px 14px;
  border-bottom:1px solid rgba(27,94,107,.10);
}
.demo-contact-head h2{
  margin:0;
  color:var(--teal-dk,#0F3C47);
  font-family:'Cormorant Garamond',Georgia,serif;
  font-size:1.6rem;
  line-height:1.1;
}
.demo-contact-close{
  display:grid;
  place-items:center;
  width:44px;
  height:44px;
  flex:0 0 auto;
  border:1px solid rgba(15,60,71,.16);
  border-radius:50%;
  background:#fff;
  color:var(--teal-dk,#0F3C47);
  cursor:pointer;
}
.demo-contact-close:hover{border-color:var(--gold,#C9A96E);color:var(--gold-text,#80612C)}
.demo-contact-body{padding:18px 22px 22px}
.demo-contact-body p{margin:0 0 12px;font-size:1rem;line-height:1.65;color:#3F4752}
.demo-contact-channel{font-size:.95rem!important;color:#4E5662!important}
.demo-contact-actions{display:flex;justify-content:flex-end;padding-top:8px}
.demo-contact-actions button{
  min-height:48px;
  padding:0 24px;
  border:1.5px solid var(--teal,#1B5E6B);
  border-radius:999px;
  background:var(--teal,#1B5E6B);
  color:#fff;
  font:700 1rem/1 'DM Sans',system-ui,sans-serif;
  cursor:pointer;
}
.demo-contact-actions button:hover{background:var(--gold,#C9A96E);border-color:var(--gold,#C9A96E);color:var(--teal-dk,#0F3C47)}
.demo-contact-modal :focus-visible{outline:3px solid var(--gold,#C9A96E);outline-offset:3px}
@media (max-width:520px){
  .demo-contact-overlay{padding:12px}
  .demo-contact-actions button{width:100%}
}
@media (prefers-reduced-motion:reduce){.demo-contact-overlay{transition:none}}
