/* Versão 14 — modal de atendimento mais leve; não altera outras seções da LP. */
.bf-contact[hidden] { display: none !important; }
.bf-contact { position: fixed; inset: 0; z-index: 2147480000; display: grid; place-items: center; padding: 20px; font-family: var(--font-body, 'Montserrat', sans-serif); }
.bf-contact__backdrop { position: absolute; inset: 0; background: rgba(6, 25, 64, .48); backdrop-filter: blur(3px); }
.bf-contact__dialog {
  position: relative; width: min(100%, 490px); max-height: min(92dvh, 740px); overflow-y: auto;
  border-radius: 20px; padding: 30px 34px 28px; background: #fff;
  color: #12346e; box-shadow: 0 16px 54px rgba(10, 36, 78, .18);
  font-family: var(--font-body, 'Montserrat', sans-serif); outline: none;
}
.bf-contact__close { position: absolute; top: 16px; right: 17px; width: 34px; height: 34px; border-radius: 50%; border: 1px solid #e1e9f5; background: #fff; color: #143b76; display: grid; place-items: center; cursor: pointer; }
.bf-contact__close:hover { background: #f1f6ff; }
.bf-contact__heading { margin-bottom: 20px; }
.bf-contact__icon { display: grid; place-items: center; width: 37px; height: 37px; border-radius: 11px; color: #27549c; background: #eff5ff; margin-bottom: 15px; }
.bf-contact__eyebrow { margin: 0 38px 9px 0; color: #5271a3; font: 700 10px/1.4 var(--font-display, 'Montserrat', sans-serif); letter-spacing: .19em; }
.bf-contact h2 { font: 700 clamp(23px, 4vw, 29px)/1.18 var(--font-display, 'Montserrat', sans-serif); letter-spacing: -.02em; color: #103475; margin: 0 0 9px; }
.bf-contact__intro { margin: 0; color: #557199; font-size: 13px; line-height: 1.55; }
.bf-contact__form { display: grid; gap: 14px; }
.bf-contact__field label { display: block; margin: 0 0 6px; font-size: 12px; font-weight: 700; color: #234579; }
.bf-contact__field label span { color: #6689c1; }
.bf-contact__field input, .bf-contact__field textarea { box-sizing: border-box; display: block; width: 100%; margin: 0; border: 1px solid #d3deee; border-radius: 10px; background: #f9fbff; padding: 11px 13px; color: #112f68; box-shadow: none; font: 400 13px/1.45 var(--font-body, 'Montserrat', sans-serif); transition: border-color .2s, box-shadow .2s; }
.bf-contact__field input { min-height: 42px; }
.bf-contact__field textarea { resize: vertical; min-height: 90px; max-height: 240px; }
.bf-contact__field input::placeholder, .bf-contact__field textarea::placeholder { color: #8ba1bd; }
.bf-contact__field input:focus, .bf-contact__field textarea:focus { outline: none; border-color: #83a7e9; box-shadow: 0 0 0 3px rgba(114, 152, 222, .12); background: #fff; }
.bf-contact__field [aria-invalid="true"] { border-color: #c85b60; }
.bf-contact__consent { display: flex; gap: 9px; align-items: flex-start; color: #627797; font: 400 11px/1.5 var(--font-body, 'Montserrat', sans-serif); cursor: pointer; }
.bf-contact__consent input { appearance: auto; flex: 0 0 auto; margin: 2px 0 0; width: 15px; height: 15px; accent-color: #244c99; }
.bf-contact__consent a { color: #234d97; text-decoration: underline; }
.bf-contact__actions { display: flex; align-items: center; justify-content: flex-start; }
.bf-contact__send { border: none; display: inline-flex; align-items: center; justify-content: center; gap: 9px; min-height: 43px; border-radius: 100px; padding: 11px 23px; background: linear-gradient(100deg, #163b86, #7199e2); color: #fff; cursor: pointer; font: 600 13px/1.25 var(--font-display, 'Montserrat', sans-serif); }
.bf-contact__send:hover { background: #1d468f; }
.bf-contact__send:disabled { opacity: .65; cursor: wait; }
.bf-contact__feedback { margin: 0; color: #244878; font-size: 12px; line-height: 1.5; }
.bf-contact__feedback:empty { display: none; }
.bf-contact__feedback.is-error { color: #b44750; }
.bf-contact__feedback.is-success { color: #1d6854; }
.bf-contact__footnote { margin: -3px 0 0; font-size: 10px; line-height: 1.4; color: #8494ab; }
.bf-contact__trap { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
body.bf-contact-open { overflow: hidden !important; }
@media (max-width: 550px) {
 .bf-contact { padding: 12px; }
 .bf-contact__dialog { padding: 24px 21px; max-height: calc(100dvh - 24px); border-radius: 17px; }
 .bf-contact__send { width: 100%; }
}
@media (prefers-reduced-motion: reduce) { .bf-contact__field input, .bf-contact__field textarea { transition: none; } }

/* WhatsApp: esconder exclusivamente nesta LP, mesmo quando inserido globalmente pelo tema. */
body.beneficio-fiscal-2026-lp .joinchat,
body.beneficio-fiscal-2026-lp .ht-ctc-chat,
body.beneficio-fiscal-2026-lp .qlwapp,
body.beneficio-fiscal-2026-lp #qlwapp,
body.beneficio-fiscal-2026-lp .floating-wpp,
body.beneficio-fiscal-2026-lp .wa__btn_popup,
body.beneficio-fiscal-2026-lp .whatsapp_chat_support,
body.beneficio-fiscal-2026-lp [class*="whatsapp" i],
body.beneficio-fiscal-2026-lp [id*="whatsapp" i],
body.beneficio-fiscal-2026-lp a[href*="wa.me/"],
body.beneficio-fiscal-2026-lp a[href*="api.whatsapp.com/"],
body.beneficio-fiscal-2026-lp a[href*="web.whatsapp.com/"] { display: none !important; }
