/* VNG Atendimento 1.1.0. Styles and local font are isolated from theme/Elementor. */
@font-face {
  font-family:"VNG Montserrat";
  src:url("fonts/montserrat-variable.woff2") format("woff2");
  font-weight:100 900;
  font-style:normal;
  font-display:swap;
}
html.vngwa-modal-open { overflow:hidden; }
#vng-atendimento-root { --vngwa-font:"VNG Montserrat","Montserrat",Arial,sans-serif; --vngwa-navy:#09254b; --vngwa-ink:#183149; --vngwa-muted:#526985; --vngwa-line:#dce5eb; --vngwa-accent:#ce6b72; --vngwa-green:#25d366; color:var(--vngwa-ink); font-size:16px; line-height:1.6; text-align:left; }
#vng-atendimento-root, #vng-atendimento-root * { font-family:var(--vngwa-font) !important; }
#vng-atendimento-root *, #vng-atendimento-root *::before, #vng-atendimento-root *::after { box-sizing:border-box; }
#vng-atendimento-root [hidden] { display:none !important; }
#vng-atendimento-root button, #vng-atendimento-root input, #vng-atendimento-root textarea, #vng-atendimento-root a { letter-spacing:normal; text-transform:none; font-style:normal; }
#vng-atendimento-root button { cursor:pointer; margin:0; }
#vng-atendimento-root button::before, #vng-atendimento-root button::after { display:none; }
#vng-atendimento-root button:focus-visible, #vng-atendimento-root a:focus-visible, #vng-atendimento-root input:focus-visible, #vng-atendimento-root textarea:focus-visible { outline:3px solid #1b67ce; outline-offset:4px; }
#vng-atendimento-root .vngwa-float { position:fixed; z-index:999998; inset:auto 28px calc(28px + env(safe-area-inset-bottom,0px)) auto; display:flex; align-items:center; justify-content:center; gap:13px; width:auto; min-height:76px; max-width:calc(100vw - 40px); padding:11px 19px 11px 11px; border:1px solid #b1f4c5; border-radius:999px; background:#25d366; color:#063e29; box-shadow:0 9px 28px #075e5430; line-height:1.25; text-align:left; white-space:normal; animation:vngwa-soft-pulse 3.5s ease-out infinite; transition:background .2s,transform .2s; }
#vng-atendimento-root .vngwa-float:hover { background:#39df78; transform:translateY(-2px); animation-play-state:paused; }
#vng-atendimento-root .vngwa-float:active { transform:translateY(0); }
#vng-atendimento-root .vngwa-float-icon { display:grid; place-items:center; flex:0 0 52px; width:52px; height:52px; border-radius:50%; color:#fff; background:#087a47; }
#vng-atendimento-root .vngwa-float svg { display:block; width:30px; height:30px; overflow:visible; }
#vng-atendimento-root .vngwa-float-copy { display:flex; flex-direction:column; gap:4px; }
#vng-atendimento-root .vngwa-float-copy strong { font-size:17px; font-weight:750; line-height:1.25; color:#063e29; }
#vng-atendimento-root .vngwa-float-copy small { font-size:12px; font-weight:500; line-height:1.4; color:#07442c; }
#vng-atendimento-root .vngwa-float-arrow { font-size:24px; font-weight:500; line-height:1; padding-left:2px; }
@keyframes vngwa-soft-pulse {
  0% { box-shadow:0 9px 28px #075e5430,0 0 0 0 rgba(37,211,102,.32); }
  60% { box-shadow:0 9px 28px #075e5430,0 0 0 13px rgba(37,211,102,0); }
  100% { box-shadow:0 9px 28px #075e5430,0 0 0 0 rgba(37,211,102,0); }
}
#vng-atendimento-root .vngwa-dialog { position:fixed; inset:0; width:600px; height:fit-content; max-width:calc(100vw - 32px); max-height:calc(100vh - 48px); max-height:calc(100dvh - 48px); padding:0; border:0; border-radius:24px; color:var(--vngwa-ink); background:#fff; box-shadow:0 25px 100px #0315264d; overflow:hidden; margin:auto; font-size:16px; line-height:1.6; text-align:left; }
#vng-atendimento-root .vngwa-dialog[open] { display:flex; flex-direction:column; }
#vng-atendimento-root .vngwa-dialog::backdrop { background:rgba(4,17,31,.62); backdrop-filter:blur(5px); }
#vng-atendimento-root .vngwa-header { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:25px 28px; margin:0; background:var(--vngwa-navy); color:#fff; flex:0 0 auto; position:relative; width:100%; min-height:0; }
#vng-atendimento-root .vngwa-brand { display:flex; align-items:center; gap:13px; min-width:0; }
#vng-atendimento-root .vngwa-monogram { display:grid; place-items:center; flex:0 0 44px; width:44px; height:48px; border:1px solid #ffffff45; border-radius:11px 11px 16px 16px; color:#fff; font-size:27px; font-weight:700; }
#vng-atendimento-root .vngwa-brand strong { display:block; color:#fff; font-size:18px; letter-spacing:1px; line-height:1.4; font-weight:750; }
#vng-atendimento-root .vngwa-brand div>span { display:block; color:#d0dced; font-size:13px; font-weight:400; line-height:1.5; margin-top:5px; }
#vng-atendimento-root .vngwa-close { display:grid; place-items:center; width:44px; height:44px; padding:0; border:1px solid #ffffff50; border-radius:50%; background:transparent; color:#fff; font-size:29px; font-weight:400; line-height:1; flex:0 0 44px; }
#vng-atendimento-root .vngwa-close:hover { background:#ffffff18; }
#vng-atendimento-root .vngwa-body { flex:1 1 auto; padding:25px 30px 28px; margin:0; overflow:auto; overscroll-behavior:contain; min-height:0; }
#vng-atendimento-root .vngwa-topline { display:flex; justify-content:space-between; align-items:center; gap:12px; min-height:30px; margin:0 0 18px; padding:0; }
#vng-atendimento-root .vngwa-step { color:#627488; font-size:12px; letter-spacing:1.2px; font-weight:600; margin-left:auto; line-height:1.4; text-align:right; }
#vng-atendimento-root .vngwa-back { border:0; background:none; color:var(--vngwa-muted); padding:5px 0; font-size:14px; font-weight:500; line-height:1.5; white-space:nowrap; }
#vng-atendimento-root h2 { font-size:30px; font-weight:750; letter-spacing:-.9px; color:var(--vngwa-navy); margin:0 0 12px; padding:0; line-height:1.2; text-transform:none; font-style:normal; }
#vng-atendimento-root h2:focus { outline:none; }
#vng-atendimento-root .vngwa-description { font-size:16px; font-weight:400; color:var(--vngwa-muted); margin:0 0 25px; line-height:1.65; }
#vng-atendimento-root .vngwa-option { display:flex; align-items:center; gap:15px; width:100%; text-align:left; padding:21px 18px; border:1px solid var(--vngwa-line); border-radius:14px; background:#fff; color:var(--vngwa-ink); margin-bottom:14px; transition:border-color .2s,background .2s; white-space:normal; }
#vng-atendimento-root .vngwa-option:hover { background:#f5f8fc; border-color:#92adc7; }
#vng-atendimento-root .vngwa-option-icon { display:grid; place-items:center; width:44px; height:44px; flex:0 0 44px; border-radius:11px; background:#edf2f8; color:var(--vngwa-navy); font-size:29px; line-height:1; }
#vng-atendimento-root .vngwa-option-icon svg { display:block; width:24px; height:24px; }
#vng-atendimento-root .vngwa-option strong { display:block; font-size:18px; line-height:1.45; font-weight:700; }
#vng-atendimento-root .vngwa-option small { display:block; color:var(--vngwa-muted); font-size:14px; font-weight:400; line-height:1.55; margin-top:6px; }
#vng-atendimento-root .vngwa-arrow { margin-left:auto; flex:0 0 20px; color:var(--vngwa-accent); font-size:23px; }
#vng-atendimento-root .vngwa-note { padding:17px 18px; margin-top:19px; border-radius:12px; background:#f3f7fb; color:var(--vngwa-muted); font-size:14px; font-weight:400; line-height:1.7; }
#vng-atendimento-root .vngwa-companies { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
#vng-atendimento-root .vngwa-company { display:flex; flex-direction:column; align-items:flex-start; position:relative; width:100%; padding:21px 19px; min-height:195px; border:1px solid var(--vngwa-line); border-radius:14px; background:#fff; color:var(--vngwa-ink); text-align:left; transition:background .2s,border-color .2s; white-space:normal; }
#vng-atendimento-root .vngwa-company:hover { border-color:#91a9bc; background:#f5f8fb; }
#vng-atendimento-root .vngwa-company-mark { font-size:12px; font-weight:600; color:#667e93; letter-spacing:1px; margin-bottom:18px; line-height:1.4; }
#vng-atendimento-root .vngwa-company strong { font-size:22px; line-height:1.25; font-weight:700; overflow-wrap:normal; word-break:normal; }
#vng-atendimento-root .vngwa-company small { font-size:14px; font-weight:400; line-height:1.6; color:var(--vngwa-muted); margin-top:11px; max-width:100%; }
#vng-atendimento-root .vngwa-company>span:last-child { position:absolute; right:18px; top:17px; color:var(--vngwa-accent); font-size:21px; line-height:1; }
#vng-atendimento-root .vngwa-selected { display:inline-flex; padding:6px 12px; border:1px solid var(--vngwa-line); border-radius:7px; color:var(--vngwa-ink); background:#f3f7fb; font-size:13px; font-weight:600; line-height:1.5; margin:-5px 0 20px; }
#vng-atendimento-root form { margin:0; padding:0; }
#vng-atendimento-root label { display:block; color:var(--vngwa-ink); font-size:15px; font-weight:600; margin:0 0 8px; line-height:1.5; }
#vng-atendimento-root label span { font-weight:400; color:var(--vngwa-muted); }
#vng-atendimento-root input, #vng-atendimento-root textarea { display:block; width:100%; max-width:100%; margin:0 0 18px; padding:13px 14px; border:1px solid #cad7e1; border-radius:9px; color:var(--vngwa-ink); background:#fff; font-size:16px; font-weight:400; line-height:1.6; min-height:52px; box-shadow:none; }
#vng-atendimento-root input::placeholder, #vng-atendimento-root textarea::placeholder { color:#677d90; opacity:1; font-size:15px; }
#vng-atendimento-root textarea { resize:vertical; min-height:94px; max-height:190px; }
#vng-atendimento-root .vngwa-primary, a.vngwa-cta { display:flex; align-items:center; justify-content:center; gap:12px; width:100%; padding:17px 19px; border:1px solid #09254b; border-radius:10px; background:#09254b; color:#fff; text-decoration:none; font-size:17px; font-weight:650; line-height:1.5; cursor:pointer; box-shadow:none; text-align:center; white-space:normal; }
#vng-atendimento-root .vngwa-primary:hover, a.vngwa-cta:hover { background:#173e6d; color:#fff; }
#vng-atendimento-root .vngwa-primary:disabled { opacity:.65; cursor:wait; }
#vng-atendimento-root .vngwa-primary span { font-size:23px; }
#vng-atendimento-root .vngwa-privacy { font-size:13px; color:var(--vngwa-muted); line-height:1.7; margin:0 0 18px; }
#vng-atendimento-root .vngwa-privacy a { color:var(--vngwa-ink); text-decoration:underline; }
#vng-atendimento-root .vngwa-hint { font-size:13px; color:var(--vngwa-muted); text-align:center; line-height:1.65; margin:14px 0 0; }
#vng-atendimento-root .vngwa-honey { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
#vng-atendimento-root .vngwa-error { margin:18px 0 0; padding:13px; background:#fff1f1; color:#91363b; border-radius:9px; font-size:14px; line-height:1.6; }
#vng-atendimento-root .vngwa-success { display:grid; place-items:center; width:60px; height:60px; margin:10px auto 20px; background:#e9f5ef; color:#347656; border-radius:50%; font-size:29px; }
#vng-atendimento-root .vngwa-ready-text { text-align:center; font-size:16px; color:var(--vngwa-muted); line-height:1.7; margin:0 0 25px; }
#vng-atendimento-root .vngwa-footer { flex:0 0 auto; padding:16px 20px; margin:0; border-top:1px solid #e8eef5; text-align:center; color:#5f7489; font-size:12px; font-weight:400; letter-spacing:.2px; line-height:1.6; background:#f8fafd; }
a.vngwa-cta { display:inline-flex; width:auto; font-family:"VNG Montserrat","Montserrat",Arial,sans-serif; }
@media(max-width:540px) {
  #vng-atendimento-root .vngwa-dialog { width:100%; max-width:100%; max-height:calc(100vh - 16px); max-height:calc(100dvh - 16px); margin:auto 0 0; border-radius:22px 22px 0 0; padding:0 0 env(safe-area-inset-bottom,0px); }
  #vng-atendimento-root .vngwa-header { padding:20px; gap:10px; }
  #vng-atendimento-root .vngwa-brand { gap:11px; }
  #vng-atendimento-root .vngwa-brand strong { font-size:16px; letter-spacing:.5px; }
  #vng-atendimento-root .vngwa-brand div>span { font-size:12px; }
  #vng-atendimento-root .vngwa-monogram { flex-basis:38px; width:38px; height:43px; font-size:25px; }
  #vng-atendimento-root .vngwa-body { padding:21px 20px 26px; }
  #vng-atendimento-root h2 { font-size:27px; letter-spacing:-.7px; }
  #vng-atendimento-root .vngwa-topline { margin-bottom:16px; }
  #vng-atendimento-root .vngwa-step { font-size:11px; letter-spacing:.9px; }
  #vng-atendimento-root .vngwa-option { padding:18px 13px; gap:11px; }
  #vng-atendimento-root .vngwa-option-icon { width:38px; height:38px; flex-basis:38px; font-size:26px; }
  #vng-atendimento-root .vngwa-option strong { font-size:17px; }
  #vng-atendimento-root .vngwa-arrow { flex-basis:16px; font-size:20px; }
  #vng-atendimento-root .vngwa-companies { grid-template-columns:minmax(0,1fr); gap:12px; }
  #vng-atendimento-root .vngwa-company { min-height:0; display:grid; grid-template-columns:34px minmax(0,1fr); column-gap:12px; padding:18px 32px 18px 15px; }
  #vng-atendimento-root .vngwa-company-mark { grid-row:1/3; display:grid; place-items:center; width:34px; height:34px; border-radius:9px; background:#edf2f8; margin:1px 0 0; font-size:12px; }
  #vng-atendimento-root .vngwa-company strong { grid-column:2; font-size:20px; }
  #vng-atendimento-root .vngwa-company strong br { display:none; }
  #vng-atendimento-root .vngwa-company small { grid-column:2; margin-top:8px; }
  #vng-atendimento-root .vngwa-company>span:last-child { right:12px; top:19px; font-size:19px; }
  #vng-atendimento-root .vngwa-primary { font-size:16px; padding:16px 13px; gap:8px; }
  #vng-atendimento-root .vngwa-float { right:20px; bottom:calc(22px + env(safe-area-inset-bottom,0px)); min-height:66px; width:66px; height:66px; padding:0; border-radius:50%; }
  #vng-atendimento-root .vngwa-float-icon { flex:0 0 auto; width:50px; height:50px; }
  #vng-atendimento-root .vngwa-float svg { width:34px; height:34px; }
  #vng-atendimento-root .vngwa-float-copy, #vng-atendimento-root .vngwa-float-arrow { display:none; }
}
@media(max-width:359px) {
  #vng-atendimento-root .vngwa-brand div>span { max-width:165px; }
  #vng-atendimento-root .vngwa-brand strong { font-size:15px; }
  #vng-atendimento-root .vngwa-monogram { display:none; }
  #vng-atendimento-root h2 { font-size:25px; }
  #vng-atendimento-root .vngwa-option { gap:9px; padding:16px 12px; }
  #vng-atendimento-root .vngwa-option-icon { display:none; }
  #vng-atendimento-root .vngwa-company strong { font-size:19px; }
}
@media(prefers-reduced-motion:reduce) {
  #vng-atendimento-root *, #vng-atendimento-root *::before, #vng-atendimento-root *::after { animation:none !important; transition:none !important; }
}
