/* TXA Platform 0.54.11-H — página Contato: canais como ações + formulário em modal */

.contact-channel-actions{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  margin:0 0 34px;
}
.contact-channel-button{
  min-height:64px;
  border-radius:12px;
  border:1px solid #cfcfc7;
  padding:0 20px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  font:inherit;
  font-size:.95rem;
  font-weight:900;
  text-decoration:none;
  cursor:pointer;
  transition:transform .16s ease,border-color .16s ease,background .16s ease;
}
.contact-channel-button:hover{transform:translateY(-1px)}
.contact-channel-button.is-whatsapp{
  background:#111310;
  color:#fff;
  border-color:#2d7d59;
}
.contact-channel-button.is-whatsapp:hover{border-color:#45b97f;background:#171a16}
.contact-channel-button.is-email{
  background:var(--yellow,#ffd400);
  color:#111310;
  border-color:#d9b900;
}
.contact-channel-button.is-email:hover{background:#f5cd00}
.contact-channel-icon{
  width:28px;
  height:28px;
  border-radius:8px;
  display:grid;
  place-items:center;
  font-size:.9rem;
  line-height:1;
  background:rgba(255,255,255,.08);
}
.contact-channel-button.is-email .contact-channel-icon{background:rgba(17,19,16,.08)}

.contact-modal{
  position:fixed;
  inset:0;
  z-index:5000;
  display:none;
  align-items:center;
  justify-content:center;
  padding:20px;
}
.contact-modal.is-open{display:flex}
.contact-modal-backdrop{
  position:absolute;
  inset:0;
  background:rgba(8,9,8,.78);
  backdrop-filter:blur(5px);
}
.contact-modal-dialog{
  position:relative;
  z-index:1;
  width:min(100%,720px);
  max-height:min(90vh,820px);
  overflow:auto;
  background:#fff;
  border:1px solid #d6d6cf;
  border-radius:20px;
  padding:30px;
  box-shadow:0 28px 80px rgba(0,0,0,.28);
}
.contact-modal-close{
  position:absolute;
  top:14px;
  right:14px;
  width:40px;
  height:40px;
  display:grid;
  place-items:center;
  border:1px solid #d8d8d1;
  border-radius:10px;
  background:#f4f4ef;
  color:#111310;
  font-size:1.45rem;
  line-height:1;
  cursor:pointer;
}
.contact-modal-head{padding-right:48px;margin-bottom:24px}
.contact-modal-head h2{
  margin:10px 0 10px;
  font-size:clamp(2rem,5vw,3rem);
  line-height:1;
  letter-spacing:-.045em;
}
.contact-modal-head p{margin:0;color:#686861;line-height:1.6;max-width:590px}
.contact-email-form .public-form-grid{margin-bottom:0}
.contact-modal-actions{
  display:flex;
  justify-content:flex-end;
  align-items:center;
  gap:10px;
  margin-top:22px;
}
.contact-modal-success{text-align:center;padding:26px 10px 12px}
.contact-modal-success>span{
  width:58px;
  height:58px;
  border-radius:50%;
  background:#e9f8ed;
  color:#26723a;
  display:grid;
  place-items:center;
  margin:0 auto 18px;
  font-size:1.5rem;
  font-weight:950;
}
.contact-modal-success h3{font-size:2rem;margin:0 0 10px}
.contact-modal-success p{color:#686861;line-height:1.6;margin:0 0 20px}
body.contact-modal-open{overflow:hidden}

@media(max-width:650px){
  .contact-channel-actions{grid-template-columns:1fr;gap:10px;margin-bottom:30px}
  .contact-channel-button{min-height:58px;width:100%}
  .contact-modal{padding:10px}
  .contact-modal-dialog{
    width:100%;
    max-height:calc(100vh - 20px);
    border-radius:16px;
    padding:24px 18px 20px;
  }
  .contact-modal-close{top:10px;right:10px}
  .contact-modal-head{padding-right:44px}
  .contact-modal-head h2{font-size:2rem}
  .contact-modal-actions{flex-direction:column-reverse;align-items:stretch}
  .contact-modal-actions .site-btn{width:100%;justify-content:center}
}


/* TXA Platform 0.54.11-I — acabamento final da página Contato */
.contact-grid{grid-template-columns:1fr!important;}
.contact-main{max-width:none!important;}
.contact-hours{margin-top:34px;border-top:1px solid #d8d8d1;padding-top:26px;}
.contact-hours h3{margin:0 0 18px;font-size:1.35rem;}
.contact-hours-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;}
.contact-hours-item{padding:18px 0;}
.contact-hours-item strong{display:block;margin-bottom:8px;font-size:1rem;color:#111310;}
.contact-hours-item p{margin:0 0 6px;color:#5f6059;line-height:1.5;}
.contact-hours-item small{display:block;color:#74756e;line-height:1.5;font-size:.9rem;}
@media(max-width:650px){
  .contact-hours{margin-top:28px;padding-top:22px;}
  .contact-hours-grid{grid-template-columns:1fr;gap:2px;}
  .contact-hours-item{padding:12px 0 16px;}
  .contact-modal-head h2{font-size:1.72rem;line-height:1.03;max-width:14ch;}
  .contact-modal-head p{font-size:.98rem;line-height:1.5;}
}
