.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}/* Start custom CSS for html, class: .elementor-element-64f8ae5 *//* ======================================================
   FOOTER — GRUPO VNG
====================================================== */

#vng-footer {
  --footer-navy: #09254b;
  --footer-navy-dark: #061c3b;
  --footer-navy-deep: #041933;
  --footer-blue: #1b67ce;
  --footer-blue-light: #b8d1ed;
  --footer-white: #ffffff;
  --footer-muted: #cfdded;
  --footer-border: rgba(255, 255, 255, .17);
  --footer-font: "Montserrat", Arial, sans-serif;

  position: relative;
  isolation: isolate;

  width: 100%;
  max-width: none;

  margin: 0;
  padding: 0;

  overflow: hidden;

  color: var(--footer-white);
  background: var(--footer-navy-dark);
}


/* ======================================================
   NORMALIZAÇÃO
====================================================== */

#vng-footer,
#vng-footer *,
#vng-footer *::before,
#vng-footer *::after {
  box-sizing: border-box;
}

#vng-footer,
#vng-footer * {
  font-family: var(--footer-font) !important;
  font-style: normal !important;
}

#vng-footer a {
  color: inherit;
  text-decoration: none !important;
}

#vng-footer a:focus-visible {
  outline: 3px solid var(--footer-blue-light);
  outline-offset: 5px;
}


/* ======================================================
   CONTAINER
====================================================== */

#vng-footer .vng-footer__container {
  position: relative;

  width: min(1580px, calc(100% - 80px));
  margin: 0 auto;
}


/* ======================================================
   PARTE SUPERIOR
====================================================== */

#vng-footer .vng-footer__top {
  padding: 82px 0 44px;

  border-top:
    1px solid var(--footer-border);

  background:
    radial-gradient(
      circle at 12% 5%,
      rgba(27, 103, 206, .20),
      transparent 48%
    ),
    linear-gradient(
      135deg,
      var(--footer-navy-dark),
      var(--footer-navy)
    );
}


/* ======================================================
   GRADE PRINCIPAL
====================================================== */

#vng-footer .vng-footer__main {
  display: grid;

  grid-template-columns:
    minmax(0, 1.15fr)
    minmax(0, 1fr)
    minmax(0, 1.05fr);

  gap: clamp(32px, 3.4vw, 64px);

  padding-bottom: 52px;
}

#vng-footer .vng-footer__main > *,
#vng-footer .vng-footer__column {
  min-width: 0;
}


/* ======================================================
   MARCA
====================================================== */

#vng-footer .vng-footer__logo {
  display: flex;
  align-items: center;
  gap: 22px;

  margin-bottom: 30px;
}

#vng-footer .vng-footer__logo-symbol {
  display: flex;
  align-items: center;
  justify-content: center;

  flex: 0 0 108px;

  width: 108px;
  height: 108px;

  color: #ffffff !important;
  background: var(--footer-navy);

  border: 2px solid #ffffff;

  font-size: 35px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  letter-spacing: -.035em !important;
}

#vng-footer .vng-footer__logo-text {
  display: block;
  min-width: 0;
}

#vng-footer .vng-footer__logo-text strong {
  display: block;

  margin-bottom: 10px;

  color: #ffffff !important;

  font-size:
    clamp(32px, 2.8vw, 44px) !important;

  font-weight: 800 !important;
  line-height: 1.05 !important;
  letter-spacing: -.035em !important;
}

#vng-footer .vng-footer__logo-text small {
  display: block;

  color: var(--footer-blue-light) !important;

  font-size: 12px !important;
  font-weight: 600 !important;
  line-height: 1.7 !important;
  letter-spacing: .055em !important;

  text-transform: uppercase;
}

#vng-footer .vng-footer__brand-description {
  max-width: 470px;

  margin: 0 !important;

  color: var(--footer-muted) !important;

  font-size: 18px !important;
  font-weight: 400 !important;
  line-height: 1.8 !important;
  letter-spacing: 0 !important;
}


/* ======================================================
   NAVEGAÇÃO
====================================================== */

#vng-footer .vng-footer__navigation {
  display: grid;

  grid-template-columns:
    minmax(0, .8fr)
    minmax(0, 1.2fr);

  gap: 28px;
}

#vng-footer .vng-footer__column h2,
#vng-footer .vng-footer__contact-heading > span {
  display: block;

  margin: 0 0 22px !important;

  color: var(--footer-blue-light) !important;

  font-size: 13px !important;
  font-weight: 600 !important;
  line-height: 1.6 !important;
  letter-spacing: .09em !important;

  text-transform: uppercase;
}

#vng-footer .vng-footer__menu {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 6px;
}

#vng-footer .vng-footer__menu a {
  display: inline-flex;
  align-items: center;

  min-height: 44px;

  color: #ffffff !important;

  font-size: 17px !important;
  font-weight: 400 !important;
  line-height: 1.5 !important;

  transition:
    color .25s ease,
    transform .25s ease;
}

#vng-footer .vng-footer__menu a:hover {
  color: var(--footer-blue-light) !important;
  transform: translateX(4px);
}


/* ======================================================
   CABEÇALHO DOS CONTATOS
====================================================== */

#vng-footer .vng-footer__contact-heading {
  margin-bottom: 24px;
}

#vng-footer
.vng-footer__contact-heading > span {
  margin-bottom: 12px !important;
}

#vng-footer
.vng-footer__contact-heading h2 {
  margin: 0 !important;

  color: #ffffff !important;

  font-size:
    clamp(28px, 2.4vw, 36px) !important;

  font-weight: 600 !important;
  line-height: 1.2 !important;
  letter-spacing: -.025em !important;
}


/* ======================================================
   GRUPOS DE TELEFONES
====================================================== */

#vng-footer .vng-footer__contact-group {
  padding: 20px 0;

  border-top:
    1px solid var(--footer-border);
}

#vng-footer .vng-footer__contact-group h3 {
  margin: 0 0 8px !important;

  color: #ffffff !important;

  font-size: 18px !important;
  font-weight: 500 !important;
  line-height: 1.5 !important;
  letter-spacing: 0 !important;
}

#vng-footer .vng-footer__contact-note {
  margin: 0 0 10px !important;

  color: var(--footer-blue-light) !important;

  font-size: 15px !important;
  font-weight: 400 !important;
  line-height: 1.6 !important;
}

#vng-footer .vng-footer__phone-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;

  gap: 0 16px;
}

#vng-footer .vng-footer__phone,
#vng-footer .vng-footer__whatsapp {
  display: inline-flex;
  align-items: center;
  gap: 8px;

  min-height: 44px;

  line-height: 1.5 !important;
}

#vng-footer .vng-footer__phone {
  color: #ffffff !important;

  font-size: 20px !important;
  font-weight: 600 !important;

  white-space: nowrap;
}

#vng-footer .vng-footer__whatsapp {
  color: var(--footer-blue-light) !important;

  font-size: 15px !important;
  font-weight: 500 !important;
}

#vng-footer .vng-footer__phone:hover,
#vng-footer .vng-footer__whatsapp:hover {
  color: #ffffff !important;

  text-decoration: underline !important;
  text-underline-offset: 5px;
}


/* ======================================================
   E-MAIL
====================================================== */

#vng-footer .vng-footer__contact-item {
  display: grid;

  grid-template-columns:
    minmax(0, 1fr)
    42px;

  align-items: center;

  gap: 8px 16px;

  padding: 22px 0;

  border-top:
    1px solid var(--footer-border);
}

#vng-footer .vng-footer__contact-label {
  grid-column: 1;

  color: var(--footer-blue-light) !important;

  font-size: 12px !important;
  font-weight: 600 !important;
  letter-spacing: .09em !important;
}

#vng-footer .vng-footer__contact-value {
  grid-column: 1;

  color: #ffffff !important;

  font-size: 18px !important;
  font-weight: 500 !important;
  line-height: 1.5 !important;

  overflow-wrap: anywhere;
}

#vng-footer .vng-footer__contact-arrow {
  grid-column: 2;
  grid-row: 1 / 3;

  display: flex;
  align-items: center;
  justify-content: center;

  width: 42px;
  height: 42px;

  color: #ffffff;

  border:
    1px solid var(--footer-border);

  border-radius: 50%;

  font-size: 22px !important;

  transition:
    background-color .25s ease,
    border-color .25s ease,
    transform .25s ease;
}

#vng-footer
.vng-footer__contact-item:hover
.vng-footer__contact-arrow {
  background: var(--footer-blue);
  border-color: var(--footer-blue);
  transform: rotate(45deg);
}


/* ======================================================
   REDES SOCIAIS
====================================================== */

#vng-footer .vng-footer__social {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;

  gap: 26px;

  padding-top: 34px;

  border-top:
    1px solid var(--footer-border);
}

#vng-footer .vng-footer__social-title {
  color: var(--footer-blue-light) !important;

  font-size: 13px !important;
  font-weight: 600 !important;
  line-height: 1.6 !important;
  letter-spacing: .08em !important;
}

#vng-footer .vng-footer__social-links {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
}

#vng-footer .vng-footer__social-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;

  gap: 10px;

  min-height: 54px;
  padding: 12px 20px;

  color: #ffffff !important;
  background: transparent;

  border:
    1px solid var(--footer-border);

  font-size: 16px !important;
  font-weight: 500 !important;
  line-height: 1.4 !important;

  transition:
    color .25s ease,
    background-color .25s ease,
    border-color .25s ease,
    transform .25s ease;
}

#vng-footer .vng-footer__social-link:hover {
  color: #ffffff !important;
  background: var(--footer-blue);
  border-color: var(--footer-blue);

  transform: translateY(-2px);
}


/* ======================================================
   ÍCONES SOCIAIS
====================================================== */

#vng-footer .vng-footer__social-icon {
  display: block;
  flex: 0 0 22px;

  width: 22px;
  height: 22px;

  color: currentColor;
}


/* INSTAGRAM */

#vng-footer
.vng-footer__social-icon--instagram {
  fill: none !important;
  stroke: currentColor !important;

  stroke-width: 1.8 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
}

#vng-footer
.vng-footer__social-icon--instagram
.vng-footer__social-fill {
  fill: currentColor !important;
  stroke: none !important;
}


/* FACEBOOK */

#vng-footer
.vng-footer__social-icon--facebook {
  fill: currentColor !important;
  stroke: none !important;
}


/* ======================================================
   VOLTAR AO TOPO
====================================================== */

#vng-footer .vng-footer__back-top {
  display: inline-flex;
  align-items: center;

  gap: 16px;

  color: #ffffff !important;

  font-size: 16px !important;
  font-weight: 500 !important;
}

#vng-footer .vng-footer__back-top-arrow {
  display: flex;
  align-items: center;
  justify-content: center;

  width: 54px;
  height: 54px;

  color: #ffffff;

  border:
    1px solid var(--footer-border);

  border-radius: 50%;

  font-size: 24px !important;

  transition:
    background-color .25s ease,
    border-color .25s ease,
    transform .25s ease;
}

#vng-footer
.vng-footer__back-top:hover
.vng-footer__back-top-arrow {
  background: var(--footer-blue);
  border-color: var(--footer-blue);

  transform: translateY(-3px);
}


/* ======================================================
   PARTE INFERIOR
====================================================== */

#vng-footer .vng-footer__bottom {
  padding: 30px 0;

  border-top:
    1px solid var(--footer-border);

  background: var(--footer-navy-deep);
}

#vng-footer .vng-footer__business {
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;

  gap: 8px 24px;

  margin-bottom: 20px;
}

#vng-footer .vng-footer__business strong {
  color: #ffffff !important;

  font-size: 16px !important;
  font-weight: 600 !important;
  line-height: 1.6 !important;
}

#vng-footer .vng-footer__business > span {
  color: var(--footer-muted) !important;

  font-size: 16px !important;
  font-weight: 400 !important;
  line-height: 1.6 !important;
}

#vng-footer .vng-footer__bottom-content {
  display: grid;

  grid-template-columns:
    minmax(0, 1.2fr)
    auto
    minmax(0, 1fr);

  align-items: center;

  gap: 24px;
}

#vng-footer .vng-footer__bottom-content p {
  margin: 0 !important;

  color: var(--footer-muted) !important;

  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 1.7 !important;
}

#vng-footer .vng-footer__legal a {
  display: inline-flex;
  align-items: center;

  min-height: 44px;

  color: var(--footer-muted) !important;

  font-size: 15px !important;
  font-weight: 500 !important;
}

#vng-footer .vng-footer__legal a:hover {
  color: #ffffff !important;

  text-decoration: underline !important;
  text-underline-offset: 5px;
}

#vng-footer .vng-footer__signature {
  text-align: right;
}


/* ======================================================
   NOTEBOOK
====================================================== */

@media (max-width: 1250px) {

  #vng-footer .vng-footer__main {
    grid-template-columns:
      minmax(0, 1fr)
      minmax(0, 1fr);

    gap: 44px;
  }

  #vng-footer .vng-footer__brand {
    grid-column: 1 / -1;

    display: grid;

    grid-template-columns:
      minmax(0, 1fr)
      minmax(0, 1fr);

    align-items: center;

    gap: 44px;
  }

  #vng-footer .vng-footer__logo {
    margin-bottom: 0;
  }

  #vng-footer .vng-footer__social-title {
    width: 100%;
  }

}


/* ======================================================
   TABLET
====================================================== */

@media (max-width: 900px) {

  #vng-footer .vng-footer__container {
    width: calc(100% - 48px);
  }

  #vng-footer .vng-footer__top {
    padding-top: 64px;
  }

  #vng-footer .vng-footer__brand {
    display: block;
  }

  #vng-footer .vng-footer__logo {
    margin-bottom: 24px;
  }

  #vng-footer .vng-footer__brand-description {
    max-width: 700px;
  }

  #vng-footer .vng-footer__social-links {
    width: 100%;
  }

  #vng-footer .vng-footer__bottom-content {
    grid-template-columns:
      1fr
      auto;
  }

  #vng-footer .vng-footer__signature {
    grid-column: 1 / -1;
    text-align: left;
  }

}


/* ======================================================
   MOBILE
====================================================== */

@media (max-width: 767px) {

  #vng-footer .vng-footer__main {
    grid-template-columns: 1fr;
    gap: 38px;

    padding-bottom: 38px;
  }

  #vng-footer .vng-footer__brand {
    grid-column: auto;
  }

  #vng-footer .vng-footer__logo {
    gap: 18px;
  }

  #vng-footer .vng-footer__logo-symbol {
    flex-basis: 90px;

    width: 90px;
    height: 90px;

    font-size: 30px !important;
  }

  #vng-footer .vng-footer__logo-text strong {
    font-size:
      clamp(28px, 6vw, 38px) !important;
  }

  #vng-footer .vng-footer__navigation {
    gap: 24px;
  }

  #vng-footer .vng-footer__social {
    align-items: flex-start;
    gap: 24px;
  }

  #vng-footer .vng-footer__social-title {
    width: 100%;
  }

  #vng-footer .vng-footer__back-top {
    width: 100%;
    justify-content: space-between;

    padding-top: 20px;

    border-top:
      1px solid var(--footer-border);
  }

  #vng-footer .vng-footer__bottom-content {
    grid-template-columns: 1fr;
    gap: 10px;
  }

  #vng-footer .vng-footer__business {
    flex-direction: column;
    gap: 4px;
  }

}


/* ======================================================
   CELULARES
====================================================== */

@media (max-width: 560px) {

  #vng-footer .vng-footer__social-links {
    display: grid;
    grid-template-columns: 1fr;

    width: 100%;
  }

  #vng-footer .vng-footer__social-link {
    justify-content: flex-start;

    width: 100%;
    min-height: 56px;

    padding: 13px 16px;
  }

}


/* ======================================================
   CELULARES PEQUENOS
====================================================== */

@media (max-width: 420px) {

  #vng-footer .vng-footer__container {
    width: calc(100% - 36px);
  }

  #vng-footer .vng-footer__top {
    padding: 50px 0 30px;
  }

  #vng-footer .vng-footer__logo {
    gap: 14px;
  }

  #vng-footer .vng-footer__logo-symbol {
    flex-basis: 76px;

    width: 76px;
    height: 76px;

    font-size: 26px !important;
  }

  #vng-footer .vng-footer__logo-text strong {
    font-size: 28px !important;
  }

  #vng-footer .vng-footer__logo-text small {
    font-size: 11px !important;
  }

  #vng-footer .vng-footer__navigation {
    grid-template-columns: 1fr;
    gap: 30px;
  }

  #vng-footer .vng-footer__phone-row {
    align-items: flex-start;
    flex-direction: column;

    margin-bottom: 8px;
  }

  #vng-footer .vng-footer__phone {
    font-size: 19px !important;
  }

}


/* ======================================================
   ACESSIBILIDADE
====================================================== */

@media (prefers-reduced-motion: reduce) {

  #vng-footer *,
  #vng-footer *::before,
  #vng-footer *::after {
    transition: none !important;
    animation: none !important;
    scroll-behavior: auto !important;
  }

  #vng-footer .vng-footer__social-link,
  #vng-footer .vng-footer__contact-arrow,
  #vng-footer .vng-footer__back-top-arrow {
    transform: none !important;
  }

}/* End custom CSS */