@charset "UTF-8";
/* CLASSES GLOBAIS */
@import url("https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&amp;display=swap");
@import url("https://fonts.googleapis.com/css2?family=Open+Sans:ital,wght@0,300;0,400;0,600;0,700;0,800;1,300;1,400;1,600;1,700;1,800&amp;display=swap");

.has-error {
  border-color: red !important;
}

html.resize {
  width: 100%;
  height: 100%;
}

html.resize body {
  width: 100%;
  height: 100%;
}

html.resize body main {
  width: 100%;
  height: 100%;
}

@media (min-width: 991px) {
  .hide-desktop {
    display: none !important;
  }
}

@media (max-width: 991px) {
  .hide-mobile {
    display: none !important;
  }
}

.container {
  max-width: 1200px;
}

.container.big {
  max-width: 1320px;
}

.container.grandao {
  max-width: 1400px;
}

ul.no-list-style {
  list-style: none;
  padding: 0;
  margin: 0;
}

a {
  text-decoration: none;
}

a:hover,
a:focus,
a:active,
a:focus {
  text-decoration: none;
}

.owl-carousel .owl-dots {
  display: flex;
  justify-content: center;
  margin-top: 20px;
}

.owl-carousel .owl-dots .owl-dot {
  width: 15px;
  height: 15px;
  border-radius: 100px;
  background-color: #cacaca;
  margin-right: 10px;
  border: none;
  outline: none;
  transition: 0.3s all;
}

.owl-carousel .owl-dots .owl-dot:last-child {
  margin-right: 0;
}

.owl-carousel .owl-dots .owl-dot.active {
  background-color: #8f8f8f;
}

/*  Validação   */
.ng-invalid-required.ng-touched,
.campo-invalido {
  border-color: #dc3545 !important;
}

/* VARIAVEIS GLOBAIS DO PROJETO */
.card-produto {
  background-color: white;
  border-top-left-radius: 30px;
  padding: 30px;
  width: 100%;
  box-shadow: 2px 2px 10px 10px rgba(220, 220, 220, 0.5);
  display: flex;
  flex-flow: column;
  justify-content: space-between;
}

.card-produto.small {
  padding: 20px;
  border: 1px solid #60a3da;
  box-shadow: 2px 2px 5px 5px rgba(220, 220, 220, 0.05);
  background: linear-gradient(180deg, white 0%, #fcfcfc 100%);
}

.card-produto.small .preco .consulta {
  font-size: 26px;
}

.card-produto.small h2 {
  font-size: 22px;
}

.card-produto h2 {
  color: #666;
  font-size: 22px;
  text-align: center;
  text-transform: uppercase;
  font-weight: 700;
}

.card-produto .resumo {
  line-height: 1.2;
  flex: 1;
  color: #313131;
  font-size: 15px;
}

.card-produto .resumo p:last-child {
  margin-bottom: 0;
}

.card-produto .img {
  object-fit: contain;
  object-position: center;
  width: 100%;
  height: 300px;
  margin: 20px 0;
}

.card-produto .preco {
  margin-top: 10px;
}

.card-produto .preco .consulta {
  font-size: 24px;
  font-weight: 600;
  color: #0073bb;
}

.card-produto .botoes {
  display: flex;
  flex-wrap: wrap;
  margin-top: 15px;
  justify-content: space-between;
}

.card-produto .botoes .btn-card {
  padding: 10px 20px;
  border: 2px solid;
  font-weight: 600;
  border-radius: 5px;
  display: inline-block;
  margin: 5px;
  text-align: center;
}

.card-produto .botoes .btn-card i {
  margin-right: 5px;
}

.card-produto .botoes .btn-card.primary {
  color: #0073bb;
  border-color: #0073bb;
  flex-basis: 50%;
}

.card-produto .botoes .btn-card.orcamento {
  border-color: #e10109;
  color: #e10109;
  flex-basis: 100%;
}

.card-produto .botoes .btn-card.fourth {
  color: #ffb235;
  border-color: #ffb235;
  flex-basis: 40%;
}

.card-produto .botoes .btn-card.fourth .fa-spin {
  display: none;
}

.card-produto .botoes .btn-card.fourth.loading .fa-shopping-cart {
  display: none;
}

.card-produto .botoes .btn-card.fourth.loading .fa-spin {
  display: inline-block;
}

.card-produto .botoes .btn-card.zap {
  color: #4baa2b;
  border-color: #4baa2b;
  flex-basis: 100%;
}

@media (max-width: 991px) {
  .card-produto h2 {
    font-size: 18px;
  }

  .card-produto .resumo {
    font-size: 14px;
  }

  .card-produto.small .preco .consulta {
    font-size: 20px;
  }

  .card-produto.small h2 {
    font-size: 18px;
  }

  .card-produto .botoes .btn-card {
    font-size: 14px;
  }

  .card-produto .preco .consulta {
    font-size: 20px;
  }
}

.row-flex {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.main-phone {
  display: inline-flex;
  align-items: center;
  transition: 0.3s all;
  text-align: left;
}

.main-phone .icon {
  background-image: url("../img/rodinha.png");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: left;
  color: #4e4e4e;
  padding: 10px 10px 10px 35px;
}

.main-phone.zap .icon {
  color: #4baa2b;
}

.main-phone .text {
  color: #4e4e4e;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.2;
}

.main-phone .text strong {
  font-weight: 700;
  font-size: 16px;
  display: block;
}

@media (max-width: 991px) {
  .main-phone .icon {
    transform: scale(0.8);
    margin-right: -5px;
  }

  .main-phone .text {
    font-size: 15px;
  }

  .main-phone .text strong {
    font-size: 14px;
  }
}

.main-cta {
  display: inline-flex;
  align-items: center;
  color: #001683;
  font-weight: 500;
  font-size: 17px;
  max-width: 270px;
  width: 100%;
  border: 2px solid #ffb235;
  border-radius: 5px;
  overflow: hidden;
  outline: none;
  background-color: transparent;
  padding: 0;
  margin: 0;
  transition: 0.3s background-color color;
}

.main-cta.primary {
  border-color: #0073bb;
  color: #0073bb;
}

.main-cta.primary .icon {
  background: #0073bb;
}

.main-cta.secondary {
  background-color: #001683;
  color: white;
  border-radius: 0;
  border: none;
}

.main-cta.secondary .txt {
  background-color: #001683;
}

.main-cta.secondary .icon {
  background: #0073bb;
}

/*.main-cta.outline {
  border-color: #001683;
}*/

/*.main-cta.outline .icon {
  background: #001683;
}*/

.main-cta.ligamo {
  width: max-content;
  max-width: none;
  padding: 11px 23px;
  font-weight: 400;
  font-size: 16px;
  border: none;
  color: white;
  border-radius: 0;
  vertical-align: middle;
  background: linear-gradient(90deg, #5098d9 0%, #005185 100%);
}

.main-cta.ligamo i {
  color: #003850;
}

.main-cta .icon {
  background: linear-gradient(90deg, #ffb033 0%, #ffcf26 100%);
  color: white;
  flex: 0 0 50px;
  min-height: 45px;
  display: flex;
  height: 100%;
  align-items: center;
  justify-content: center;
  transition: 0.3s background-color color;
}

.main-cta .txt {
  flex: 1;
  text-align: center;
}

@media (max-width: 991px) {
  .main-cta .txt {
    font-size: 15px;
    padding: 0px 10px;
  }

  .main-cta .icon {
    flex: 0 0 35px;
    min-height: 35px;
    font-size: 14px;
  }
}

body {
  font-size: 1em;
  font-family: "Poppins", sans-serif;
  text-rendering: optimizeLegibility;
  /* MODAL */
}

body div#lightbox {
  position: fixed !important;
  top: 10px !important;
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

@media (min-width: 992px) {
  body section.header #menu-topo {
    background: white;
  }

  body section.header #menu-topo.fixo {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    z-index: 5;
  }

  body section.header #menu-topo.fixo .main-cta {
    font-size: 14px;
    max-width: 235px;
  }

  body section.header #menu-topo.fixo .main-cta .icon {
    min-height: 35px;
  }

  body section.header #menu-topo.fixo .categorias {
    padding: 5px 0;
  }

  body section.header #menu-topo.fixo .categorias .menu a {
    font-size: 15px;
  }

  body section.header #menu-topo.fixo .col-categorias {
    width: 59% !important;
  }

  body section.header #menu-topo.fixo .col-botoes {
    width: 32% !important;
    padding-left: calc(var(--bs-gutter-x) * 0.5) !important;
  }

  body section.header #menu-topo.fixo .col-logo {
    flex: 0 0 auto !important;
    width: auto !important;
    padding-right: calc(var(--bs-gutter-x) * 0.5) !important;
  }

  body section.header #menu-topo.fixo .principal {
    padding: 10px 0;
  }

  body section.header #menu-topo.fixo .principal form input,
  body section.header #menu-topo.fixo .principal form button {
    font-size: 13px;
    padding: 8px 20px;
  }

  body section.header #menu-topo.fixo .principal .main-phone,
  body section.header #menu-topo.fixo .principal .btn-carrinho {
    transform: scale(0.8);
  }

  body section.header #menu-topo.fixo .principal .logo {
    max-width: 130px;
  }
}

body section.header .top {
  background-color: #0073bb;
  padding: 3px;
}

body section.header .top a {
  color: white;
  text-transform: uppercase;
  font-weight: 400;
  margin-right: 10px;
}

body section.header .btn-carrinho {
  display: inline-flex;
  align-items: center;
  text-align: left;
  position: relative;
}

body section.header .btn-carrinho .count {
  width: 30px;
  height: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 100%;
  background-color: #0091b4;
  margin-left: 0;
  color: white;
  font-size: 13px;
  font-weight: 600;
}

body section.header .btn-carrinho .icon {
  background-image: url("../img/rodinha.png");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: left;
  color: #4e4e4e;
  padding: 10px 10px 10px 35px;
}

body section.header .btn-carrinho .text {
  margin-left: 7px;
  color: #4e4e4e;
  font-size: 15px;
  font-weight: 700;
}

body section.header .categorias {
  background-color: #eeeeee;
  padding: 10px 0;
  position: relative;
}

body section.header .categorias .ver-todos {
  justify-content: flex-end;
  padding-right: 30px;
  background-color: #003850;
  color: white;
  border-radius: 0 20px 20px 0;
  position: absolute;
  left: 0;
  width: 270px;
  height: 100%;
  display: flex;
  align-items: center;
  top: 0;
}

body section.header .categorias .ver-todos .color-white {
  color: white;
}

body section.header .categorias .ver-todos:hover .dropdown-categorias {
  pointer-events: all;
  opacity: 1;
}

body section.header .categorias .ver-todos .dropdown-categorias {
  pointer-events: none;
  opacity: 0;
  transition: 0.3s all;
  position: absolute;
  top: 100%;
  left: 130px;
  z-index: 3;
  background-color: #003850;
  padding: 10px;
  width: 350px;
}

body section.header .categorias .ver-todos .dropdown-categorias .item-dropdown {
  position: relative;
}

body section.header .categorias .ver-todos .dropdown-categorias .item-dropdown .subcategorias {
  position: absolute;
  pointer-events: none;
  opacity: 0;
  top: 0;
  left: 100%;
  z-index: 2;
  background-color: #3a434e;
  padding: 10px;
  width: 350px;
}

body section.header .categorias .ver-todos .dropdown-categorias .item-dropdown:hover .subcategorias {
  pointer-events: all;
  opacity: 1;
}

body section.header .categorias .ver-todos .dropdown-categorias .item {
  color: white;
  padding: 10px 25px;
  display: block;
  font-weight: 400;
  transition: 0.3s all;
  font-size: 15px;
  position: relative;
}

body section.header .categorias .ver-todos .dropdown-categorias .item .fa-chevron-right {
  color: white;
  position: absolute;
  right: 10px;
  top: 10px;
}

body section.header .categorias .ver-todos .dropdown-categorias .item:hover {
  background-color: #41556b;
}

body section.header .categorias .ver-todos .dropdown-categorias .item i {
  color: white;
}

body section.header .categorias .menu {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

body section.header .categorias .menu a {
  color: #003850;
  font-weight: 600;
}

body section.header .categorias .menu a img {
  margin-right: 7px;
  height: 30px;
  width: 30px;
  object-fit: contain;
}

body section.header .principal {
  background-image: url("../img/bg-header.png");
  background-size: cover;
  padding: 25px 10px;
}

body section.header .principal .social a {
  font-size: 18px;
  color: #005188;
  margin: 0 15px;
}

body section.header .principal .logo {
  width: 100%;
}

body section.header .principal form {
  display: flex;
}

body section.header .principal form input {
  background-color: white;
  color: gray;
  outline: none;
  border: 1px solid #b6b6b6;
  font-size: 14px;
  padding: 12px 20px;
  border-radius: 7px 0 0 7px;
  flex-grow: 1;
}

body section.header .principal form button {
  background-color: #0091b4;
  outline: none;
  font-size: 14px;
  color: white;
  border-radius: 0 7px 7px 0;
  padding: 12px 20px;
  font-weight: 400;
  border: 1px solid #b6b6b6;
  cursor: pointer;
}

body section.header .categorias-mobile .btn-open {
  display: block;
  color: white;
  font-weight: 500;
  background: #003850;
  font-size: 15px;
  text-align: center;
  padding: 12px 20px;
}

body section.header .categorias-mobile .in-categorias {
  background-color: #032f42;
  padding: 10px;
}

body section.header .categorias-mobile .in-categorias a {
  color: white;
  text-transform: uppercase;
  padding: 5px 20px;
  display: block;
  text-align: center;
  font-weight: 400;
  transition: 0.3s all;
  font-size: 15px;
}

body section.header .categorias-mobile .in-categorias a i {
  color: #003850;
}

@media (max-width: 991px) {
  body section.header .principal {
    padding: 15px 0;
  }

  body section.header .principal form {
    height: auto;
    margin-top: 10px;
  }

  body section.header .principal form input,
  body section.header .principal form button {
    font-size: 13px;
    padding: 10px 13px;
  }

  body section.header .principal .main-cta {
    max-width: 250px;
  }

  body section.header .principal .topo-mobile {
    justify-content: center;
  }

  body section.header .principal .btn-carrinho .icon {
    padding-right: 0;
  }
}

body section.preloader {
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 99999;
  align-items: center;
  display: flex;
  justify-content: center;
  background-color: white;
}

body section.preloader .loader {
  border: 6px solid #e5e5e5;
  border-top-color: #0073bb;
  animation: loader-rotate 1s infinite;
  border-radius: 50%;
  height: 40px;
  width: 40px;
}

@keyframes loader-rotate {
  to {
    transform: rotate(1turn);
  }
}

body .modal-backdrop.show {
  opacity: 0.8;
  width: 100% !important;
  height: 100% !important;
}

body .modal-lg {
  max-width: 600px;
}

body .modal .close-modal {
  position: absolute;
  width: 100%;
  height: 100%;
}

body .modal-content {
  border-radius: 10px !important;
  background-color: white;
}

body .modal-content .closebtn {
  outline: none;
  color: white;
  background-color: transparent;
  position: absolute;
  right: 0;
  top: -40px;
  border: none;
  cursor: pointer;
  z-index: 2;
  text-shadow: none;
  font-weight: 500;
  opacity: 1;
  font-size: 15px;
}

body .modal-content .closebtn:hover {
  color: white !important;
}

@media (max-width: 991px) {
  body .modal-content .closebtn {
    position: static;
    font-size: 14px;
    margin-top: 20px;
    padding-right: 20px;
    text-align: right;
    color: #23494a !important;
  }
}

body .modal-body {
  padding: 30px 40px;
  border-radius: 15px;
  box-shadow: 10px 10px 10px rgba(0, 0, 0, 0.05);
}

body .modal-body .enviar {
  color: #0073bb;
  padding: 10px 30px;
  border-radius: 5px;
  display: inline-block;
  font-weight: 600;
  background-color: transparent;
  outline: none;
  border: 2px solid #0073bb;
}

body .modal-body .enviar i {
  vertical-align: middle;
  font-size: 20px;
  margin-left: 15px;
}

body .modal-body .conteudo-modal {
  text-align: center;
  font-size: 18px;
  line-height: 1.3;
  color: dimgray;
}

body .modal-body .conteudo-modal h1 {
  color: #003850;
  font-weight: 600;
  font-size: 32px;
}

body .modal-body.video {
  border-radius: 0;
  min-height: 650px;
  padding: 0;
}

@media (max-width: 991px) {
  body .modal-body.video {
    min-height: 360px;
  }
}

body .modal-body iframe {
  width: 100%;
  height: 100%;
  position: absolute;
}

body .modal-body form label {
  display: block;
  font-weight: 600;
  margin-top: 15px;
  margin-bottom: 5px;
  font-size: 17px;
}

body .modal-body form button {
  margin-top: 15px !important;
}

body .modal-body form input,
body .modal-body form select,
body .modal-body form textarea {
  width: 100%;
  border: 1px solid gainsboro;
  padding: 10px 25px;
  font-size: 18px;
  outline: none;
}

body .modal-body form select {
  padding-top: 12px;
  padding-bottom: 12px;
}

body .modal-body form textarea {
  min-height: 100px;
  resize: vertical;
}

body .modal-body form .box-file .text {
  font-size: 14px;
  margin-bottom: 10px;
  display: block;
  font-weight: 500;
  color: black;
}

body .modal-body form .box-file .flex-box {
  display: flex;
  margin-top: 5px;
  cursor: pointer;
}

body .modal-body form .box-file .flex-box .name-file {
  border: 1px solid #dfdfdf;
  padding: 10px 15px;
  font-size: 18px;
  font-weight: 500;
  color: #565656;
  outline: none;
  min-height: 49px;
  background-color: #f7f7f7;
  width: 100%;
}

body .modal-body form .box-file .flex-box .selecionar {
  padding: 10px 15px;
  font-size: 18px;
  color: white;
  background-color: #008af2;
  border-radius: 5px;
  margin-left: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
}

@media screen and (max-width: 991px) {
  body .modal-body {
    padding: 15px 0px;
    background-image: none;
  }

  body .modal-body h4 {
    font-size: 18px;
    text-align: center;
  }

  body .modal-body .conteudo-modal {
    font-size: 14px;
  }

  body .modal-body .conteudo-modal h1 {
    font-size: 22px;
  }

  body .modal-body form label {
    font-size: 16px;
  }

  body .modal-body form input,
  body .modal-body form select,
  body .modal-body form textarea {
    font-size: 15px;
    padding: 10px;
  }

  body .modal-body form .box-file .text {
    font-size: 12px;
  }

  body .modal-body form .box-file .flex-box .name-file {
    padding: 10px;
    font-size: 12px;
  }

  body .modal-body form .box-file .flex-box .selecionar {
    font-size: 13px;
  }
}

body section.formulario-enviado {
  padding: 60px 0;
  background-image: url("../../index.html");
  background-size: 100% auto;
  background-repeat: no-repeat;
}

body section.formulario-enviado .box-in h5 {
  font-size: 17px;
  font-weight: 400;
  max-width: 400px;
  margin-top: 20px;
  color: gray;
}

body section.formulario-enviado .box-in a {
  color: #0073bb;
  font-weight: 500;
}

body section.formulario-enviado .box-in .btn-voltar {
  color: #0073bb;
  padding: 10px 30px;
  border-radius: 5px;
  display: inline-block;
  margin-top: 30px;
  font-weight: 600;
  background-color: transparent;
  outline: none;
  border: 2px solid #0073bb;
  transition: 0.3s all;
}

body section.formulario-enviado .box-in .btn-voltar:hover {
  background-color: #0073bb;
  color: white;
}

body section.formulario-enviado .box-in .btn-voltar i {
  vertical-align: middle;
  font-size: 20px;
  margin-right: 15px;
}

body section.formulario-enviado .box-in h3 {
  font-size: 20px;
  font-weight: 300;
  color: gray;
}

body section.formulario-enviado .box-in .logo {
  width: 70px;
  margin-bottom: 25px;
}

body section.formulario-enviado .box-in h1 {
  font-size: 75px;
  font-weight: 400;
  line-height: 1;
  color: #0073bb;
}

body section.formulario-enviado .box-in h1 strong {
  display: block;
  font-weight: 400;
  color: #003850;
}

body section.formulario-enviado img {
  width: 100%;
}

@media (max-width: 991px) {
  body section.formulario-enviado {
    padding: 30px 0;
    text-align: center;
  }

  body section.formulario-enviado .container {
    position: relative;
    z-index: 2;
  }

  body section.formulario-enviado img {
    margin: auto;
    display: block;
    margin-top: 15px;
    max-width: 200px;
  }

  body section.formulario-enviado .box-in .logo {
    width: 50px;
    margin-top: 0;
  }

  body section.formulario-enviado .box-in .btn-voltar {
    font-size: 13px;
    margin: 10px 0;
  }

  body section.formulario-enviado .box-in h3 {
    font-size: 16px;
  }

  body section.formulario-enviado .box-in h5 {
    font-size: 15px;
  }

  body section.formulario-enviado .box-in h1 {
    font-size: 28px;
  }

  body section.formulario-enviado .box-in h1 strong {
    display: inline;
  }
}

body .politica-termos {
  padding: 120px 0 60px 0px;
  margin-top: -90px;
  background-image: url("../../index.html");
  background-size: 100% auto;
  background-repeat: no-repeat;
}

body .politica-termos h1,
body .politica-termos h2,
body .politica-termos h3,
body .politica-termos h4,
body .politica-termos h5,
body .politica-termos h6 {
  color: #0073bb;
}

body .politica-termos strong,
body .politica-termos b {
  color: #0073bb;
}

@media (max-width: 991px) {
  body .politica-termos {
    padding: 20px 0px;
    font-size: 15px;
    margin-top: 0;
  }

  body .politica-termos h1 {
    font-size: 22px;
  }
}

body header section.barra-lgpd {
  display: none;
  position: fixed;
  bottom: 85px;
  left: calc(50% - 397.5px);
  padding: 15px;
  align-items: center;
  gap: 15px;
  z-index: 800;
  border-radius: 5px;
  background: #fff;
  max-width: 795px;
  box-shadow: 0px 10px 10px 0px rgba(0, 0, 0, 0.1), -2px 2px 2px 0px rgba(0, 0, 0, 0.06) inset;
}

body header section.barra-lgpd.exibir {
  display: flex;
}

body header section.barra-lgpd .icon {
  border-radius: 5px;
  background: rgba(92, 92, 92, 0.1);
  /* Sombra elemento botão */
  box-shadow: 0px 10px 10px 0px rgba(0, 0, 0, 0.1), -2px 2px 2px 0px rgba(0, 0, 0, 0.06) inset;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 8px;
  gap: 10px;
  width: 35px;
  height: 35px;
}

body header section.barra-lgpd .button a {
  border-radius: 5px;
  background: #2b2b2b;
  box-shadow: -3px 3px 9px -18px rgba(0, 0, 0, 0.3);
  display: inline-block;
  padding: 16px 24px;
  color: #fff;
  font-size: 16px;
  font-style: normal;
  font-weight: 700;
  line-height: 20px;
  /* 125% */
}

body header section.barra-lgpd .text {
  color: var(--Texto-1, #141414);
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 20px;
  /* 142.857% */
}

body header section.barra-lgpd .text a {
  font-weight: 700;
  text-decoration-line: underline;
  color: #141414;
}

@media (max-width: 991px) {
  body header section.barra-lgpd {
    bottom: 70px;
    left: 10px;
    max-width: calc(100% - 20px);
    flex-flow: column;
    gap: 10px;
  }

  body header section.barra-lgpd .text {
    text-align: center;
    line-height: 1.4;
    font-size: 12px;
  }

  body header section.barra-lgpd .button a {
    font-size: 12px;
    padding: 8px 20px;
  }

  body header section.barra-lgpd .icon {
    display: none;
  }
}

@media (min-width: 992px) {
  body main.compensar {
    margin-top: 201px;
  }
}

body main section.header-conteudo {
  background-size: cover;
  background-position: bottom;
  padding: 50px 0 70px 0;
  color: white;
  font-size: 18px;
  font-weight: 300;
  line-height: 1.4;
  position: relative;
  z-index: 2;
}

body main section.header-conteudo strong {
  color: #ffb235;
  font-weight: 600;
}

body main section.header-conteudo.small {
  background: #0073bb;
  padding: 20px 0 0 0;
}

body main section.header-conteudo h1 {
  font-size: 28px;
  font-weight: 600;
  margin-bottom: 20px;
}

@media (max-width: 991px) {
  body main section.header-conteudo {
    background-color: #0073bb;
    border-bottom: 5px solid #003850;
    background-image: none !important;
    padding: 20px 10px;
    font-size: 14px;
  }

  body main section.header-conteudo.small {
    padding-bottom: 10px;
  }

  body main section.header-conteudo h1 {
    font-size: 18px;
    margin-bottom: 10px;
  }
}

body main section.breadcrumb {
  margin-bottom: 20px;
  color: white;
  font-size: 12px;
  display: flex;
  align-items: center;
  position: relative;
}

body main section.breadcrumb a {
  color: #003850;
  text-decoration: underline;
  margin: 0 5px;
  font-weight: 500;
  text-transform: lowercase;
  font-size: 14px;
}

body main section.breadcrumb a:first-child {
  margin-left: 0;
}

body main section.breadcrumb a:last-child {
  margin-right: 0;
}

body main section.breadcrumb a.active {
  color: white;
  font-weight: 400;
  text-decoration: none;
}

@media (max-width: 991px) {
  body main section.breadcrumb {
    font-size: 12px;
  }

  body main section.breadcrumb a {
    font-size: 12px;
  }
}

body main ul.paginacao {
  display: flex;
  margin: 0 5px;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  margin-top: 20px;
  padding: 0;
}

body main ul.paginacao li {
  list-style: none;
}

body main ul.paginacao li a {
  background-color: white;
  border: 2px solid #0073bb;
  width: 45px;
  height: 50px;
  border-top-left-radius: 20px;
  margin: 0 7px;
  display: flex;
  font-weight: 600;
  align-items: center;
  justify-content: center;
  color: #0073bb;
  font-size: 18px;
  -webkit-transition: all 0.3s;
  -moz-transition: all 0.3s;
  -ms-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
}

body main ul.paginacao li a.active,
body main ul.paginacao li a:hover {
  color: white;
  border-color: #0073bb;
  background-color: #0073bb;
}

body main section.separador-instagram {
  background-image: url("../img/bg-insta.png");
  background-size: cover;
  color: white;
  background-position: top;
  padding: 80px 0 50px 0;
}

body main section.separador-instagram .texto {
  font-size: 18px;
}

body main section.separador-instagram .texto i {
  color: #003850;
  font-size: 24px;
}

body main section.separador-instagram .texto h1 {
  font-size: 50px;
  font-weight: 400;
}

body main section.separador-instagram .texto h1 strong {
  display: block;
  color: #ffb235;
  font-weight: 600;
}

body main section.separador-instagram .texto a {
  color: #003850;
  font-size: 18px;
  display: block;
  margin-top: 20px;
  font-weight: 600;
  text-decoration: underline;
}

body main section.separador-instagram .owl-carousel .owl-nav {
  display: none;
}

@media (max-width: 991px) {
  body main section.separador-instagram {
    background: #2d90ca;
    border-top: 5px solid #0073bb;
    padding: 30px 0;
  }

  body main section.separador-instagram .owl-carousel {
    margin-top: 30px;
  }

  body main section.separador-instagram .texto {
    font-size: 15px;
  }

  body main section.separador-instagram .texto h1 {
    font-size: 24px;
  }
}

body main section.index-banner {
  position: relative;
}

body main section.index-banner .owl-carousel .owl-prev,
body main section.index-banner .owl-carousel .owl-next {
  position: absolute;
  bottom: 50%;
  outline: none;
  color: #003850;
  font-size: 42px;
  padding: 2px 5px !important;
}

@media (max-width: 991px) {

  body main section.index-banner .owl-carousel .owl-prev,
  body main section.index-banner .owl-carousel .owl-next {
    color: white;
    background-color: #003850;
    font-size: 30px;
    padding: 2px 5px !important;
  }
}

body main section.index-banner .owl-carousel .owl-prev:hover,
body main section.index-banner .owl-carousel .owl-next:hover {
  opacity: 0.8;
}

body main section.index-banner .owl-carousel .owl-prev {
  border-radius: 0 5px 5px 0;
  left: 25px;
}

@media (max-width: 991px) {
  body main section.index-banner .owl-carousel .owl-prev {
    left: 0px;
  }
}

body main section.index-banner .owl-carousel .owl-next {
  border-radius: 5px 0 0 5px;
  right: 25px;
}

@media (max-width: 991px) {
  body main section.index-banner .owl-carousel .owl-next {
    right: 0px;
  }
}

body main section.index-chamada {
  background-image: url("../img/bg-chamada.png");
  background-size: cover;
  padding: 30px 10px 50px 10px;
}

body main section.index-chamada .texto {
  font-size: 16px;
  line-height: 1.2;
}

body main section.index-chamada .texto p:last-child {
  margin-bottom: 0;
}

body main section.index-chamada .texto p:last-child strong {
  color: #ffb235;
  display: block;
}

body main section.index-chamada .texto h1 {
  font-weight: 600;
  color: #003850;
  font-size: 32px;
}

body main section.index-chamada .main-cta {
  max-width: 350px;
  margin-top: 30px;
}

body main section.index-chamada .cruz {
  width: 100%;
  margin-top: -70px;
  z-index: 2;
  position: relative;
}

@media (max-width: 991px) {
  body main section.index-chamada {
    text-align: center;
    padding: 20px 0 50px 0;
  }

  body main section.index-chamada .main-cta {
    margin-top: 20px;
    max-width: 300px;
  }

  body main section.index-chamada .texto {
    font-size: 15px;
  }

  body main section.index-chamada .texto p:last-child strong {
    display: inline;
  }

  body main section.index-chamada .texto h1 {
    font-size: 20px;
  }

  body main section.index-chamada .cruz {
    display: none;
  }
}

body main section.index-caracteristicas {
  background-image: url("../img/bg-caracteristicas.png");
  background-size: cover;
  background-position: top;
  padding: 40px 0;
}

body main section.index-caracteristicas .itens {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

body main section.index-caracteristicas .itens .item {
  text-align: center;
  max-width: 300px;
  padding: 0 20px;
}

body main section.index-caracteristicas .itens .item img {
  height: 60px;
  margin-bottom: 10px;
}

body main section.index-caracteristicas .itens .item span {
  line-height: 1.2;
  color: white;
  font-size: 17px;
  display: block;
}

body main section.index-caracteristicas .itens .item span strong {
  color: #ffb235;
}

@media (max-width: 991px) {
  body main section.index-caracteristicas {
    background: #0073bb;
    border-top: 5px solid #ffb235;
    padding: 10px 0;
  }

  body main section.index-caracteristicas .itens {
    flex-wrap: wrap;
    align-items: flex-start;
  }

  body main section.index-caracteristicas .itens .item {
    margin: 7px 0;
    width: 50%;
    flex: 0 0 50%;
    max-width: none;
  }

  body main section.index-caracteristicas .itens .item span {
    font-size: 14px;
  }

  body main section.index-caracteristicas .itens .item img {
    height: 40px;
    width: 40px;
  }
}

body main section.index-area {
  padding: 50px 0;
  position: relative;
}

body main section.index-area:after {
  content: url("../img/overlay.png");
  position: absolute;
  right: 0;
  bottom: -60px;
  z-index: -1;
}

body main section.index-area h1 {
  color: #003850;
  font-size: 42px;
  font-weight: 600;
  text-align: center;
  margin-bottom: 80px;
}

body main section.index-area .box {
  height: 100%;
  display: flex;
  flex-flow: column;
  justify-content: space-between;
  border: 1px solid;
  border-image-slice: 1;
  border-image-source: linear-gradient(180deg, #cccccc 0%, rgba(224, 224, 224, 0) 50%);
  padding: 30px 50px;
  padding-top: 0;
  line-height: 1.1;
  color: #525252;
  font-size: 17px;
  text-align: center;
}

body main section.index-area .box a {
  color: #525252;
}

body main section.index-area .box .icone {
  margin: auto;
  margin-bottom: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 110px;
  height: 110px;
  border-radius: 100%;
  border: 2px solid #0073bb;
  margin-top: -55px;
  background-color: white;
}

body main section.index-area .box .icone img {
  height: 50px;
  width: 50px;
  object-fit: contain;
  object-position: center;
  display: block;
}

body main section.index-area .box h2 {
  color: #003850;
  font-size: 32px;
  font-weight: 600;
  margin-bottom: 10px;
}

body main section.index-area .box .main-cta {
  display: flex;
  color: #003850;
  max-width: 230px;
  margin: auto;
  margin-top: 35px;
}

@media (max-width: 991px) {
  body main section.index-area {
    padding: 20px 0;
  }

  body main section.index-area:after {
    display: none;
  }

  body main section.index-area h1 {
    font-size: 24px;
    margin-bottom: 20px;
  }

  body main section.index-area .box {
    padding: 30px;
    padding-top: 0;
    margin-top: 30px;
    font-size: 15px;
  }

  body main section.index-area .box h2 {
    font-size: 21px;
  }

  body main section.index-area .box .icone {
    width: 70px;
    height: 70px;
    margin-top: -35px;
  }

  body main section.index-area .box .icone img {
    width: 30px;
    height: 30px;
  }
}

body main section.index-produtos {
  background-image: url("../img/bg-destaque.png");
  background-size: 100% 100%;
  background-position: top;
  padding: 50px 0;
  padding-top: 80px;
}

body main section.index-produtos .secao {
  margin-top: 50px;
}

@media screen and (max-width: 991px) {
  body main section.index-produtos .secao {
    margin-top: 10px;
  }
}

@media (min-width: 992px) {
  body main section.index-produtos .owl-carousel .owl-stage {
    display: flex;
  }

  body main section.index-produtos .owl-carousel .owl-item {
    display: flex;
    flex: 1 0 auto;
  }
}

@media (min-width: 992px) {
  body main section.index-produtos .owl-carousel .owl-stage-outer {
    height: calc(100% + 20px);
    margin: -10px -10px;
    padding: 10px 10px;
    width: calc(100% + 20px);
  }
}

body main section.index-produtos .titulo {
  text-align: center;
}

body main section.index-produtos .titulo img {
  margin-bottom: 15px;
}

body main section.index-produtos .titulo h1 {
  color: #003850;
  font-weight: 300;
  font-size: 50px;
}

body main section.index-produtos .titulo h3 {
  font-size: 22px;
  margin-bottom: 0;
  color: #ffb235;
  font-weight: 700;
}

body main section.index-produtos .owl-carousel .owl-nav:not(.disabled) {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 30px;
}

body main section.index-produtos .owl-carousel .owl-nav:not(.disabled) .owl-prev,
body main section.index-produtos .owl-carousel .owl-nav:not(.disabled) .owl-next {
  margin: 0 15px;
  background-color: #003850;
  color: white;
  border-radius: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
}

body main section.index-produtos .ver-todos {
  background-color: #ffb235;
  color: white;
  border-radius: 10px;
  font-size: 20px;
  font-weight: 500;
  display: inline-block;
  padding: 10px 30px;
}

body main section.index-produtos .main-cta {
  max-width: 320px;
}

body main section.index-produtos .titulo-secao {
  display: flex;
  align-items: center;
}

body main section.index-produtos .titulo-secao h5 {
  color: #ffb235;
  margin-bottom: 0;
  font-size: 22px;
  font-weight: 600;
}

body main section.index-produtos .titulo-secao h1 {
  color: #003850;
  font-size: 48px;
  text-transform: uppercase;
  font-weight: 300;
}

body main section.index-produtos .titulo-secao img {
  margin-right: 25px;
}

@media (max-width: 991px) {
  body main section.index-produtos {
    padding: 20px 0;
    background: #e6edf4;
  }

  body main section.index-produtos .card-produto {
    box-shadow: none;
  }

  body main section.index-produtos .ver-todos {
    margin-top: 20px;
    font-size: 15px;
  }

  body main section.index-produtos .titulo h1 {
    font-size: 23px;
  }

  body main section.index-produtos .titulo h3 {
    font-size: 18px;
  }

  body main section.index-produtos .titulo-secao {
    justify-content: center;
    margin-top: 25px;
  }

  body main section.index-produtos .titulo-secao img {
    margin-right: 15px;
    width: 30px;
  }

  body main section.index-produtos .titulo-secao h5 {
    font-size: 18px;
  }

  body main section.index-produtos .titulo-secao h1 {
    font-size: 22px;
  }
}

body main section.index-lideranca {
  padding: 30px 0;
  background-image: url("../img/bg-lideranca.png");
  background-size: cover;
  background-position: center;
}

body main section.index-lideranca.interna {
  border-top: 3px solid gainsboro;
  border-bottom: 3px solid gainsboro;
}

body main section.index-lideranca .direita .item {
  text-align: left;
}

body main section.index-lideranca .direita .item:nth-child(odd) {
  transform: translateX(-80px);
}

body main section.index-lideranca .item {
  text-align: right;
  color: #003850;
  font-size: 17px;
  line-height: 1.2;
  margin: 50px 0;
}

body main section.index-lideranca .item:nth-child(odd) {
  transform: translateX(80px);
}

body main section.index-lideranca .item strong {
  font-size: 22px;
  display: block;
}

body main section.index-lideranca .item img {
  margin-bottom: 10px;
}

body main section.index-lideranca .titulo {
  text-align: center;
}

body main section.index-lideranca .titulo h1 {
  margin-bottom: 0;
  color: #0073bb;
  font-weight: 400;
  font-size: 45px;
}

body main section.index-lideranca .titulo h1 strong {
  font-weight: 600;
}

body main section.index-lideranca .titulo img {
  margin-bottom: 15px;
}

@media (max-width: 991px) {
  body main section.index-lideranca {
    background: #fbfbfb;
    padding: 25px 0;
  }

  body main section.index-lideranca .item {
    transform: none !important;
    text-align: center !important;
    margin: 20px 0;
    font-size: 15px;
  }

  body main section.index-lideranca .item:first-child {
    margin-top: 0;
  }

  body main section.index-lideranca .item strong {
    font-size: 17px;
  }

  body main section.index-lideranca .item img {
    height: 35px;
  }

  body main section.index-lideranca .titulo {
    margin-bottom: 30px;
  }

  body main section.index-lideranca .titulo img {
    height: 50px;
  }

  body main section.index-lideranca .titulo h1 {
    font-size: 22px;
  }
}

body main section.index-precisando {
  background-image: url("../img/bg-precisando.png");
  background-position: center;
  background-size: cover;
  padding: 50px 0 80px 0;
  position: relative;
}

body main section.index-precisando:after {
  content: url("../img/separador2.png");
  position: absolute;
  top: -17px;
  left: calc(50% - 500px);
  z-index: 1;
}

@media (max-width: 991px) {
  body main section.index-precisando {
    border-top: 1px solid lightgray;
  }

  body main section.index-precisando:after {
    display: none;
  }
}

body main section.index-precisando.interna {
  background-image: url("../img/bg-precisando2.png");
}

body main section.index-precisando.interna:after {
  display: none;
}

body main section.index-precisando.interna .main-phone .icon {
  color: white;
}

body main section.index-precisando.interna .main-phone .text {
  color: white;
}

body main section.index-precisando.interna .texto {
  color: white;
}

body main section.index-precisando.interna .texto img {
  filter: brightness(100);
}

body main section.index-precisando.interna .texto h1,
body main section.index-precisando.interna .texto h3 {
  color: #ffb235;
}

body main section.index-precisando.interna .box {
  background-color: rgba(0, 121, 122, 0.5);
  border: none;
}

body main section.index-precisando.interna .box h3 {
  color: white;
}

body main section.index-precisando.interna .box .main-cta {
  color: white;
}

body main section.index-precisando .main-phone {
  transform: scale(1.2);
}

body main section.index-precisando .box {
  padding: 30px;
  border-top-left-radius: 30px;
  border: 1px solid gainsboro;
  border-bottom: 5px solid #0073bb;
}

body main section.index-precisando .box h3 {
  text-align: center;
  color: #035387;
  font-weight: 600;
  font-size: 20px;
  margin-bottom: 20px;
}

body main section.index-precisando .box input,
body main section.index-precisando .box textarea {
  background-color: #f7f7f7;
  border: 1px solid gainsboro;
  border-radius: 5px;
  padding: 10px 20px;
  width: 100%;
  font-size: 16px;
  margin-bottom: 10px;
}

body main section.index-precisando .texto {
  font-size: 16px;
  line-height: 1.2;
}

body main section.index-precisando .texto h1 {
  color: #0073bb;
  font-weight: 400;
  font-size: 48px;
}

body main section.index-precisando .texto h1 strong {
  display: block;
  font-weight: 600;
}

body main section.index-precisando .texto h3 {
  color: #003850;
  margin-bottom: 30px;
  font-size: 20px;
  font-weight: 400;
}

@media (max-width: 991px) {
  body main section.index-precisando {
    padding: 30px 0;
  }

  body main section.index-precisando .box {
    margin-top: 20px;
    padding: 20px;
  }

  body main section.index-precisando .box input,
  body main section.index-precisando .box textarea {
    padding: 7px 13px;
    font-size: 14px;
  }

  body main section.index-precisando .box h3 {
    font-size: 16px;
  }

  body main section.index-precisando .phones {
    text-align: center;
  }

  body main section.index-precisando .main-phone {
    transform: none;
  }

  body main section.index-precisando .texto {
    text-align: center;
    font-size: 15px;
  }

  body main section.index-precisando .texto h3 {
    font-size: 16px;
    margin-bottom: 20px;
  }

  body main section.index-precisando .texto img {
    height: 30px;
  }

  body main section.index-precisando .texto h1 {
    font-size: 22px;
  }
}

body main section.index-porque-comprar {
  color: white;
  background-image: url("../img/bg-porque-comprar.png");
  background-size: cover;
  background-position: right;
  padding: 70px 0 30px 0;
  margin-top: -30px;
  position: relative;
}

body main section.index-porque-comprar h1 {
  font-size: 46px;
  font-weight: 400;
  margin-bottom: 25px;
}

body main section.index-porque-comprar h1 strong {
  font-weight: 500;
}

body main section.index-porque-comprar ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

body main section.index-porque-comprar ul li {
  background: linear-gradient(90deg, rgba(24, 108, 114, 0) 0%, #186c72 100%);
  font-size: 16px;
  font-weight: 300;
  padding: 15px 25px;
  border-radius: 5px;
  margin: 7px 0;
  position: relative;
  padding-left: 50px;
}

body main section.index-porque-comprar ul li:before {
  content: "";
  /* Necessário deixar vazio para usar background */
  background-image: url("../img/check.png");
  background-size: contain;
  /* Garante que o ícone caiba no espaço sem distorcer */
  background-repeat: no-repeat;
  background-position: center;
  position: absolute;
  left: 0;

  /* CONTROLE O TAMANHO AQUI */
  width: 30px;
  /* Diminua ou aumente este valor */
  height: 30px;
  /* Mantenha igual ao width para ser quadrado */

  /* Centraliza verticalmente com base na nova altura (metade de 24px é 12px) */
  top: calc(50% - 18px);
}

@media (max-width: 991px) {
  body main section.index-porque-comprar {
    margin-top: 0;
    padding: 30px 0;
    background: #008a8c;
  }

  body main section.index-porque-comprar h1 {
    text-align: center;
    font-size: 20px;
  }

  body main section.index-porque-comprar ul li {
    font-size: 15px;
    padding: 10px 20px;
    padding-left: 50px;
  }

  body main section.index-porque-comprar ul li:before {
    width: 24px;
    height: 24px;
    top: calc(50% - 15px);
  }
}

body main section.index-segmentos {
  text-align: center;
  padding: 50px 0 80px 0;
  background-image: url("../img/bg-segmentos.png");
  background-size: cover;
}

body main section.index-segmentos h1 {
  font-size: 48px;
  font-weight: 400;
  color: #0073bb;
  margin-bottom: 50px;
}

body main section.index-segmentos h1 strong {
  font-weight: 600;
}

body main section.index-segmentos .box {
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: white;
  padding: 30px;
  padding-top: 40px;
  box-shadow: 2px 2px 10px 5px rgba(220, 220, 220, 0.3);
  border-top-left-radius: 60px;
  color: gray;
  position: relative;
  border-bottom: 10px solid;
  height: 100%;
}

body main section.index-segmentos .box .in-box {
  flex: 1;
}

body main section.index-segmentos .box.box-1 {
  border-color: #f8ae40;
}

body main section.index-segmentos .box.box-2 {
  border-color: #8dbf44;
}

body main section.index-segmentos .box.box-3 {
  border-color: #3bae72;
}

body main section.index-segmentos .box.box-4 {
  border-color: #1e75ba;
}

body main section.index-segmentos .box a.main-cta {
  margin-top: 25px;
}

body main section.index-segmentos .box img {
  margin-bottom: 15px;
  height: 50px;
}

body main section.index-segmentos .box h3 {
  font-size: 22px;
  color: black;
  font-weight: 600;
  margin-bottom: 0;
}

@media (max-width: 991px) {
  body main section.index-segmentos {
    padding: 40px 0;
  }

  body main section.index-segmentos .main-cta {
    max-width: 200px;
  }

  body main section.index-segmentos .box {
    padding: 20px 10px;
    font-size: 14px;
  }

  body main section.index-segmentos .box img {
    height: 40px;
  }

  body main section.index-segmentos .box h3 {
    font-size: 18px;
  }

  body main section.index-segmentos h1 {
    font-size: 22px;
    margin-bottom: 10px;
  }

  body main section.index-segmentos h1 strong {
    display: block;
  }

  body main section.index-segmentos .sep {
    margin-bottom: 15px;
    width: 100%;
  }
}

body main section.index-sobre {
  background-image: url("../img/bg-sobre.png");
  background-size: cover;
  padding-top: 30px;
  background-position: top;
  margin-top: -40px;
}

body main section.index-sobre .box {
  background-color: white;
  padding: 20px 40px;
  border-radius: 10px 0 0 10px;
  color: #003850;
  /*margin-top: 40px;*/
}

body main section.index-sobre .box .in-box {
  max-width: 630px;
  /*display: flex;
  align-items: center;*/
}

body main section.index-sobre .box .in-box .link {
  line-height: 1.2;
  /*flex: 0 0 50%;*/
  font-weight: 500;
  display: flex;
  align-items: center;
  color: #003850;
  font-size: 16px;
}

body main section.index-sobre .box .in-box .link img {
  margin-right: 20px;
}

/*body main section.index-sobre .main-phone {
  transform: scale(1.2);
}*/

body main section.index-sobre .main-phone .text {
  color: white;
}

body main section.index-sobre .main-phone .text strong {
  display: inline;
}

body main section.index-sobre .main-cta {
  max-width: 220px;
  color: white;
}

body main section.index-sobre .texto {
  color: white;
  font-size: 16px;
  /*text-align: right;*/
}

body main section.index-sobre .texto img {
  margin-bottom: 30px;
}

@media (max-width: 991px) {
  body main section.index-sobre {
    background: #003153;
    margin-top: 0;
    border-top: 5px solid #0073bb;
    padding: 30px 0;
  }

  body main section.index-sobre .box {
    padding: 15px 30px;
    border-radius: 10px;
    /*margin-top: 30px;*/
  }

  body main section.index-sobre .box .in-box {
    flex-flow: column;
  }

  body main section.index-sobre .box .in-box .link {
    font-size: 15px;
    flex-basis: 100%;
    margin: 8px 0;
  }

  body main section.index-sobre .box .in-box .link img {
    height: 40px;
  }

  body main section.index-sobre .texto {
    text-align: center;
    font-size: 15px;
  }

  body main section.index-sobre .texto img {
    height: 60px;
  }
}

body main section.index-video {
  background-size: cover;
  background-position: center;
  color: white;
  text-align: center;
  padding: 170px 0;
  font-size: 22px;
  position: relative;
  overflow: hidden;
}

body main section.index-video video {
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

body main section.index-video:before {
  content: "";
  background-color: rgba(0, 0, 0, 0.7);
  z-index: 2;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

body main section.index-video h3 {
  margin-top: 30px;
  font-weight: 600;
  font-size: 22px;
}

body main section.index-video .container {
  position: relative;
  z-index: 4;
  /*max-width: 800px;*/
}

body main section.index-video:after {
  content: "";
  position: absolute;
  top: 15px;
  left: 0;
  width: 100%;
  height: calc(100% - 30px);
  border-top: 1px solid white;
  border-bottom: 1px solid white;
  z-index: 3;
  pointer-events: none;
}

@media (max-width: 991px) {
  body main section.index-video {
    padding: 50px 0;
    font-size: 15px;
  }

  body main section.index-video h3 {
    font-size: 18px;
  }
}

body main section.index-parceiros {
  padding: 40px 0;
}

body main section.index-parceiros .titulo {
  text-align: center;
  font-size: 20px;
  color: dimgray;
}

body main section.index-parceiros .titulo strong {
  color: #ffb235;
  font-weight: 600;
}

body main section.index-parceiros .titulo h1 {
  color: #0073bb;
  font-size: 48px;
  font-weight: 400;
  margin-bottom: 0;
  margin-top: 10px;
}

body main section.index-parceiros .titulo h1 strong {
  color: #0073bb;
  font-weight: 600;
}

body main section.index-parceiros .owl-carousel {
  margin-top: 30px;
}

body main section.index-parceiros .owl-carousel .owl-nav:not(.disabled) .owl-prev,
body main section.index-parceiros .owl-carousel .owl-nav:not(.disabled) .owl-next {
  margin: 0 15px;
  background-color: #d3d3d3;
  color: white;
  border-radius: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  position: absolute;
  left: -70px;
  top: calc(50% - 20px);
}

body main section.index-parceiros .owl-carousel .owl-nav:not(.disabled) .owl-next {
  left: auto;
  right: -70px;
}

body main section.index-parceiros .owl-carousel img {
  height: 100px;
  object-fit: contain;
}

@media (max-width: 991px) {
  body main section.index-parceiros {
    padding: 30px 0;
  }

  body main section.index-parceiros .owl-carousel {
    margin-top: 20px;
  }

  body main section.index-parceiros .owl-carousel .owl-nav:not(.disabled) .owl-prev {
    left: 0;
  }

  body main section.index-parceiros .owl-carousel .owl-nav:not(.disabled) .owl-next {
    right: 0;
  }

  body main section.index-parceiros .owl-carousel img {
    height: 80px;
  }

  body main section.index-parceiros .titulo {
    font-size: 16px;
  }

  body main section.index-parceiros .titulo h1 {
    font-size: 24px;
  }
}

body main section.index-depoimentos {
  padding: 30px 0;
  background-image: url("../img/bg-depoimentos.png");
  background-size: cover;
}

body main section.index-depoimentos.interna {
  margin-top: -20px;
  padding: 50px 0;
}

/*@media (min-width: 992px) {
  body main section.index-depoimentos .owl-carousel .owl-stage {
    display: flex;
  }

  body main section.index-depoimentos .owl-carousel .owl-item {
    display: flex;
    flex: 1 0 auto;
  }
}*/

body main section.index-depoimentos .sep {
  display: block;
  margin: 50px auto;
  transform: translateX(-80px);
}

body main section.index-depoimentos .ver-todos {
  max-width: 200px;
}

body main section.index-depoimentos .row-flex {
  max-width: 1000px;
  margin: auto;
  margin-top: 30px;
}

body main section.index-depoimentos .row-flex .main-cta {
  max-width: 300px;
}

body main section.index-depoimentos .texto {
  text-align: center;
  color: #0073bb;
  margin: auto;
  max-width: 900px;
  margin-top: 40px;
}

body main section.index-depoimentos .texto h1 {
  color: #0073bb;
  font-weight: 400;
  font-size: 36px;
}

body main section.index-depoimentos .texto h1 strong {
  display: block;
  font-weight: 600;
}

body main section.index-depoimentos .texto h3 {
  font-weight: 400;
  margin-bottom: 0;
  font-size: 18px;
  color: #003850;
}

@media (min-width: 992px) {
  body main section.index-depoimentos .owl-carousel .owl-stage-outer {
    height: calc(100% + 20px);
    margin: -10px -10px;
    padding: 10px 10px;
    width: calc(100% + 20px);
  }
}

body main section.index-depoimentos .owl-carousel .owl-nav {
  display: none;
  justify-content: center;
  align-items: center;
  margin-top: 40px;
}

body main section.index-depoimentos .owl-carousel .owl-nav .owl-next,
body main section.index-depoimentos .owl-carousel .owl-nav .owl-prev {
  color: #0073bb;
  font-size: 24px;
  margin: 0 10px;
}

body main section.index-depoimentos .depoimento {
  background: #ffffff;
  box-shadow: 4px 8px 12px rgba(0, 0, 0, 0.11);
  border-radius: 30px 0px 0px 0px;
  padding: 30px;
  padding-top: 0;
  height: 100%;
  font-size: 16px;
  color: #525252;
}

body main section.index-depoimentos .depoimento .texto-depoimento {
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 5;
  -webkit-box-orient: vertical;
  text-overflow: ellipsis;
  height: "";
}

body main section.index-depoimentos .depoimento .texto-depoimento.aberto {
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: unset;
  -webkit-box-orient: vertical;
  text-overflow: ellipsis;
  height: "";
}

body main section.index-depoimentos .depoimento .logo {
  display: block;
  margin: auto;
  margin-bottom: 10px;
  margin-top: -40px;
  height: 90px;
}

body main section.index-depoimentos .depoimento .quote {
  margin-top: -10px;
  width: auto;
  height: auto;
  margin-bottom: 25px;
}

body main section.index-depoimentos .depoimento strong {
  display: block;
  font-size: 18px;
  text-transform: uppercase;
  color: #0073bb;
  font-weight: 600;
  margin-bottom: 10px;
}

body main section.index-depoimentos .titulo {
  text-align: center;
}

body main section.index-depoimentos .titulo h1 {
  font-weight: 400;
  color: #0073bb;
  margin: 10px 0;
  font-size: 48px;
}

body main section.index-depoimentos .titulo h1 strong {
  font-weight: 600;
}

body main section.index-depoimentos .titulo h3 {
  font-size: 18px;
  color: dimgray;
  font-weight: 400;
  max-width: 700px;
  margin: auto;
}

body main section.index-depoimentos .titulo h3 strong {
  font-weight: 600;
  color: #ffb235;
}

@media (max-width: 991px) {
  body main section.index-depoimentos .titulo h3 {
    font-size: 16px;
  }

  body main section.index-depoimentos .titulo h1 {
    font-size: 24px;
  }

  body main section.index-depoimentos .row-flex {
    flex-wrap: wrap;
    justify-content: center;
  }

  body main section.index-depoimentos .row-flex .anvisa {
    flex: 1;
    flex-basis: 100%;
    margin-bottom: 5px;
    text-align: center;
  }

  body main section.index-depoimentos .row-flex .anvisa img {
    width: 180px;
  }

  body main section.index-depoimentos .sep {
    margin: 30px auto;
  }

  body main section.index-depoimentos .texto {
    margin-top: 0;
  }

  body main section.index-depoimentos .texto h1 {
    font-size: 22px;
  }

  body main section.index-depoimentos .texto h1 strong {
    display: inline;
  }

  body main section.index-depoimentos .texto h3 {
    font-size: 15px;
  }

  body main section.index-depoimentos .depoimento {
    box-shadow: none;
    padding: 30px;
    font-size: 15px;
  }

  body main section.index-depoimentos .depoimento .logo {
    margin-top: 0;
  }

  body main section.index-depoimentos .depoimento strong {
    font-size: 18px;
  }

  body main section.index-depoimentos .depoimento .quote {
    display: none;
  }
}

body main section.index-frase {
  min-height: 300px;
  background-image: url("../img/bg-frase.png");
  background-size: 100% 100%;
  background-position: bottom;
  padding: 40px 0;
  text-align: center;
  position: relative;
}

body main section.index-frase:after {
  content: url("../img/overlay2.png");
  position: absolute;
  left: 0;
  top: -20px;
}

body main section.index-frase .container {
  max-width: 1000px;
}

body main section.index-frase img {
  margin-bottom: 30px;
}

body main section.index-frase h3 {
  margin: 0;
  font-size: 22px;
  color: white;
  font-weight: 400;
}

body main section.index-frase h3 strong {
  font-weight: 600;
  color: #ffb235;
}

@media (max-width: 991px) {
  body main section.index-frase {
    min-height: auto;
    background: #7a7a7a;
    padding: 60px 0;
  }

  body main section.index-frase img {
    width: 150px;
    margin-bottom: 20px;
  }

  body main section.index-frase:after {
    display: none;
  }

  body main section.index-frase h3 {
    font-size: 15px;
  }
}

body main section.index-blog {
  padding: 50px 0;
}

body main section.index-blog h1 {
  color: #0073bb;
  font-size: 36px;
  font-weight: 600;
}

body main section.index-blog .posts {
  position: relative;
}

body main section.index-blog .posts:after {
  content: "";
  background-color: gainsboro;
  width: 2px;
  height: 100%;
  position: absolute;
  right: -30px;
  top: 0;
}

body main section.index-blog .posts:before {
  content: "";
  background-color: gainsboro;
  width: 2px;
  height: 100%;
  position: absolute;
  left: -30px;
  top: 0;
}

body main section.index-blog .post {
  display: block;
}

body main section.index-blog .post .resumo {
  line-height: 1.1;
  color: #003850;
  font-size: 17px;
  display: -webkit-box;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  text-overflow: ellipsis;
}

body main section.index-blog .post img {
  width: 100%;
  height: 200px;
  border-radius: 10px;
}

body main section.index-blog .post h4 {
  color: #003850;
  margin-top: 20px;
  font-size: 20px;
  font-weight: 600;
  margin-bottom: 10px;
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  text-overflow: ellipsis;
  height: 72px;
}

body main section.index-blog h3 {
  margin-bottom: 30px;
  font-size: 16px;
  font-weight: 400;
}

@media (max-width: 991px) {
  body main section.index-blog {
    padding: 20px 0;
  }

  body main section.index-blog .posts:before,
  body main section.index-blog .posts:after {
    display: none;
  }

  body main section.index-blog .post {
    margin-top: 30px;
  }

  body main section.index-blog .post .resumo {
    font-size: 15px;
    height: auto;
  }

  body main section.index-blog .post h4 {
    height: auto;
    margin-top: 10px;
    font-size: 16px;
  }

  body main section.index-blog .main-cta {
    max-width: 230px;
  }

  body main section.index-blog h1 {
    font-size: 24px;
  }

  body main section.index-blog h3 {
    font-size: 16px;
    margin-bottom: 20px;
  }
}

body main section.produtos-listagem {
  padding: 30px 0;
}

body main section.produtos-listagem h3 {
  color: #0073bb;
  font-size: 28px;
  font-weight: 300;
  margin-bottom: 20px;
}

body main section.produtos-listagem .card-produto {
  margin-bottom: 30px;
  height: calc(100% - 30px);
}

body main section.produtos-listagem .total {
  background-color: #f8f8f8;
  color: #0073bb;
  font-weight: 600;
  padding: 7px 25px;
  border-radius: 5px;
  margin-bottom: 30px;
}

body main section.produtos-listagem .total select {
  background-color: #e9e9e9;
  color: gray;
  outline: none;
  border: 1px solid gainsboro;
  font-size: 14px;
  text-transform: uppercase;
  padding: 8px;
  border-radius: 5px;
  margin-left: 5px;
}

@media (max-width: 991px) {
  body main section.produtos-listagem {
    padding: 30px 0 20px 0;
    margin-top: 0;
  }

  body main section.produtos-listagem .notfound {
    margin-bottom: 20px;
    font-size: 15px;
  }

  body main section.produtos-listagem .total {
    font-size: 14px;
    padding: 11px 20px;
  }

  body main section.produtos-listagem .total select {
    display: block;
    width: 100%;
    margin-left: 0;
    margin-top: 5px;
  }
}

body main section.produtos-categorias .cat {
  box-shadow: -3px -2px 5px -3px rgba(0, 0, 0, 0.2);
  border-radius: 10px;
  margin: 15px 0;
  padding: 10px 20px;
}

body main section.produtos-categorias .cat .principal {
  display: flex;
  align-items: center;
  color: #0073bb;
  font-weight: 600;
  font-size: 18px;
  text-transform: uppercase;
}

body main section.produtos-categorias .cat .principal img {
  margin-right: 15px;
  height: 25px;
  width: 25px;
  object-fit: contain;
}

body main section.produtos-categorias .subcategorias {
  padding-left: 45px;
}

body main section.produtos-categorias .subcategorias a {
  display: block;
  color: dimgray;
  margin: 5px 0;
  font-size: 15px;
}

body main section.produtos-categorias form {
  position: relative;
  margin-bottom: 30px;
}

body main section.produtos-categorias form input {
  background-color: #f7f7f7;
  color: gray;
  border-radius: 5px;
  outline: none;
  border: 1px solid gainsboro;
  font-size: 16px;
  padding: 7px 15px;
  width: 100%;
}

body main section.produtos-categorias form button {
  position: absolute;
  color: #003850;
  right: 10px;
  top: 6px;
  background-color: transparent;
  border: none;
  outline: none;
}

@media (max-width: 991px) {
  body main section.produtos-categorias .cat .principal {
    font-size: 16px;
  }
}

body main section.contato-lateral {
  background-image: url("../img/bg-contatolateral.png");
  background-size: cover;
  padding: 30px 50px;
  border-top-left-radius: 50px;
  color: white;
}

body main section.contato-lateral .logo {
  height: 80px;
  margin: auto;
  display: block;
  margin-bottom: 30px;
}

body main section.contato-lateral .main-phone .icon {
  margin-right: 5px;
}

body main section.contato-lateral .main-phone .icon i {
  color: white;
}

body main section.contato-lateral .main-phone .text {
  color: white;
  font-size: 16px;
  font-weight: 300;
}

body main section.contato-lateral .main-phone .text strong {
  font-weight: 500;
  color: #ffb235;
}

body main section.contato-lateral h4 {
  text-align: center;
  line-height: 1.3;
  font-size: 16px;
  font-weight: 400;
  margin-bottom: 30px;
}

body main section.contato-lateral h4 strong {
  display: block;
  font-size: 26px;
  color: #6fc7df;
  font-weight: 600;
  margin-bottom: 5px;
}

@media (max-width: 991px) {
  body main section.contato-lateral {
    padding: 30px;
  }

  body main section.contato-lateral .logo {
    height: 60px;
  }

  body main section.contato-lateral h4 strong {
    font-size: 20px;
  }
}

body main section.chamada-produtos {
  background-image: url("../img/bg-produtointerna.png");
  background-size: cover;
  padding: 30px 50px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  color: white;
  margin: 40px 0;
  border-radius: 10px;
}

body main section.chamada-produtos .bxicon {
  display: flex;
  align-items: center;
  color: white;
  font-weight: 600;
  font-size: 16px;
  line-height: 1.1;
  flex-basis: 0 0 10%;
}

body main section.chamada-produtos .bxicon img {
  margin-right: 15px;
}

body main section.chamada-produtos h3 {
  margin: 0;
  font-size: 18px;
  font-weight: 300;
  flex: 0 0 25%;
}

body main section.chamada-produtos h3 strong {
  font-weight: 600;
  color: #ffb235;
}

@media (max-width: 991px) {
  body main section.chamada-produtos {
    margin: 20px 0;
    padding: 20px 10px;
    flex-wrap: wrap;
    justify-content: center;
  }

  body main section.chamada-produtos .bxicon {
    flex-basis: auto;
    margin: 10px;
    font-size: 16px;
  }

  body main section.chamada-produtos .bxicon img {
    height: 25px;
  }

  body main section.chamada-produtos h3 {
    flex-basis: 100%;
    padding: 0 20px;
    margin-bottom: 20px;
    font-size: 20px;
    text-align: center;
  }
}

body main section.produtos-interna {
  padding: 50px 0;
}

body main section.produtos-interna .badges {
  margin-top: 30px;
}

body main section.produtos-interna .badges .link {
  display: flex;
  align-items: center;
  padding: 30px 20px;
  color: #003850;
  border-bottom: 1px solid lightgray;
}

body main section.produtos-interna .badges .link:last-child {
  border-bottom: none;
}

body main section.produtos-interna .badges .link span {
  display: block;
  color: #003850;
  font-size: 16px;
  max-width: 200px;
}

body main section.produtos-interna .badges .link img {
  width: 50px;
  margin-right: 30px;
}

body main section.produtos-interna .btn-download {
  display: flex;
  padding: 8px 20px;
  align-items: center;
  justify-content: space-between;
  border: 1px dashed #0073bb;
  color: #0073bb;
  margin: 10px 0;
}

body main section.produtos-interna .galeria-produtos img {
  object-fit: contain;
  border: 1px solid lightgray;
  width: 100%;
  height: 100px;
  margin-bottom: 20px;
  padding: 10px;
}

body main section.produtos-interna .owl-galeria-produtos img {
  width: 100%;
  border: 1px solid lightgray;
  height: 460px;
  object-fit: contain;
  object-position: center;
  padding: 10px;
}

body main section.produtos-interna h1 {
  font-weight: 600;
  font-size: 32px;
  color: #0073bb;
}

body main section.produtos-interna .resumo {
  color: gray;
  text-align: left;
  font-size: 16px;
}

body main section.produtos-interna .info {
  color: dimgray;
  font-size: 17px;
  line-height: 1.5;
  text-transform: uppercase;
}

body main section.produtos-interna hr {
  height: 3px;
  background-color: gainsboro;
}

body main section.produtos-interna .preco {
  text-align: left;
  margin-bottom: 20px;
}

body main section.produtos-interna .preco img {
  margin-bottom: 10px;
}

body main section.produtos-interna .preco .consulta {
  font-size: 24px;
  font-weight: 300;
  color: #0073bb;
  line-height: 1;
}

/* ==========================================
   1. DESKTOP: Cabeçalho Inteligente (Nativo)
   ========================================== */
/* ==========================================
   1. DESKTOP: Cabeçalho Fixo (GPU Accelerated)
   ========================================== */
/* Restaura o DOM padrão (removemos o hack do display: contents) */
header,
section.header {
  display: block;
}

#menu-topo.is-fixed {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 1030;
  background: #ffffff;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.08);

  /* Isolamento Agressivo de GPU: Extingue o rastro fantasma (Ghosting) */
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  will-change: transform;
}

/* ==========================================
   AJUSTES FINOS: COMPACTAÇÃO DO MENU STICKY
   ========================================== */

/* Transições Específicas (Proíbe o uso de 'transition: all' que quebra a GPU) */
.header-principal-flex,
.header-logo img,
.header-contatos,
.btn-carrinho-novo,
.categorias-nova-estrutura .box-ver-todos,
.categorias-nova-estrutura .btn-acao-outline,
.categorias-nova-estrutura .btn-acao-solid {
  transition: padding 0.3s ease, height 0.3s ease, transform 0.3s ease, max-height 0.3s ease;
}

#menu-topo.is-fixed .header-principal-flex {
  padding: 8px 0;
}

#menu-topo.is-fixed .header-logo img {
  max-height: 40px;
}

#menu-topo.is-fixed .header-contatos,
#menu-topo.is-fixed .btn-carrinho-novo {
  transform: scale(0.9);
  transform-origin: right center;
}

#menu-topo.is-fixed .categorias-nova-estrutura .box-ver-todos {
  height: 45px;
}

#menu-topo.is-fixed .dropdown-categorias {
  top: 45px;
}

#menu-topo.is-fixed .categorias-nova-estrutura .btn-acao-outline,
#menu-topo.is-fixed .categorias-nova-estrutura .btn-acao-solid {
  height: 36px;
  font-size: 13px;
}

/* ==========================================
   2. MOBILE: Barra Fixa Inferior
   ========================================== */
.barra-fixa-mobile {
  display: none;
}

@media (max-width: 991px) {
  body {
    padding-bottom: 65px;
  }

  /* Desativa a magia do sticky e restaura as caixas dos pais no celular */
  header,
  section.header {
    display: block !important;
  }

  #menu-topo {
    position: relative;
    box-shadow: none;
  }

  .barra-fixa-mobile {
    display: block;
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    background-color: #ffffff;
    box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.1);
    z-index: 9999;
    border-top: 1px solid #eaeaea;
  }

  .barra-fixa-mobile .list-itens {
    height: 60px;
  }

  .barra-fixa-mobile a {
    color: #005a9c;
    font-size: 22px;
    text-decoration: none;
  }

  .barra-fixa-mobile a.zap-mobile i {
    color: #25d366;
    font-size: 26px;
  }

  .barra-fixa-mobile .cart-link-mobile .count {
    position: absolute;
    top: -8px;
    right: -12px;
    background: #f68b1f;
    color: #fff;
    font-size: 10px;
    font-weight: bold;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
  }
}

/*sep--*/

body main section.produtos-interna .preco .consulta strong {
  font-weight: 700;
  display: block;
}

body main section.produtos-interna .cartoes {
  width: 100%;
  max-width: 350px;
  margin-top: 20px;
}

body main section.produtos-interna .detalhes .conteudo {
  line-height: 1.2;
  padding: 0 30px;
  color: gray;
  font-size: 16px;
}

body main section.produtos-interna .detalhes .titulo {
  margin: 25px 0;
  box-shadow: -3px -2px 5px -3px rgba(0, 0, 0, 0.2);
  border-radius: 10px;
  color: #003850;
  font-weight: 600;
  font-size: 18px;
  display: flex;
  align-items: center;
  padding: 15px 30px;
  justify-content: space-between;
}

body main section.produtos-interna .detalhes .titulo i {
  font-size: 22px;
  color: #ffb235;
}

body main section.produtos-interna .botoes .btn-card {
  padding: 8px 20px;
  border: 2px solid;
  font-weight: 600;
  border-radius: 5px;
  display: block;
  margin: 5px;
  text-align: center;
  width: 100%;
}

body main section.produtos-interna .botoes .btn-card i {
  margin-right: 5px;
}

body main section.produtos-interna .botoes .btn-card.primary {
  color: #0073bb;
  border-color: #0073bb;
  flex-basis: 50%;
}

body main section.produtos-interna .botoes .btn-card.orcamento {
  border-color: #e10109;
  color: #e10109;
  flex-basis: 100%;
}

body main section.produtos-interna .botoes .btn-card.fourth {
  color: #ffb235;
  border-color: #ffb235;
  flex-basis: 40%;
}

body main section.produtos-interna .botoes .btn-card.fourth .fa-spin {
  display: none;
}

body main section.produtos-interna .botoes .btn-card.fourth.loading .fa-shopping-cart {
  display: none;
}

body main section.produtos-interna .botoes .btn-card.fourth.loading .fa-spin {
  display: inline-block;
}

body main section.produtos-interna .botoes .btn-card.zap {
  color: #4baa2b;
  border-color: #4baa2b;
  flex-basis: 100%;
}

@media (max-width: 991px) {
  body main section.produtos-interna {
    padding: 30px 0;
  }

  body main section.produtos-interna .resumo {
    text-align: center;
    font-size: 14px;
  }

  body main section.produtos-interna .badges {
    margin-top: 10px;
  }

  body main section.produtos-interna .badges .link {
    padding: 20px;
  }

  body main section.produtos-interna .badges .link span {
    font-size: 14px;
  }

  body main section.produtos-interna .badges .link img {
    margin-right: 20px;
    width: 40px;
  }

  body main section.produtos-interna .detalhes .conteudo {
    font-size: 15px;
    padding: 0 20px;
  }

  body main section.produtos-interna .detalhes .titulo {
    font-size: 16px;
    margin: 10px 0;
  }

  body main section.produtos-interna .detalhes .titulo i {
    font-size: 20px;
  }

  body main section.produtos-interna .preco {
    margin-top: 20px;
    text-align: center;
  }

  body main section.produtos-interna .preco img {
    margin-bottom: 15px;
  }

  body main section.produtos-interna .preco .consulta {
    font-size: 22px;
  }

  body main section.produtos-interna .preco .consulta strong {
    display: inline;
  }

  body main section.produtos-interna h1 {
    font-size: 20px;
    text-align: center;
    margin-top: 0;
  }

  body main section.produtos-interna .info {
    text-align: center;
    font-size: 15px;
  }

  body main section.produtos-interna .owl-galeria-produtos img {
    height: 270px;
    padding: 20px;
  }
}

body main section.sobre-historia {
  background-image: url("../img/bg-historia.png");
  background-size: cover;
  padding: 50px 0;
  padding-top: 60px;
  margin-top: -10px;
}

body main section.sobre-historia .texto {
  line-height: 1.3;
  font-size: 17px;
}

body main section.sobre-historia .texto h1 {
  color: #0073bb;
  font-weight: 400;
  font-size: 48px;
}

body main section.sobre-historia .texto h3 {
  color: #0073bb;
  font-weight: 600;
  font-size: 24px;
  margin-bottom: 10px;
}

body main section.sobre-historia .owl-carousel {
  margin-top: 20px;
}

body main section.sobre-historia .owl-carousel .owl-nav .owl-prev {
  left: -50px;
}

body main section.sobre-historia .owl-carousel .owl-nav .owl-next {
  right: -50px;
}

body main section.sobre-historia .owl-carousel .owl-nav .owl-prev,
body main section.sobre-historia .owl-carousel .owl-nav .owl-next {
  position: absolute;
  top: 50px;
  width: 25px;
  height: 25px;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #003850;
  color: white;
  border-radius: 100%;
  font-size: 16px;
}

body main section.sobre-historia .owl-carousel img {
  height: 120px;
  object-fit: cover;
  border-top-left-radius: 20px;
}

body main section.sobre-historia .video {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 500px;
  overflow: hidden;
  border-top-left-radius: 50px;
  background-size: cover;
  background-position: center;
  position: relative;
}

body main section.sobre-historia .video.sem-fundo:before {
  display: none;
}

body main section.sobre-historia .video img {
  position: relative;
}

body main section.sobre-historia .video:before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background-color: black;
  opacity: 0.7;
}

@media (max-width: 991px) {
  body main section.sobre-historia {
    margin-top: 0;
    padding: 20px 0;
    background: white;
  }

  body main section.sobre-historia .owl-carousel img {
    height: auto;
  }

  body main section.sobre-historia .video {
    height: 250px;
  }

  body main section.sobre-historia .texto {
    font-size: 14px;
    text-align: center;
  }

  body main section.sobre-historia .texto h1 {
    font-size: 28px;
  }

  body main section.sobre-historia .texto h3 {
    font-size: 18px;
  }
}

body main section.sobre-missao {
  background-image: url("../img/bg-missao.png");
  background-size: cover;
  background-position: bottom;
  padding: 50px 0;
  text-align: center;
  font-size: 16px;
  color: white;
  line-height: 1.2;
  position: relative;
  background: #008689;
}

body main section.sobre-missao .box {
  border: 2px solid white;
  border-top-left-radius: 20px;
  padding: 40px;
  height: 100%;
}

body main section.sobre-missao img {
  margin-bottom: 20px;
}

body main section.sobre-missao h1 {
  font-weight: 500;
  font-size: 35px;
}

@media (max-width: 991px) {
  body main section.sobre-missao {
    padding: 30px 0;
    font-size: 14px;
  }

  body main section.sobre-missao .box {
    height: auto;
    padding: 30px 20px;
  }

  body main section.sobre-missao img {
    height: 40px;
    margin-bottom: 10px;
  }

  body main section.sobre-missao h1 {
    font-size: 20px;
  }
}

body main section.sobre-linha {
  padding: 60px 0;
  background-image: url("../img/bg-linha.png");
  background-size: cover;
  margin-top: -30px;
}

body main section.sobre-linha .fotos {
  position: relative;
}

body main section.sobre-linha .fotos:before {
  position: absolute;
  left: calc(50% - 1px);
  top: 0;
  height: 100%;
  width: 2px;
  content: "";
  background: linear-gradient(180deg, white 0%, #afafaf 50%, white 100%);
}

body main section.sobre-linha .titulo {
  text-align: center;
  margin-bottom: 30px;
}

body main section.sobre-linha .titulo h1 {
  font-weight: 300;
  color: #0073bb;
  margin: 10px 0;
  font-size: 48px;
}

body main section.sobre-linha .foto {
  margin-top: 70px;
}

body main section.sobre-linha .foto .in-foto {
  padding-left: 20px;
  padding-right: 50px;
}

body main section.sobre-linha .foto .bullet {
  margin-left: auto;
  transform: rotateY(180deg);
}

body main section.sobre-linha .foto.esquerda:first-child {
  margin-top: 150px;
}

body main section.sobre-linha .foto.esquerda .in-foto {
  padding-left: 0;
  padding-right: 70px;
}

body main section.sobre-linha .foto.esquerda .bullet {
  margin-left: auto;
  transform: none;
}

body main section.sobre-linha .foto h2 {
  color: #0073bb;
  font-weight: 700;
  font-size: 28px;
  margin: 0;
  margin-left: 50px;
}

body main section.sobre-linha .foto .bullet {
  margin: 5px 0 20px 0;
  display: block;
}

body main section.sobre-linha .foto span {
  color: #003850;
  display: block;
  margin-left: 30px;
  font-size: 16px;
  line-height: 1.1;
}

body main section.sobre-linha .foto .img {
  margin-left: 30px;
  width: 100%;
  height: 300px;
  object-fit: cover;
  border-top-left-radius: 60px;
  object-position: center;
  margin-bottom: 20px;
}

body main section.sobre-linha .foto:first-child {
  margin-top: 0;
}

@media (max-width: 991px) {
  body main section.sobre-linha {
    padding: 30px 0;
    margin-top: 0;
    background: linear-gradient(to bottom, #fafafa, white);
  }

  body main section.sobre-linha .foto {
    margin-top: 30px;
  }

  body main section.sobre-linha .foto h2 {
    font-size: 20px;
    margin-left: 0;
    text-align: center;
    margin-bottom: 20px;
  }

  body main section.sobre-linha .foto .img {
    margin-left: 0;
    height: 240px;
  }

  body main section.sobre-linha .foto span {
    margin-left: 0;
    font-size: 15px;
  }

  body main section.sobre-linha .foto .in-foto {
    padding: 0;
  }

  body main section.sobre-linha .foto .bullet {
    display: none;
  }

  body main section.sobre-linha .foto.esquerda:first-child {
    margin-top: 30px;
  }

  body main section.sobre-linha .foto.esquerda .in-foto {
    padding: 0;
  }

  body main section.sobre-linha .foto:first-child {
    margin-top: 30px;
  }

  body main section.sobre-linha .fotos:before {
    display: none;
  }

  body main section.sobre-linha .titulo {
    margin-bottom: 0;
  }

  body main section.sobre-linha .titulo h1 {
    margin-bottom: 0;
    font-size: 24px;
  }
}

body main section.sobre-galeria {
  padding: 50px 0;
}

body main section.sobre-galeria .owl-carousel img {
  border-top-left-radius: 30px;
  height: 200px;
  object-fit: cover;
  object-position: center;
}

body main section.sobre-galeria .owl-carousel .video {
  height: 270px;
  background-position: center;
  background-size: cover;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 3px 3px 5px rgba(0, 0, 0, 0.5);
  border-radius: 0 30px;
  position: relative;
  overflow: hidden;
}

body main section.sobre-galeria .owl-carousel .video img {
  position: relative;
  z-index: 1;
  width: auto;
  height: auto;
}

body main section.sobre-galeria .owl-carousel .video:after {
  content: "";
  position: absolute;
  background-color: black;
  opacity: 0.7;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}

body main section.sobre-galeria .owl-carousel .owl-nav:not(.disabled) .owl-prev,
body main section.sobre-galeria .owl-carousel .owl-nav:not(.disabled) .owl-next {
  margin: 0 15px;
  background-color: #003850;
  color: white;
  border-radius: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  position: absolute;
  left: -80px;
  top: calc(50% - 20px);
}

body main section.sobre-galeria .owl-carousel .owl-nav:not(.disabled) .owl-next {
  left: auto;
  right: -80px;
}

body main section.sobre-galeria .titulo {
  text-align: center;
  margin-bottom: 30px;
}

body main section.sobre-galeria .titulo h1 {
  font-weight: 600;
  color: #003850;
  margin: 10px 0;
  font-size: 36px;
}

@media (max-width: 991px) {
  body main section.sobre-galeria {
    padding: 30px 0;
  }

  body main section.sobre-galeria .owl-carousel .owl-nav:not(.disabled) {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 20px;
  }

  body main section.sobre-galeria .owl-carousel .owl-nav:not(.disabled) .owl-prev,
  body main section.sobre-galeria .owl-carousel .owl-nav:not(.disabled) .owl-next {
    position: static;
  }

  body main section.sobre-galeria .titulo h1 {
    font-size: 28px;
  }
}

body main section.catalogo-principal {
  background-image: url("../img/bg-catalogo.png");
  background-size: cover;
  padding: 50px 0;
}

body main section.catalogo-principal .main-phone {
  transform: scale(1.1);
}

body main section.catalogo-principal .box {
  padding: 30px;
  border-top-left-radius: 30px;
  border: 1px solid gainsboro;
  border-bottom: 5px solid #0073bb;
}

body main section.catalogo-principal .box h3 {
  text-align: center;
  color: #035387;
  font-weight: 600;
  font-size: 20px;
  margin-bottom: 20px;
}

body main section.catalogo-principal .box input,
body main section.catalogo-principal .box textarea {
  background-color: #f7f7f7;
  border: 1px solid gainsboro;
  border-radius: 5px;
  padding: 10px 20px;
  width: 100%;
  font-size: 16px;
  margin-bottom: 10px;
}

body main section.catalogo-principal .itens .item {
  display: flex;
  color: #0073bb;
  font-size: 26px;
  margin: 18px 0;
}

body main section.catalogo-principal .itens .item img {
  margin-right: 10px;
}

body main section.catalogo-principal .catalogo {
  width: 100%;
}

body main section.catalogo-principal h1 {
  color: #0073bb;
  font-weight: 400;
  font-size: 38px;
  margin-bottom: 20px;
}

body main section.catalogo-principal h1 strong {
  font-weight: 600;
}

@media (max-width: 991px) {
  body main section.catalogo-principal {
    padding: 20px 0;
    text-align: center;
  }

  body main section.catalogo-principal .box {
    margin-top: 20px;
    padding: 20px;
  }

  body main section.catalogo-principal .box input,
  body main section.catalogo-principal .box textarea {
    padding: 7px 13px;
    font-size: 14px;
  }

  body main section.catalogo-principal .box h3 {
    font-size: 16px;
  }

  body main section.catalogo-principal .itens {
    margin: 20px 0;
  }

  body main section.catalogo-principal .itens .item {
    font-size: 18px;
    margin: 10px 0;
    justify-content: center;
  }

  body main section.catalogo-principal .itens .item img {
    height: 20px;
  }

  body main section.catalogo-principal h1 {
    font-size: 20px;
  }

  body main section.catalogo-principal .catalogo {
    max-width: 150px;
  }

  body main section.catalogo-principal .main-phone {
    transform: none;
  }
}

body main section.catalogo-listagem {
  padding: 30px 0;
}

body main section.catalogo-listagem .catalogo {
  text-align: center;
}

body main section.catalogo-listagem .catalogo h3 {
  font-size: 25px;
  margin-bottom: 20px;
  color: #003850;
  font-weight: 600;
}

body main section.catalogo-listagem .catalogo a {
  max-width: 220px;
}

body main section.catalogo-listagem .catalogo img {
  width: 220px;
  height: 300px;
  object-fit: cover;
  object-position: center;
  margin-bottom: 20px;
}

@media (max-width: 991px) {
  body main section.catalogo-listagem {
    padding-top: 0;
  }

  body main section.catalogo-listagem .catalogo h3 {
    font-size: 20px;
    margin-top: 30px;
  }
}

body main section.depoimentos {
  padding: 30px 0 50px 0;
}

body main section.depoimentos .video {
  width: 900px;
  height: 500px;
  background-position: center;
  background-size: cover;
  margin: auto;
  display: flex;
  align-items: center;
  justify-content: center;
  border-top-left-radius: 70px;
  overflow: hidden;
  position: relative;
}

body main section.depoimentos .video .nome {
  background-color: #eeeeee;
  position: absolute;
  right: 0;
  border-top-left-radius: 40px;
  bottom: 0;
  width: 380px;
  padding: 30px;
  text-align: center;
  z-index: 3;
  font-size: 19px;
  color: dimgray;
  line-height: 1.1;
}

body main section.depoimentos .video .nome img {
  display: inline-block;
  vertical-align: middle;
  width: auto;
  height: 30px;
  margin-right: 20px;
}

body main section.depoimentos .video img {
  position: relative;
  z-index: 1;
}

body main section.depoimentos .video:after {
  content: "";
  position: absolute;
  background-color: black;
  opacity: 0.7;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}

body main section.depoimentos .titulo {
  text-align: center;
}

body main section.depoimentos .titulo h1 {
  font-weight: 400;
  color: #0073bb;
  margin: 10px 0;
  font-size: 46px;
}

body main section.depoimentos .titulo h3 {
  font-size: 20px;
  color: dimgray;
  font-weight: 400;
  max-width: 800px;
  margin: auto;
}

body main section.depoimentos .titulo h3 strong {
  color: #003850;
  font-weight: 700;
}

@media (max-width: 991px) {
  body main section.depoimentos {
    padding: 30px 0;
  }

  body main section.depoimentos .video {
    width: 100%;
    height: 350px;
  }

  body main section.depoimentos .video .nome {
    left: 0;
    right: auto;
    width: 100%;
    padding: 20px 10px;
    font-size: 15px;
    border-radius: 0;
  }

  body main section.depoimentos .video .nome img {
    display: none;
  }

  body main section.depoimentos .titulo h1 {
    font-size: 22px;
  }

  body main section.depoimentos .titulo h3 {
    font-size: 16px;
  }
}

body main section.contato {
  padding: 40px 0;
}

body main section.contato .item-check {
  margin: 5px 0;
}

body main section.contato .item-check label {
  color: gray;
  margin: 0;
  display: inline;
  vertical-align: middle;
}

body main section.contato .item-check input {
  width: 15px;
  height: 15px;
  accent-color: #0073bb;
  box-shadow: none;
  margin: 0;
  vertical-align: middle;
  margin-right: 7px;
}

body main section.contato .titulo {
  color: dimgray;
  font-size: 19px;
  line-height: 1.1;
  max-width: 500px;
}

body main section.contato .titulo h1 {
  color: #0073bb;
  font-size: 32px;
  font-weight: 700;
}

body main section.contato .box-file .text {
  font-size: 14px;
  margin-top: -10px;
  margin-bottom: 10px;
  display: block;
  font-weight: 500;
  color: black;
}

body main section.contato .box-file .flex-box {
  display: flex;
  margin-top: 5px;
  cursor: pointer;
}

body main section.contato .box-file .flex-box .name-file {
  border: 1px solid #dfdfdf;
  padding: 10px 15px;
  font-size: 18px;
  font-weight: 500;
  border-radius: 5px;
  color: #565656;
  outline: none;
  min-height: 49px;
  background-color: #f7f7f7;
  width: 100%;
}

body main section.contato .box-file .flex-box .selecionar {
  padding: 10px 15px;
  font-size: 18px;
  color: white;
  background-color: #0073bb;
  border-radius: 5px;
  margin-left: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
}

body main section.contato form label {
  display: block;
  margin-top: 15px;
  margin-bottom: 5px;
  font-size: 17px;
  font-weight: 500;
  color: #0073bb;
}

body main section.contato form input,
body main section.contato form select,
body main section.contato form textarea {
  width: 100%;
  padding: 10px 25px;
  font-size: 18px;
  outline: none;
  background-color: #fafafa;
  border-radius: 5px;
  border: 1px solid gainsboro;
  box-shadow: 1px 5px 5px rgba(238, 238, 238, 0.5);
}

body main section.contato form textarea {
  min-height: 100px;
  resize: vertical;
}

@media (max-width: 991px) {
  body main section.contato {
    padding: 30px 0;
  }

  body main section.contato .titulo {
    font-size: 16px;
    text-align: center;
  }

  body main section.contato .titulo h1 {
    font-size: 24px;
  }

  body main section.contato form label {
    font-size: 16px;
  }

  body main section.contato form input,
  body main section.contato form select,
  body main section.contato form textarea {
    font-size: 15px;
    padding: 10px;
  }
}

body main section.duvidas {
  padding: 50px 0;
}

body main section.duvidas h2 {
  color: #0073bb;
  font-size: 26px;
  font-weight: 600;
  margin-bottom: 20px;
}

body main section.duvidas .categorias {
  padding-left: 20px;
}

body main section.duvidas .categorias .cat {
  display: block;
  color: gray;
  margin: 5px 0;
  font-size: 16px;
}

body main section.duvidas .categorias .cat i {
  color: #ffb235;
  font-size: 13px;
  vertical-align: middle;
}

body main section.duvidas .listagem .duvida {
  margin-bottom: 20px;
}

body main section.duvidas .listagem .duvida .titulo {
  color: #003850;
  font-weight: 600;
  display: block;
  padding: 15px 0;
  font-size: 18px;
  border-top: 1px solid lightgray;
  border-bottom: 1px solid lightgray;
}

body main section.duvidas .listagem .duvida .titulo i {
  color: #ffb235;
  margin-right: 10px;
  font-size: 24px;
  vertical-align: middle;
}

body main section.duvidas .listagem .duvida .resposta .in-resposta {
  color: gray;
  font-size: 15px;
  padding: 20px;
  padding-bottom: 10px;
}

body main section.duvidas .duvidas-box {
  background-color: #003850;
  color: white;
  padding: 30px 40px;
  text-align: center;
  border-top-left-radius: 20px;
  font-size: 16px;
  line-height: 1.2;
  top: 70px;
}

body main section.duvidas .duvidas-box form {
  margin-top: 20px;
}

body main section.duvidas .duvidas-box form input,
body main section.duvidas .duvidas-box form textarea {
  font-size: 16px;
  padding: 10px 20px;
  border: 1px solid lightgray;
  border-radius: 6px;
  width: 100%;
  margin: 5px 0;
  outline: none;
}

body main section.duvidas .duvidas-box form .main-cta {
  color: white;
}

body main section.duvidas .duvidas-box form textarea {
  resize: none;
  height: 100px;
  outline: none;
}

body main section.duvidas .duvidas-box h2 {
  font-weight: 600;
  font-size: 28px;
  color: #4fe3e5;
  margin: auto;
  margin-bottom: 15px;
}

body main section.duvidas .duvidas-box h2 i {
  color: white;
  display: block;
  font-size: 56px;
  margin-bottom: 20px;
}

@media (max-width: 991px) {
  body main section.duvidas {
    padding: 20px 0;
  }

  body main section.duvidas .duvidas-box {
    padding: 20px;
    margin-top: 20px;
  }

  body main section.duvidas .duvidas-box form {
    margin-top: 20px;
  }

  body main section.duvidas .duvidas-box form input,
  body main section.duvidas .duvidas-box form textarea {
    font-size: 15px;
  }

  body main section.duvidas .duvidas-box h2 {
    font-size: 22px;
    margin-bottom: 0;
  }

  body main section.duvidas h2 {
    font-size: 20px;
  }

  body main section.duvidas .listagem .duvida .titulo {
    font-size: 16px;
    padding: 10px 0;
  }

  body main section.duvidas .listagem .duvida .resposta .in-resposta {
    padding: 15px;
  }
}

body main section.carrinho {
  padding: 50px 0;
}

@media screen and (max-width: 991px) {
  body main section.carrinho {
    padding: 20px 0;
  }
}

body main section.carrinho .continuar {
  color: gray;
  border-bottom: 1px dotted gray;
  display: inline-block;
  font-weight: 600;
}

body main section.carrinho .container {
  max-width: 1300px;
}

body main section.carrinho .remover .loader {
  display: none;
}

body main section.carrinho .remover.loading i {
  display: none;
}

body main section.carrinho .remover.loading .loader {
  color: gray;
  display: inline-block;
}

body main section.carrinho .passos {
  max-width: 1500px;
  margin: auto;
  width: 100%;
  display: flex;
  justify-content: space-between;
  overflow: hidden;
  border-top-left-radius: 30px;
}

body main section.carrinho .passos a {
  background-color: #eeeeee;
  display: flex;
  padding: 20px;
  width: 33%;
  flex-grow: 1;
  align-items: center;
  justify-content: center;
  font-size: 20px;
  font-weight: 500;
  color: #afafaf;
  position: relative;
}

body main section.carrinho .passos a:hover {
  color: #afafaf;
}

body main section.carrinho .passos a:last-child:after {
  display: none;
}

body main section.carrinho .passos a:after {
  content: "";
  position: absolute;
  right: 0;
  top: 0;
  height: 100%;
  width: 20px;
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
  background-image: url("../img/chevron.png");
}

body main section.carrinho .passos a strong {
  font-weight: 600;
  border: 2px solid #afafaf;
  border-top-left-radius: 20px;
  width: 50px;
  height: 50px;
  margin-right: 15px;
  display: flex;
  align-items: center;
  justify-content: center;
}

body main section.carrinho .passos a.ativo {
  color: #0073bb;
}

body main section.carrinho .passos a.ativo:hover {
  color: #0073bb;
}

body main section.carrinho .passos a.ativo strong {
  color: #0073bb;
  border-color: #0073bb;
}

@media (max-width: 991px) {
  body main section.carrinho .passos a {
    width: 50px;
    text-align: center;
    font-size: 16px;
  }

  body main section.carrinho .passos a:after {
    display: none;
  }
}

body main section.carrinho .carrinho-mobile {
  margin-top: 20px;
  border-top: 1px solid #dcdcdc4d;
}

body main section.carrinho .carrinho-mobile .opcoes-produto {
  color: gray;
  font-size: 14px;
  margin-bottom: 10px;
}

body main section.carrinho .carrinho-mobile .opcoes-produto strong {
  color: gray;
}

body main section.carrinho .carrinho-mobile .produto {
  border-bottom: 1px solid #dcdcdc4d;
  display: flex;
  margin: 0;
  padding: 20px 0;
  align-items: flex-start;
}

body main section.carrinho .carrinho-mobile .produto strong {
  color: black;
}

body main section.carrinho .carrinho-mobile .produto img {
  height: 100%;
  width: 100%;
  object-fit: contain;
}

body main section.carrinho .carrinho-mobile .removerMobile {
  color: #0073bb;
  font-size: 14px;
  display: block;
  text-align: center;
}

body main section.carrinho .carrinho-mobile .removerMobile .loader {
  display: none;
}

body main section.carrinho .carrinho-mobile .removerMobile.loading span {
  display: none;
}

body main section.carrinho .carrinho-mobile .removerMobile.loading .loader {
  color: gray;
  display: inline-block;
}

body main section.carrinho .carrinho-mobile .titulo {
  color: #0073bb;
}

body main section.carrinho .carrinho-mobile .quantidade {
  font-size: 14px;
  color: dimgray;
  display: inline-block;
  width: 110px;
  padding: 5px 10px;
  margin-left: 5px;
  outline: none;
  border: none;
  border-radius: 5px;
  background-color: #ececec;
  position: relative;
}

body main section.carrinho .carrinho-mobile .quantidade input {
  background-color: transparent;
  border: none;
  color: inherit;
  width: 60%;
  outline: none;
}

body main section.carrinho .carrinho-mobile .quantidade.loading .opcoes {
  display: none;
}

body main section.carrinho .carrinho-mobile .quantidade.loading .qtd-loading {
  display: block;
}

body main section.carrinho .carrinho-mobile .quantidade .qtd-loading {
  display: none;
  position: absolute;
  top: calc(50% - 11px);
  right: 8px;
}

body main section.carrinho .carrinho-mobile .quantidade .qtd-loading i {
  color: dimgray;
  font-size: 16px;
  cursor: default;
}

body main section.carrinho .carrinho-mobile .quantidade .aumentar {
  position: absolute;
  top: 7px;
  right: 30px;
  cursor: pointer;
}

body main section.carrinho .carrinho-mobile .quantidade .aumentar i {
  color: dimgray;
  font-size: 16px;
}

body main section.carrinho .carrinho-mobile .quantidade .diminuir {
  position: absolute;
  bottom: 3px;
  right: 10px;
  cursor: pointer;
}

body main section.carrinho .carrinho-mobile .quantidade .diminuir i {
  color: dimgray;
  font-size: 16px;
}

body main section.carrinho .empty {
  margin-top: 50px;
  text-align: center;
  font-size: 22px;
  font-weight: 300;
  color: dimgray;
  font-style: italic;
}

@media (max-width: 991px) {
  body main section.carrinho .empty {
    margin-top: 20px;
    font-size: 18px;
  }
}

body main section.carrinho .tabela-carrinho {
  width: 100%;
  max-width: 1000px;
  margin: 70px auto 0 auto;
}

body main section.carrinho .tabela-carrinho thead tr {
  overflow: hidden;
}

body main section.carrinho .tabela-carrinho thead td {
  background-color: #0073bb;
  color: white;
  padding: 15px 30px;
  font-size: 18px;
  font-weight: 500;
  border: 1px solid #3a3a3a4d;
}

body main section.carrinho .tabela-carrinho thead td:first-child {
  border-left: none;
}

body main section.carrinho .tabela-carrinho thead td:last-child {
  border-right: none;
}

body main section.carrinho .tabela-carrinho tbody td {
  padding: 30px 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #dcdcdc4d;
}

body main section.carrinho .tabela-carrinho tbody td:first-child {
  border-left: none;
}

body main section.carrinho .tabela-carrinho tbody td:last-child {
  border-right: none;
}

body main section.carrinho .tabela-carrinho .quantidade {
  font-size: 22px;
  max-width: 180px;
  color: gray;
  padding: 15px 25px;
  outline: none;
  border: none;
  border-radius: 10px;
  background-color: #ececec;
  position: relative;
  min-width: 150px;
}

body main section.carrinho .tabela-carrinho .quantidade input {
  background-color: transparent;
  border: none;
  color: inherit;
  width: 80%;
  outline: none;
}

body main section.carrinho .tabela-carrinho .quantidade.loading .opcoes {
  display: none;
}

body main section.carrinho .tabela-carrinho .quantidade.loading .qtd-loading {
  display: block;
}

body main section.carrinho .tabela-carrinho .quantidade .qtd-loading {
  display: none;
  position: absolute;
  top: calc(50% - 18px);
  right: 20px;
}

body main section.carrinho .tabela-carrinho .quantidade .qtd-loading i {
  color: dimgray;
  cursor: default;
  font-size: 16px;
}

body main section.carrinho .tabela-carrinho .quantidade .aumentar {
  position: absolute;
  top: 3px;
  right: 20px;
  cursor: pointer;
}

body main section.carrinho .tabela-carrinho .quantidade .aumentar i {
  color: gray;
  font-size: 16px;
}

body main section.carrinho .tabela-carrinho .quantidade .diminuir {
  position: absolute;
  bottom: 3px;
  right: 20px;
  cursor: pointer;
}

body main section.carrinho .tabela-carrinho .quantidade .diminuir i {
  color: gray;
  font-size: 16px;
}

body main section.carrinho .tabela-carrinho td strong {
  font-weight: 400;
  color: #0073bb;
  font-size: 24px;
}

body main section.carrinho .tabela-carrinho td i {
  color: red;
  font-size: 22px;
  cursor: pointer;
}

body main section.carrinho .tabela-carrinho td .produto {
  width: 100%;
  display: flex;
  align-items: center;
}

body main section.carrinho .tabela-carrinho td .produto .opcoes-produto {
  color: gray;
  font-size: 15px;
}

body main section.carrinho .tabela-carrinho td .produto .opcoes-produto strong {
  font-weight: 700;
  color: inherit;
  font-size: inherit;
}

body main section.carrinho .tabela-carrinho td .produto h5 {
  font-weight: 600;
  text-transform: uppercase;
  color: dimgray;
  font-size: 17px;
  margin-bottom: 0;
}

body main section.carrinho .tabela-carrinho td .produto img {
  width: 100px;
  flex: 0 0 100px;
  max-width: 100px;
}

body main section.carrinho .box {
  margin: 70px auto 0 auto;
}

body main section.carrinho .box .endereco {
  font-size: 18px;
  color: #0073bb;
  line-height: 20px;
}

body main section.carrinho .box .endereco strong {
  font-size: 20px;
  display: block;
  margin-bottom: 8px;
  font-weight: 600;
}

body main section.carrinho .box .main-cta {
  background-color: #0073bb;
  color: white;
  display: inline-block;
  padding: 13px 23px;
  font-size: 17px;
  border-radius: 5px;
}

body main section.carrinho .box .main-cta img {
  vertical-align: middle;
  margin-right: 6px;
  margin-bottom: 2px;
}

@media (max-width: 991px) {
  body main section.carrinho .box {
    margin-top: 20px;
    padding: 0;
  }

  body main section.carrinho .box .main-cta {
    margin-top: 15px;
  }

  body main section.carrinho .box .endereco {
    text-align: center;
    font-weight: 300;
    font-size: 15px;
  }

  body main section.carrinho .box .endereco strong {
    font-size: 18px;
  }
}

body main section.carrinho .enviado {
  max-width: 800px;
  margin: 60px auto 0 auto;
  color: #0073bb;
  text-align: center;
  font-weight: 400;
  font-size: 20px;
}

body main section.carrinho .enviado .texto {
  color: white;
  text-align: left;
  line-height: 1.4;
  background-color: #3aa700;
  padding: 30px 70px;
  border-radius: 7px;
  font-weight: 300;
  margin-top: 30px;
}

body main section.carrinho .enviado h1 {
  color: #3aa700;
  font-size: 39px;
  font-weight: 500;
  margin: auto;
  text-align: center;
}

body main section.carrinho .enviado h5 {
  text-align: center;
  color: gray;
  margin-bottom: 20px;
}

@media (max-width: 991px) {
  body main section.carrinho .enviado {
    font-size: 16px;
    margin-top: 20px;
    padding-bottom: 30px;
  }

  body main section.carrinho .enviado .texto {
    padding: 20px;
  }

  body main section.carrinho .enviado h5 {
    font-size: 18px;
  }

  body main section.carrinho .enviado h1 {
    font-size: 20px;
  }
}

body main section.carrinho .form {
  max-width: 750px;
  margin: 20px auto 0 auto;
  padding: 50px 60px;
  padding-bottom: 0;
}

body main section.carrinho .form .main-cta {
  margin-top: 20px;
}

body main section.carrinho .form h1 {
  font-size: 30px;
  color: #585858;
  font-weight: 700;
  text-align: center;
}

body main section.carrinho .form h5 {
  text-align: center;
  color: gray;
  margin-bottom: 30px;
}

body main section.carrinho .form h6 {
  text-align: center;
  margin-bottom: 20px;
  font-weight: 300;
  font-size: 18px;
}

body main section.carrinho .form label {
  color: black;
  display: block;
  font-weight: 600;
  margin-top: 15px;
  margin-bottom: 5px;
  font-size: 17px;
}

body main section.carrinho .form input,
body main section.carrinho .form select,
body main section.carrinho .form textarea {
  width: 100%;
  padding: 10px 25px;
  font-size: 18px;
  outline: none;
  background-color: white;
  border: 1px solid gainsboro;
}

body main section.carrinho .form select {
  padding-top: 12px;
  padding-bottom: 12px;
}

body main section.carrinho .form textarea {
  min-height: 100px;
  resize: vertical;
}

@media (max-width: 991px) {
  body main section.carrinho .form {
    padding: 20px;
    margin-top: 0;
  }

  body main section.carrinho .form h1 {
    font-size: 20px;
  }

  body main section.carrinho .form h5 {
    font-size: 16px;
  }

  body main section.carrinho .form h6 {
    font-size: 15px;
  }

  body main section.carrinho .form label {
    font-size: 16px;
  }

  body main section.carrinho .form input,
  body main section.carrinho .form select,
  body main section.carrinho .form textarea {
    font-size: 15px;
    padding: 10px;
  }
}

body main section.trabalhe-principal {
  padding-bottom: 50px;
}

body main section.trabalhe-principal .titulo-principal {
  text-align: center;
  font-size: 32px;
  font-weight: 600;
  color: #0073bb;
  line-height: 1.1;
  margin-bottom: 40px;
}

body main section.trabalhe-principal .titulo-principal strong {
  font-weight: 600;
  display: block;
  color: #ffb235;
}

body main section.trabalhe-principal .chamada {
  padding: 30px 0 20px 0;
  text-align: center;
}

body main section.trabalhe-principal .chamada .txt-in {
  max-width: 900px;
  margin: auto;
  line-height: 1.1;
  font-size: 19px;
  color: dimgray;
}

body main section.trabalhe-principal .chamada .txt-in h1 {
  font-size: 32px;
  font-weight: 600;
  color: #0073bb;
  margin-bottom: 20px;
}

body main section.trabalhe-principal .vagas {
  background: white;
  box-shadow: -2px -1px 6px 1px rgba(0, 0, 0, 0.1);
  padding: 30px 40px;
  margin-bottom: 40px;
}

body main section.trabalhe-principal .vagas h1 {
  color: #003850;
  font-weight: 600;
  font-size: 20px;
  margin-bottom: 20px;
}

body main section.trabalhe-principal .vagas .lista-vagas {
  text-align: left;
  color: #666666;
  font-size: 16px;
  overflow-y: scroll;
  height: 350px;
}

body main section.trabalhe-principal .vagas .lista-vagas::-webkit-scrollbar {
  width: 10px;
  background-color: #ececec;
}

body main section.trabalhe-principal .vagas .lista-vagas::-webkit-scrollbar-thumb {
  border-radius: 10px;
  background: #003850;
  -webkit-transition: all 0.2s;
  -moz-transition: all 0.2s;
  -ms-transition: all 0.2s;
  -o-transition: all 0.2s;
  transition: all 0.2s;
}

body main section.trabalhe-principal .vagas .lista-vagas::-webkit-scrollbar-thumb:hover {
  background: gray;
}

body main section.trabalhe-principal .vagas .lista-vagas hr {
  width: 100%;
  max-width: none;
  height: 1px;
  margin: 20px auto;
}

body main section.trabalhe-principal .vagas .lista-vagas hr:last-child {
  display: none;
}

body main section.trabalhe-principal .vagas .lista-vagas h4 {
  color: #0073bb;
  margin-bottom: 0;
  font-size: 18px;
  font-weight: 600;
}

body main section.trabalhe-principal .vagas .lista-vagas .itens {
  margin-top: 10px;
  font-size: 16px;
  font-weight: 600;
}

body main section.trabalhe-principal .vagas .lista-vagas .itens i {
  color: #4baa2b;
  margin-right: 5px;
  font-weight: 500;
}

body main section.trabalhe-principal .vagas .lista-vagas .itens i:last-child {
  margin-left: 10px;
}

body main section.trabalhe-principal form .box-file .text {
  font-size: 14px;
  margin-top: -10px;
  margin-bottom: 10px;
  display: block;
  font-weight: 500;
  color: black;
}

body main section.trabalhe-principal form .box-file .flex-box {
  display: flex;
  margin-top: 5px;
  cursor: pointer;
}

body main section.trabalhe-principal form .box-file .flex-box .name-file {
  border: 1px solid #dfdfdf;
  padding: 10px 15px;
  font-size: 18px;
  font-weight: 500;
  color: #565656;
  outline: none;
  min-height: 49px;
  background-color: #f7f7f7;
  width: 100%;
}

body main section.trabalhe-principal form .box-file .flex-box .selecionar {
  padding: 10px 15px;
  font-size: 18px;
  color: white;
  background-color: #0073bb;
  border-radius: 5px;
  margin-left: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
}

body main section.trabalhe-principal form label {
  display: block;
  margin-top: 15px;
  margin-bottom: 5px;
  font-size: 17px;
  font-weight: 500;
  color: #0073bb;
}

body main section.trabalhe-principal form input,
body main section.trabalhe-principal form select,
body main section.trabalhe-principal form textarea {
  width: 100%;
  padding: 10px 25px;
  font-size: 18px;
  outline: none;
  background-color: #fafafa;
  border-radius: 5px;
  border: 1px solid gainsboro;
  box-shadow: 1px 5px 5px rgba(238, 238, 238, 0.5);
}

body main section.trabalhe-principal form select {
  padding-top: 12px;
  padding-bottom: 12px;
}

body main section.trabalhe-principal form textarea {
  min-height: 100px;
  resize: vertical;
}

@media (max-width: 991px) {
  body main section.trabalhe-principal {
    padding: 20px 10px;
  }

  body main section.trabalhe-principal .titulo-principal {
    font-size: 20px;
  }

  body main section.trabalhe-principal .vagas h1 {
    font-size: 18px;
  }

  body main section.trabalhe-principal h1 {
    font-size: 22px;
  }

  body main section.trabalhe-principal h3 {
    font-size: 16px;
  }

  body main section.trabalhe-principal .chamada {
    padding-bottom: 20px;
    padding-top: 0;
  }

  body main section.trabalhe-principal .chamada .txt-in {
    font-size: 16px;
  }

  body main section.trabalhe-principal .chamada .txt-in h1 {
    font-size: 20px;
  }

  body main section.trabalhe-principal .chamada .txt-in h3 {
    font-size: 16px;
  }

  body main section.trabalhe-principal form .box-file .text {
    font-size: 12px;
  }

  body main section.trabalhe-principal form .box-file .flex-box .name-file {
    padding: 10px;
    font-size: 12px;
  }

  body main section.trabalhe-principal form .box-file .flex-box .selecionar {
    font-size: 13px;
  }

  body main section.trabalhe-principal form label {
    font-size: 16px;
  }

  body main section.trabalhe-principal form input,
  body main section.trabalhe-principal form select,
  body main section.trabalhe-principal form textarea {
    font-size: 15px;
    padding: 10px;
  }

  body main section.trabalhe-principal form button {
    margin-bottom: 30px !important;
  }

  body main section.trabalhe-principal .vagas {
    padding: 20px;
    margin-bottom: 20px;
  }

  body main section.trabalhe-principal .vagas .btn-selecione {
    font-size: 12px;
    margin-top: 20px;
  }

  body main section.trabalhe-principal .vagas .chamada-principal {
    font-size: 16px;
    margin-bottom: 20px;
  }

  body main section.trabalhe-principal .vagas .lista-vagas {
    font-size: 14px;
    height: 180px;
  }

  body main section.trabalhe-principal .vagas .lista-vagas .itens {
    font-size: 14px;
  }

  body main section.trabalhe-principal .vagas .lista-vagas h4 {
    font-size: 17px;
  }
}

body main section.trabalhe-vantagens {
  background: #fafafa;
  margin-bottom: -20px;
  background-size: cover;
  padding: 40px 0 70px 0;
  position: relative;
}

body main section.trabalhe-vantagens:after {
  content: url("../img/separador2.png");
  position: absolute;
  top: -17px;
  left: calc(50% - 500px);
  z-index: 1;
}

@media (max-width: 991px) {
  body main section.trabalhe-vantagens {
    border-top: 1px solid lightgray;
  }

  body main section.trabalhe-vantagens:after {
    display: none;
  }
}

body main section.trabalhe-vantagens .item {
  display: flex;
  align-items: flex-start;
  margin-top: 30px;
  font-size: 17px;
  line-height: 1.3;
}

body main section.trabalhe-vantagens .item h4 {
  font-weight: 700;
  font-size: 22px;
  color: #0073bb;
}

body main section.trabalhe-vantagens .item .img {
  width: 250px;
  height: 300px;
  object-fit: cover;
  object-position: center;
  margin-right: 30px;
  border-top-left-radius: 30px;
}

body main section.trabalhe-vantagens .titulo {
  text-align: center;
}

body main section.trabalhe-vantagens .titulo img {
  margin-bottom: 10px;
}

body main section.trabalhe-vantagens .titulo h1 {
  color: #0073bb;
  font-weight: 500;
  font-size: 36px;
  margin-bottom: 20px;
}

body main section.trabalhe-vantagens .titulo h1 strong {
  display: block;
  color: #ffb235;
  font-weight: 500;
}

@media (max-width: 991px) {
  body main section.trabalhe-vantagens {
    background: #fafafa;
    padding: 30px 0;
    margin: 0;
  }

  body main section.trabalhe-vantagens .item {
    font-size: 15px;
    flex-flow: column;
    align-items: stretch;
  }

  body main section.trabalhe-vantagens .item h4 {
    font-size: 18px;
  }

  body main section.trabalhe-vantagens .item .img {
    margin-right: 0;
    height: 200px;
    margin-bottom: 20px;
    width: 100%;
  }

  body main section.trabalhe-vantagens .titulo {
    margin-bottom: 0;
  }

  body main section.trabalhe-vantagens .titulo h1 {
    margin-bottom: 0;
    font-size: 24px;
  }
}

body main section.blog-listagem {
  padding: 50px 0;
}

body main section.blog-listagem .destaque {
  display: block;
  margin-bottom: 20px;
  padding: 30px;
  background-size: cover;
  position: relative;
  background-position: right;
  border-top-left-radius: 20px;
  overflow: hidden;
  box-shadow: 2px 2px 4px 5px rgba(0, 0, 0, 0.05);
}

body main section.blog-listagem .destaque:after {
  position: absolute;
  top: 0;
  width: 100%;
  height: 100%;
  left: 0;
  background: linear-gradient(90deg, #0073bb 0%, rgba(0, 115, 187, 0) 100%);
  content: "";
}

body main section.blog-listagem .destaque .texto {
  max-width: 350px;
  z-index: 2;
  position: relative;
  color: white;
}

body main section.blog-listagem .destaque .texto .link {
  color: #003850;
  font-size: 17px;
  font-weight: 600;
  margin-top: 15px;
  display: block;
}

body main section.blog-listagem .destaque .texto .resumo {
  font-size: 14px;
  line-height: 1.3;
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 5;
  -webkit-box-orient: vertical;
  text-overflow: ellipsis;
  height: "";
}

body main section.blog-listagem .destaque .texto h3 {
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  text-overflow: ellipsis;
  height: "";
  font-size: 24px;
  font-weight: 600;
}

body main section.blog-listagem .titulo-cat {
  color: #0073bb;
  font-size: 28px;
  font-weight: 500;
  margin-top: 30px;
  margin-bottom: -15px;
}

body main section.blog-listagem .notfound {
  color: dimgray;
  text-align: center;
  font-style: italic;
}

body main section.blog-listagem .lateral .sep {
  width: 100%;
  transform: rotateY(180deg);
  margin-bottom: 30px;
  margin-top: 20px;
}

body main section.blog-listagem .lateral .texto {
  line-height: 1.2;
}

body main section.blog-listagem .lateral .texto p:last-child {
  margin-bottom: 0;
}

body main section.blog-listagem .lateral .texto img {
  margin-bottom: 10px;
}

body main section.blog-listagem .lateral .texto h1 {
  color: #0073bb;
  font-size: 32px;
  font-weight: 600;
}

body main section.blog-listagem .lateral .texto h3 {
  margin-bottom: 30px;
  font-size: 18px;
  font-weight: 400;
}

body main section.blog-listagem .lateral .busca form {
  position: relative;
  margin-bottom: 30px;
  margin-right: 40px;
}

body main section.blog-listagem .lateral .busca form input {
  background-color: white;
  color: gray;
  border-radius: 5px;
  outline: none;
  border: 1px solid gainsboro;
  font-size: 16px;
  padding: 7px 15px;
  width: 100%;
}

body main section.blog-listagem .lateral .busca form button {
  position: absolute;
  color: #003850;
  right: 10px;
  top: 6px;
  background-color: transparent;
  border: none;
  outline: none;
}

body main section.blog-listagem .lateral h2 {
  color: #0073bb;
  font-size: 26px;
  font-weight: 600;
  margin-bottom: 20px;
}

body main section.blog-listagem .lateral .categorias {
  padding-left: 20px;
}

body main section.blog-listagem .lateral .categorias .cat {
  display: block;
  color: gray;
  margin: 5px 0;
  font-size: 16px;
}

body main section.blog-listagem .lateral .categorias .cat i {
  color: #ffb235;
  font-size: 13px;
  vertical-align: middle;
}

body main section.blog-listagem .listagem .posts {
  position: relative;
}

body main section.blog-listagem .listagem .posts:after {
  content: "";
  background-color: gainsboro;
  width: 2px;
  height: calc(100% - 30px);
  position: absolute;
  right: -30px;
  bottom: 0;
}

body main section.blog-listagem .listagem .posts:before {
  content: "";
  background-color: gainsboro;
  width: 2px;
  height: calc(100% - 30px);
  position: absolute;
  left: -30px;
  bottom: 0;
}

body main section.blog-listagem .listagem .post {
  display: block;
  margin-top: 30px;
}

body main section.blog-listagem .listagem .post .resumo {
  line-height: 1.1;
  color: #003850;
  font-size: 17px;
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  text-overflow: ellipsis;
  height: 76px;
}

body main section.blog-listagem .listagem .post img {
  width: 100%;
  height: 200px;
  border-radius: 10px;
}

body main section.blog-listagem .listagem .post h4 {
  color: #003850;
  margin-top: 20px;
  font-size: 20px;
  font-weight: 600;
  margin-bottom: 10px;
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  text-overflow: ellipsis;
  height: 72px;
}

@media (max-width: 991px) {
  body main section.blog-listagem {
    padding: 30px 0;
  }

  body main section.blog-listagem .destaque {
    display: none;
  }

  body main section.blog-listagem .listagem .posts:after,
  body main section.blog-listagem .listagem .posts::before {
    display: none;
  }

  body main section.blog-listagem .listagem .post .resumo {
    font-size: 15px;
    height: auto;
  }

  body main section.blog-listagem .listagem .post h4 {
    height: auto;
    margin-top: 10px;
    font-size: 16px;
  }

  body main section.blog-listagem .lateral .sep,
  body main section.blog-listagem .lateral .busca,
  body main section.blog-listagem .lateral .categorias {
    display: none;
  }

  body main section.blog-listagem .lateral .texto {
    text-align: center;
    font-size: 15px;
  }

  body main section.blog-listagem .lateral .texto h3 {
    font-size: 15px;
    margin-bottom: 20px;
  }

  body main section.blog-listagem .lateral .texto h1 {
    font-size: 20px;
  }
}

body main section.blog-interna {
  font-size: 18px;
  line-height: 1.4;
  font-weight: 400;
}

body main section.blog-interna h1,
body main section.blog-interna h2,
body main section.blog-interna h3,
body main section.blog-interna h4 {
  font-weight: 600;
}

body main section.blog-interna h1.titulo-blog,
body main section.blog-interna h2.titulo-blog,
body main section.blog-interna h3.titulo-blog,
body main section.blog-interna h4.titulo-blog {
  font-weight: 700;
  color: #4e4e4e;
}

body main section.blog-interna .texto a {
  color: #0073bb;
  text-decoration: underline;
}

body main section.blog-interna img {
  width: 100%;
  margin: 20px 0;
}

body main section.blog-interna .compartilhe {
  border-bottom: 1px solid gainsboro;
  padding-bottom: 10px;
  color: dimgray;
  margin-bottom: 30px;
}

@media (max-width: 991px) {
  body main section.blog-interna {
    font-size: 16px;
    padding: 0;
  }

  body main section.blog-interna .titulo-blog {
    font-size: 22px;
  }
}

body footer section.barra-fixa {
  position: fixed;
  bottom: 0;
  background-color: white;
  border-top: 2px solid #0073bb;
  width: 100%;
  padding: 10px 80px;
  z-index: 600;
  -webkit-transition: all 0.5s;
  -moz-transition: all 0.5s;
  -ms-transition: all 0.5s;
  -o-transition: all 0.5s;
  transition: all 0.5s;
}

@media (max-width: 991px) {
  body footer section.barra-fixa {
    display: none;
  }
}

body footer section.barra-fixa.oculta {
  bottom: -100px;
}

body footer section.barra-fixa-mobile {
  background-color: #0073bb;
  position: fixed;
  bottom: 0px;
  left: 0px;
  width: 100%;
  z-index: 999;
  padding: 5px 0;
  border-top: 2px solid white;
  transition: 0.3s all;
}

body footer section.barra-fixa-mobile .list-itens {
  display: flex;
  justify-content: space-around;
  font-size: 30px;
}

body footer section.barra-fixa-mobile .list-itens a {
  color: white;
}

body footer section.barra-fixa-mobile .list-itens a i {
  color: white;
}

@media screen and (min-width: 992px) {
  body footer section.barra-fixa-mobile {
    display: none;
  }
}

body footer section.footer-mapa {
  height: 500px;
  position: relative;
  z-index: 5;
}

body footer section.footer-mapa iframe {
  width: 100%;
  height: 100%;
}

@media (max-width: 991px) {
  body footer section.footer-mapa {
    height: 300px;
  }

  body footer section.footer-mapa.home {
    margin-top: 0;
  }
}

body footer section.footer {
  background-image: url("../img/bg-footer.png");
  color: white;
  background-size: cover;
  padding: 50px 0 30px 0;
}

body footer section.footer .principal {
  padding-top: 50px;
}

body footer section.footer .principal .endereco {
  font-size: 18px;
}

body footer section.footer .principal .certificados a {
  color: white;
}

body footer section.footer .principal .certificados img {
  margin-right: 10px;
  height: 50px;
  filter: grayscale(1) brightness(100);
}

body footer section.footer .principal a.main-cta .txt {
  color: white;
}

body footer section.footer .principal .menu {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

body footer section.footer .principal .menu a {
  font-size: 19px;
  font-weight: 600;
  text-transform: uppercase;
  color: white;
}

body footer section.footer .principal .logo {
  width: 100%;
}

body footer section.footer .news {
  border-bottom: 1px solid rgba(0, 115, 187, 0.5);
  padding-bottom: 50px;
}

body footer section.footer .news .social a {
  font-size: 18px;
  color: white;
  margin: 0 10px;
}

body footer section.footer .news .main-phone {
  transform: scale(1.1);
}

body footer section.footer .news .main-phone .icon {
  color: white;
}

body footer section.footer .news .main-phone .text {
  color: white;
}

body footer section.footer .news form {
  display: flex;
  align-items: center;
}

body footer section.footer .news form input {
  flex: 1;
  background-color: #144370;
  font-size: 17px;
  outline: none;
  padding: 10px 20px;
  border: none;
}

body footer section.footer .news form button {
  max-width: 200px;
  margin-left: 20px;
  color: white;
  border-color: white;
}

body footer section.footer .news form button .icon {
  background: white;
  color: #003850;
}

body footer section.footer .news .titulo {
  display: flex;
  align-items: center;
  line-height: 1.1;
}

body footer section.footer .news .titulo h3 {
  color: #00c7c4;
  font-weight: 700;
  font-size: 28px;
  margin-bottom: 0;
}

body footer section.footer .news .titulo img {
  margin-right: 20px;
}

@media (max-width: 991px) {
  body footer section.footer {
    padding: 20px 0;
  }

  body footer section.footer .principal {
    padding-top: 20px;
  }

  body footer section.footer .principal .endereco {
    font-size: 15px;
  }

  body footer section.footer .principal .item {
    display: block;
  }

  body footer section.footer .principal .certificados a {
    display: block;
    font-size: 15px;
    margin: 10px 0;
  }

  body footer section.footer .principal .certificados img {
    height: 20px;
  }

  body footer section.footer .principal .menu {
    display: none;
  }

  body footer section.footer .principal .logo {
    width: 150px;
  }

  body footer section.footer .news {
    padding-bottom: 20px;
  }

  body footer section.footer .news .row-flex {
    flex-wrap: wrap;
    margin-top: 10px;
    justify-content: center;
  }

  body footer section.footer .news .row-flex .main-phone {
    margin: 10px 0;
  }

  body footer section.footer .news .main-phone {
    transform: none;
  }

  body footer section.footer .news form input {
    font-size: 15px;
    padding: 5px 15px;
  }

  body footer section.footer .news form button {
    margin-left: 10px;
  }

  body footer section.footer .news form button .txt {
    font-size: 14px;
  }

  body footer section.footer .news .titulo {
    justify-content: center;
    font-size: 15px;
    margin-bottom: 20px;
  }

  body footer section.footer .news .titulo img {
    height: 35px;
    margin-right: 15px;
  }

  body footer section.footer .news .titulo h3 {
    font-size: 20px;
  }
}

body footer section.footer-copy {
  background-color: #003850;
  color: white;
  font-weight: 400;
  padding: 15px 0;
  margin-bottom: 71px;
}

body footer section.footer-copy .links a {
  color: white;
  border-bottom: 1px dotted white;
  margin: 0 10px;
  opacity: 0.7;
}

@media (max-width: 991px) {
  body footer section.footer-copy {
    text-align: center;
    margin-bottom: 57px;
    font-size: 15px;
  }

  body footer section.footer-copy img {
    margin-top: 15px;
    max-width: 200px;
  }
}

body footer section.botao_whatsapp {
  background-color: #25d366;
  width: 70px;
  height: 70px;
  position: fixed;
  z-index: 610;
  bottom: 30px;
  padding: 5px;
  align-items: center;
  justify-content: center;
  display: flex;
  text-align: center;
  right: 30px;
  border-radius: 75px;
  -webkit-transition: all 0.5s;
  -moz-transition: all 0.5s;
  -ms-transition: all 0.5s;
  -o-transition: all 0.5s;
  transition: all 0.5s;
}

body footer section.botao_whatsapp i.fab.fa-whatsapp {
  color: white;
  font-size: 46px;
  vertical-align: middle;
}

@media (min-width: 992px) {
  body footer section.botao_whatsapp.scroll {
    bottom: 100px;
  }
}

body footer section.botao_whatsapp:hover {
  background-color: #1f9249;
}

@media screen and (max-width: 991px) {
  body footer section.botao_whatsapp {
    bottom: 75px;
    right: 10px;
  }
}

body footer .lente-whatsapp {
  position: fixed;
  background-color: rgba(0, 0, 0, 0.6);
  inset: 0;
  width: 100%;
  height: 100%;
  z-index: 800;
  transition: 0.3s all;
  opacity: 0;
  pointer-events: none;
}

body footer .lente-whatsapp.exibir {
  opacity: 1;
  pointer-events: all;
}

body footer section.modal-whatsapp {
  font-family: "Open Sans";
  position: fixed;
  right: 17px;
  bottom: 30px;
  background-image: url("../img/bg-whatsapp-min.jpg");
  width: 100%;
  height: 100%;
  box-shadow: 2px 2px 7px 0px #373737;
  max-width: 350px;
  max-height: 400px;
  border-radius: 5px;
  overflow: hidden;
  z-index: 9999;
  transform-origin: 100% 100%;
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
  -webkit-transition: all 0.3s;
  -moz-transition: all 0.3s;
  -ms-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
}

body footer section.modal-whatsapp.exibir {
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}

body footer section.modal-whatsapp.scroll {
  bottom: 100px;
}

@media screen and (max-width: 991px) {
  body footer section.modal-whatsapp {
    right: 0px;
    top: 0px;
    bottom: unset !important;
    width: 100%;
    height: 100%;
    max-height: 100%;
    max-width: 100%;
    border-radius: 0px;
  }
}

body footer section.modal-whatsapp .contatos a {
  color: dimgray;
  font-weight: 700;
  display: block;
}

body footer section.modal-whatsapp .contatos a i {
  color: #4baa2b;
}

body footer section.modal-whatsapp .cabecario-zap {
  background-color: #2e8c7d;
  font-size: 17px;
  color: #97c5be;
  padding: 12px 20px 4px 20px;
}

body footer section.modal-whatsapp .cabecario-zap span.zaptitulo {
  transform: translateY(-4px);
  display: inline-block;
}

body footer section.modal-whatsapp .cabecario-zap i.fab.fa-whatsapp {
  font-size: 25px;
  margin-right: 10px;
}

body footer section.modal-whatsapp .cabecario-zap i.far.fa-times-circle {
  font-size: 25px;
  float: right;
  margin-right: 0px;
  cursor: pointer;
}

body footer section.modal-whatsapp .msg-bot {
  font-family: "Open Sans", sans-serif;
  background-color: white;
  margin: 15px;
  padding: 15px;
  border-radius: 20px;
  font-size: 15px;
  position: relative;
}

body footer section.modal-whatsapp .msg-bot::after {
  content: "";
  width: 0;
  height: 0;
  border-left: 12px solid transparent;
  border-right: 15px solid transparent;
  border-top: 21px solid white;
  position: absolute;
  top: 0px;
  left: -10px;
  z-index: -1;
}

body footer section.modal-whatsapp .msg-bot :first-child {
  margin-top: 7px;
}

body footer section.modal-whatsapp .msg-bot label {
  font-weight: 700;
  font-size: 12px;
  color: black;
  display: block;
}

body footer section.modal-whatsapp .msg-bot input {
  height: auto;
  font-size: 14px;
  margin-bottom: 5px;
  border-top: 0px;
  border-right: 0px;
  border-left: 0px;
  border-bottom: 1px solid #cacaca;
  outline: none;
  width: 100%;
}

body footer section.modal-whatsapp .campo-acao {
  position: absolute;
  bottom: 0px;
  left: 0px;
  width: 100%;
  display: flex;
  padding: 0px 10px;
  height: 44px;
}

@media (max-width: 991px) {
  body footer section.modal-whatsapp .campo-acao {
    position: static;
  }
}

body footer section.modal-whatsapp .campo-acao .texto {
  width: 100%;
  padding-right: 10px;
  font-family: "Open Sans", sans-serif;
}

body footer section.modal-whatsapp .campo-acao .texto input {
  border: none;
  border-radius: 32px;
  padding: 9px 18px;
  display: flex;
  outline-color: transparent;
  width: 100%;
  outline: none !important;
  font-size: 14px;
}

body footer section.modal-whatsapp .campo-acao .button-zap {
  background-color: transparent;
}

body footer section.modal-whatsapp .campo-acao .button-zap button {
  border: none;
  outline: none;
  cursor: pointer;
  background-color: #2e8c7d;
  color: white;
  width: 36px;
  height: 36px;
  display: flex;
  border-radius: 100px;
  align-items: center;
  justify-content: center;
  text-align: center;
}

body footer section.modal-whatsapp .campo-acao .button-zap button:disabled {
  background-color: #a7a7a7;
  cursor: not-allowed;
}

body footer section.modal-whatsapp .campo-acao .button-zap button i.fas.fa-paper-plane {
  font-size: 19px;
  transform: rotate(49deg) translate(-2px, 0px);
  position: relative;
  transform-origin: center;
}

body footer section.modal-whatsapp .hide-desktop {
  display: none;
}

@media (max-width: 991px) {
  body footer section.modal-whatsapp .campo-acao {
    display: none;
  }

  body footer section.modal-whatsapp .acao-mobile {
    border: none;
    outline: none;
    cursor: pointer;
    background-color: #2e8c7d;
    color: white;
    border-radius: 9px;
    text-align: center;
    width: calc(100% - 40px);
    display: block;
    padding: 7px 15px;
    margin: 0 20px;
  }

  body footer section.modal-whatsapp .acao-mobile:disabled {
    background-color: #a7a7a7;
    cursor: not-allowed;
  }

  body footer section.modal-whatsapp .acao-mobile i {
    margin-right: 5px;
  }

  body footer section.modal-whatsapp .hide-desktop {
    display: block;
  }
}

body footer .menu-mobile {
  background-size: cover;
  background-repeat: no-repeat;
  background-image: url("../img/bg-contatolateral.png");
  background-position: center;
  background-color: white;
  position: fixed;
  top: 0px;
  left: -100%;
  width: 100%;
  height: 100%;
  overflow: auto;
  z-index: 998;
  padding-bottom: 65px;
  -webkit-transition: all 0.5s;
  -moz-transition: all 0.5s;
  -ms-transition: all 0.5s;
  -o-transition: all 0.5s;
  transition: all 0.5s;
}

body footer .menu-mobile.aberto {
  left: 0px;
}

body footer .menu-mobile .fechar {
  position: absolute;
  top: 20px;
  right: 20px;
  font-size: 25px;
  font-weight: 700;
  color: white;
}

body footer .menu-mobile .logo {
  width: 100%;
  padding: 10px;
  text-align: center;
  margin-bottom: 20px;
}

body footer .menu-mobile .logo img {
  height: 60px;
  object-fit: contain;
  margin-top: 20px;
}

body footer .menu-mobile ul {
  padding: 0px;
}

body footer .menu-mobile ul li {
  list-style: none;
  margin: 5px;
  padding: 2px;
  text-align: center;
  text-transform: uppercase;
  position: relative;
}

body footer .menu-mobile ul li:last-child {
  border-bottom: none;
}

body footer .menu-mobile ul li a {
  color: white;
  font-size: 16px;
  padding: 0 10px;
  font-weight: 600;
  display: inline-block;
  width: 100%;
}

/*# sourceMappingURL=custom.css.map */

html,
body {
  overflow-x: clip;
  width: 100%;
  position: relative;
}

/* 1. Corrige o botão VER TODAS (Reduz largura e centraliza o conteúdo) */
body section.header .categorias .ver-todos {
  width: 220px;
  justify-content: center;
  padding-right: 15px;
  padding-left: 15px;
}

/* 2. Dá respiro às Categorias (Troca de space-between para gap fixo) */
body section.header .categorias .menu {
  justify-content: flex-start;
  gap: 35px;
  /* Define um respiro exato e consistente entre os itens */
}

/* 3. Ajusta a Grid para as categorias não sobreporem o botão absoluto */
@media (min-width: 992px) {
  body section.header .col-categorias {
    margin-left: 200px !important;
    /* Escapa do botão Ver Todas */
    width: 50% !important;
    /* Garante largura suficiente para os itens */
  }

  body section.header .col-botoes {
    width: 33% !important;
    /* Ajusta o limite para a direita */
  }
}

/* 4. Força alinhamento vertical perfeito entre os botões de ação */
.col-botoes .main-cta {
  height: 45px;
  /* Força altura idêntica para ambos */
  display: inline-flex;
  align-items: center;
}

.main-cta.ligamo {
  padding: 0 23px !important;
  /* Remove o padding vertical flexível */
  justify-content: center;
}

/* Container Principal: Define a linha única e impede quebra (wrap) */
.categorias-nova-estrutura {
  display: flex;
  align-items: center;
  background-color: #eeeeee;
  justify-content: space-between;
  padding-right: 25px;
  /* Respiro final à direita */
  gap: 20px;
  /* Distância mínima garantida entre os 3 blocos */
  position: relative;
  width: 100%;
}

/* 1. Botão Ver Todas (Esquerda) */
.categorias-nova-estrutura .box-ver-todos {
  background-color: #003850;
  color: white;
  padding: 0 35px;
  height: 55px;
  /* Altura exata para bater com a imagem */
  display: flex;
  align-items: center;
  border-radius: 0 25px 25px 0;
  /* Arredondado apenas na direita */
  position: relative;
  flex-shrink: 0;
  /* Proíbe o Flexbox de amassar este botão */
  cursor: pointer;
}

.categorias-nova-estrutura .box-ver-todos a.text-white {
  color: white;
  font-weight: 600;
  font-size: 15px;
  text-decoration: none;
}

/* Lógica do Dropdown (Restaurada de forma segura) */
.categorias-nova-estrutura .box-ver-todos:hover .dropdown-categorias {
  opacity: 1;
  pointer-events: auto;
  transform: translateY(0);
}

.categorias-nova-estrutura .dropdown-categorias {
  position: absolute;
  top: 55px;
  /* Altura do botão pai */
  left: 0;
  background-color: #003850;
  width: 300px;
  padding: 10px 0;
  opacity: 0;
  pointer-events: none;
  transition: all 0.2s ease-in-out;
  transform: translateY(10px);
  /* Leve efeito de entrada */
  z-index: 100;
  box-shadow: 3px 5px 15px rgba(0, 0, 0, 0.15);
}

.categorias-nova-estrutura .dropdown-categorias a.item {
  color: white;
  display: block;
  padding: 12px 25px;
  text-decoration: none;
  font-size: 14px;
  transition: background 0.2s;
}

.categorias-nova-estrutura .dropdown-categorias a.item:hover {
  background-color: #005185;
}

/* 2. Menu de Categorias (Centro) */
.categorias-nova-estrutura .box-links-categorias {
  display: flex;
  align-items: center;
  gap: 30px;
  /* Espaço uniforme entre os ícones */
  flex-grow: 1;
  /* Ocupa todo o espaço que sobrar no centro */
  /*justify-content: center;*/
  /* Centraliza perfeitamente */
  overflow: hidden;
  /* Evita estourar o layout caso existam muitas categorias */
}

.categorias-nova-estrutura .box-links-categorias a.cat-link {
  color: #003850;
  font-weight: 600;
  font-size: 15px;
  display: flex;
  align-items: center;
  white-space: nowrap;
  /* Impede a quebra de linha no nome da categoria */
  text-decoration: none;
  transition: opacity 0.2s;
}

.categorias-nova-estrutura .box-links-categorias a.cat-link:hover {
  opacity: 0.7;
}

.categorias-nova-estrutura .box-links-categorias a.cat-link img {
  height: 24px;
  margin-right: 10px;
  object-fit: contain;
}

/* 3. Botões de Ação (Direita) */
.categorias-nova-estrutura .box-botoes-acao {
  display: flex;
  align-items: center;
  gap: 15px;
  flex-shrink: 0;
  /* Proíbe o Flexbox de amassar os botões */
}

/* Botão: Orçamento Rápido */
.categorias-nova-estrutura .btn-acao-outline {
  display: flex;
  align-items: center;
  border: 2px solid #ffb235;
  border-radius: 5px;
  color: #001683;
  font-weight: 600;
  font-size: 14px;
  text-decoration: none;
  height: 42px;
  overflow: hidden;
  background: transparent;
}

.categorias-nova-estrutura .btn-acao-outline .txt {
  padding: 0 15px;
  white-space: nowrap;
}

.categorias-nova-estrutura .btn-acao-outline .icone {
  background: linear-gradient(90deg, #ffb033 0%, #ffcf26 100%);
  color: white;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 100%;
}

/* Botão: Ligamos para Você */
.categorias-nova-estrutura .btn-acao-solid {
  background: linear-gradient(90deg, #5098d9 0%, #005185 100%);
  color: white;
  font-weight: 600;
  font-size: 14px;
  padding: 0 25px;
  height: 42px;
  display: flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  border-radius: 4px;
  white-space: nowrap;
}

.categorias-nova-estrutura .btn-acao-solid i {
  color: #003850;
}

/* ==========================================
   HEADER DESKTOP - ESTRUTURA BLINDADA
========================================== */
.header-principal-flex {
  background-image: url("../img/bg-header.png");
  background-size: cover;
  padding: 20px 0;
}

.header-desktop {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 30px;
  /* Distância mínima respirável entre blocos */
  flex-wrap: nowrap;
  width: 100%;
}

/* 1. LOGO */
.header-logo {
  flex: 0 0 auto;
  /* Não cresce, não encolhe, largura automática baseada na imagem */
  max-width: 180px;
}

.header-logo img {
  width: 100%;
  height: auto;
  display: block;
}

/* 2. CONTATOS */
.header-contatos {
  display: flex;
  align-items: center;
  gap: 30px;
  flex: 0 0 auto;
  /* Blindagem: Proíbe o flexbox de amassar os telefones */
}

.header-contatos .main-phone {
  display: flex;
  align-items: center;
  text-decoration: none;
  white-space: nowrap;
  /* Proíbe o número de quebrar linha sob o título */
}

/* 3. BUSCA (O "Amortecedor") */
.header-busca {
  flex: 1 1 auto;
  /* Cresce para preencher o vazio, encolhe se faltar espaço */
  min-width: 200px;
  /* Proteção mínima antes da tela quebrar */
  max-width: 500px;
}

.header-busca form {
  display: flex;
  width: 100%;
}

.header-busca input {
  flex-grow: 1;
  background-color: white;
  border: 1px solid #b6b6b6;
  border-right: none;
  padding: 10px 20px;
  border-radius: 7px 0 0 7px;
  font-size: 14px;
  outline: none;
}

.header-busca button {
  background-color: #0091b4;
  color: white;
  border: 1px solid #0091b4;
  padding: 10px 25px;
  border-radius: 0 7px 7px 0;
  cursor: pointer;
  transition: 0.2s;
}

/* 4. AÇÕES E REDES SOCIAIS */
.header-acoes {
  display: flex;
  align-items: center;
  gap: 25px;
  flex: 0 0 auto;
  /* Blindagem contra esmagamento */
}

.btn-carrinho-novo {
  display: flex;
  align-items: center;
  text-decoration: none;
  gap: 10px;
}

.btn-carrinho-novo .icon {
  background-image: url("../img/rodinha.png");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: left;
  padding: 10px 0 10px 35px;
  color: #4e4e4e;
}

.btn-carrinho-novo .info {
  display: flex;
  align-items: center;
  gap: 8px;
}

.btn-carrinho-novo .text {
  font-weight: 700;
  color: #4e4e4e;
  font-size: 14px;
  white-space: nowrap;
}

.btn-carrinho-novo .count {
  background-color: #0091b4;
  color: white;
  border-radius: 50%;
  width: 25px;
  height: 25px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
  font-weight: bold;
}

.header-social {
  display: flex;
  gap: 15px;
}

.header-social a {
  color: #005188;
  font-size: 20px;
  transition: 0.2s;
}

.header-social a:hover {
  color: #ffb235;
}

/* ==========================================
   HEADER MOBILE (Regras simplificadas)
========================================== */
.topo-mobile-flex {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 10px 15px;
}

.header-logo-mobile img {
  max-width: 140px;
}

.header-acoes-mobile {
  display: flex;
  gap: 15px;
}

.btn-icon-mobile {
  color: #4e4e4e;
  font-size: 22px;
  text-decoration: none;
}

.collapse-busca-mobile form {
  display: flex;
  padding: 10px 15px;
}

.collapse-busca-mobile input {
  flex-grow: 1;
  border-radius: 5px 0 0 5px;
  border: 1px solid #ccc;
  padding: 10px;
  outline: none;
}

.collapse-busca-mobile button {
  background-color: #0091b4;
  color: white;
  border: none;
  border-radius: 0 5px 5px 0;
  padding: 0 15px;
}

/* Contador do Carrinho no Header Mobile */
.btn-carrinho-header-mobile .count {
  position: absolute;
  top: -6px;
  right: -10px;
  background: #f68b1f;
  color: #fff;
  font-size: 10px;
  font-weight: bold;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

/* ==========================================
   BARRA AZUL SUPERIOR (Top Bar)
========================================== */
.top-bar-flex {
  display: flex;
  justify-content: space-between;
  /* Empurra o menu para a esquerda e as redes para a direita */
  align-items: center;
  width: 100%;
}

/* Protege o menu para que ele encolha com reticências se a tela apertar, mas não amasse os ícones */
.header .top .menu {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  gap: 0;
  overflow: hidden;
  flex-grow: 1;
}

/* Estrutura das Redes Sociais na Top Bar */
.top-social {
  display: flex;
  align-items: center;
  gap: 15px;
  /* Espaço entre os ícones do Face e Insta */
  flex-shrink: 0;
  /* Impede que o menu esmague as redes sociais */
  padding-left: 20px;
  /* Cria um distanciamento de segurança do menu */
}

/* Ajuste refinado dos ícones na barra azul */
.top-social a {
  margin-right: 0 !important;
  /* Reseta a margem padrão global que você tinha nos links da .top */
  font-size: 16px;
  /* Tamanho proporcional à barra superior */
  color: white;
  transition: opacity 0.2s;
  display: flex;
  align-items: center;
}

.top-social a:hover {
  opacity: 0.7;
}

/* ===================================================
   CARDS DO CARROSSEL DE DESTAQUES — AJUSTES FINOS
   =================================================== */

/* Carrossel: alinha os cards pelo rodapé */
body main section.index-produtos .owl-carousel .owl-stage {
  display: flex;
  align-items: stretch;
}

body main section.index-produtos .owl-carousel .owl-item {
  display: flex;
}

body main section.index-produtos .owl-carousel .card-produto {
  display: flex;
  flex-direction: column;
  height: 100%;
  padding: 20px;
  /* Reduzido de 30px */
}

/* Título: tamanho menor, altura fixa de 2 linhas para uniformidade */
body main section.index-produtos .card-produto h2 {
  font-size: 14px;
  min-height: 2.8em;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  line-height: 1.4;
  margin-bottom: 0;
}

/* Imagem: altura mais compacta */
body main section.index-produtos .card-produto .img {
  height: 200px;
  margin: 12px 0;
}

/* Preço: tamanho menor */
body main section.index-produtos .card-produto .preco .consulta {
  font-size: 18px;
}

/* Resumo: tamanho menor */
body main section.index-produtos .card-produto .resumo {
  font-size: 13px;
}

/* Rodapé do card empurrado para baixo */
body main section.index-produtos .card-produto>div:last-child {
  margin-top: auto;
}

/* Botões da linha 1: sem quebra de texto */
body main section.index-produtos .card-produto .botoes .btn-card {
  white-space: nowrap;
  padding: 8px 12px;
  font-size: 12px;
}

/* ===================================================
   FIX: SOMBRAS CORTADAS NO CARROSSEL
   =================================================== */

/* Faz o carrossel quebrar a largura do container apenas o suficiente 
   para a sombra ser desenhada sem ser cortada */
body main section.index-produtos .owl-carousel .owl-stage-outer {
  padding: 20px 25px !important;
  margin: -20px -25px !important;
  width: calc(100% + 50px) !important;
}

/* Garante que o carrossel em si não tenha a largura restrita 
   para comportar o crescimento do stage-outer acima */
body main section.index-produtos .owl-carousel {
  width: 100%;
  position: relative;
  z-index: 1;
}

@media (max-width: 991px) {

  /* 1. Aumenta o espaçamento interno (área de clique) do botão na seção Sobre */
  body main section.index-sobre .ctas .main-phone.zap {
    padding: 12px 25px;
  }

  /* 2. Aumenta o tamanho do ícone do WhatsApp */
  body main section.index-sobre .ctas .main-phone.zap .icon i {
    font-size: 28px;
  }

  /* 3. Aumenta o tamanho do número de telefone */
  body main section.index-sobre .ctas .main-phone.zap .text {
    font-size: 16px;
  }

  /* 4. Aumenta o título "Whatsapp" */
  body main section.index-sobre .ctas .main-phone.zap .text strong {
    font-size: 14px;
  }
}

/* Linha divisória do Blog (Apenas Desktop) */
@media (min-width: 992px) {
  body main section.index-blog .borda-blog-desktop {
    border-right: 2px solid #e9ecef;
    /* Ajuste a cor (Hex) e espessura se necessário */
  }
}

/* ===================================================
   AJUSTES FINOS: CARDS NA LISTAGEM DE PRODUTOS (ARCHIVE)
   =================================================== */

/* 1. Reduz o padding agressivo para dar mais espaço útil aos botões */
body main section.produtos-listagem .card-produto {
  padding: 20px;
}

/* 2. Padroniza o título em 2 linhas (evita cards de tamanhos diferentes) */
body main section.produtos-listagem .card-produto h2 {
  font-size: 16px;
  min-height: 2.8em;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  line-height: 1.4;
  margin-bottom: 0;
}

/* 3. Imagem com altura controlada */
body main section.produtos-listagem .card-produto .img {
  height: 220px;
  margin: 15px 0;
}

/* 4. Tipografia mais proporcional */
body main section.produtos-listagem .card-produto .preco .consulta {
  font-size: 18px;
}

body main section.produtos-listagem .card-produto .resumo {
  font-size: 13px;
}

/* 5. A CORREÇÃO DOS BOTÕES: Impede quebra de linha e alinha perfeitamente */
body main section.produtos-listagem .card-produto .botoes .btn-card {
  white-space: nowrap;
  /* Proíbe o texto de quebrar para a linha de baixo */
  padding: 8px 10px;
  font-size: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* Garante que o ícone do botão esquerdo não grude no texto */
body main section.produtos-listagem .card-produto .botoes .btn-card i {
  margin-right: 6px;
}

/* ===================================================
   FIX: ALINHAMENTO IGUAL PARA CARDS DE DEPOIMENTOS
   =================================================== */
@media (min-width: 992px) {
  body main section.index-depoimentos .owl-carousel .owl-stage {
    display: flex !important;
    align-items: stretch !important;
  }

  body main section.index-depoimentos .owl-carousel .owl-item {
    display: flex !important;
    flex: none !important;
    /* Mata o bug do 'flex: 1 0 auto' que estava no código legado */
    height: auto !important;
  }

  body main section.index-depoimentos .depoimento {
    width: 100% !important;
  }
}

/* ===================================================
   COMPONENTE: ORÇAMENTO RÁPIDO - CONTATOS
   =================================================== */
.gap-contatos {
  gap: 20px;
  justify-content: center;
  /* Centraliza e reduz o buraco no Mobile */
}

@media (min-width: 992px) {
  .gap-contatos {
    gap: 60px;
    /* Distância exata de 60px no Desktop */
    justify-content: flex-start;
    /* Alinha à esquerda no Desktop */
  }
}