@import url(https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&family=Kanit:ital,wght@0,100;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&family=Manrope:wght@200..800&family=PT+Sans+Caption:wght@400;700&family=Plus+Jakarta+Sans:ital,wght@0,200..800;1,200..800&family=Poppins:ital,wght@0,100;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&display=swap);
@charset "UTF-8";
/* CLASSES GLOBAIS */
.has-error {
  border-color: red !important;
}

@media (min-width: 991px) {
  .hide-desktop {
    display: none !important;
  }
}

@media (max-width: 991px) {
  .hide-mobile {
    display: none !important;
  }
}

.container {
  max-width: 1500px;
}
.container.small {
  max-width: 1035px;
}
.container.big {
  max-width: 1634x;
}

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;
}

/*  Validação   */
.ng-invalid-required.ng-touched,
.campo-invalido {
  border-color: #dc3545 !important;
}

/* VARIAVEIS GLOBAIS DO PROJETO */
/* DM Sans – Minimal (300/400/500/700/800) */
/* Light 300 */
@font-face {
  font-family: "DM Sans";
  src: url("../fonts/DMSans18pt-Light.woff2") format("woff2"), url("../fonts/DMSans18pt-Light.woff") format("woff");
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}
/* Regular 400 */
@font-face {
  font-family: "DM Sans";
  src: url("../fonts/DMSans18pt-Regular.woff2") format("woff2"), url("../fonts/DMSans18pt-Regular.woff") format("woff");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
/* Medium 500 */
@font-face {
  font-family: "DM Sans";
  src: url("../fonts/DMSans18pt-Medium.woff2") format("woff2"), url("../fonts/DMSans18pt-Medium.woff") format("woff");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
/* Bold 700 */
@font-face {
  font-family: "DM Sans";
  src: url("../fonts/DMSans18pt-Bold.woff2") format("woff2"), url("../fonts/DMSans18pt-Bold.woff") format("woff");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
/* ExtraBold 800 */
@font-face {
  font-family: "DM Sans";
  src: url("../fonts/DMSans18pt-ExtraBold.woff2") format("woff2"), url("../fonts/DMSans18pt-ExtraBold.woff") format("woff");
  font-weight: 800;
  font-style: normal;
  font-display: swap;
}
body {
  font-family: "DM Sans", sans-serif;
  font-weight: 400;
}

.card-produto-padrao {
  position: relative;
  width: 309px;
  height: 393px;
  padding: 15px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  transition: 0.3s all;
  border-radius: 30px;
  margin: auto;
  background-color: #243352;
}
.card-produto-padrao::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url("../image/bg-card-produto.png");
  background-repeat: no-repeat;
  background-size: 100% 100%;
  content: "";
  transition: 0.3s all;
}
@media (min-width: 992px) {
  .card-produto-padrao:hover::before {
    opacity: 0.9;
  }
}
.card-produto-padrao .img-produto, .card-produto-padrao .title-in, .card-produto-padrao .saiba-mais-in, .card-produto-padrao .bottom-item {
  position: relative;
  z-index: 2;
}
.card-produto-padrao .img-produto {
  width: 100%;
  height: 200px;
  border-radius: 14px;
  background: #FFF;
  overflow: hidden;
  position: relative;
  padding: 20px;
}
.card-produto-padrao .img-produto .add-card-in {
  background-color: #10404b;
  border-radius: 50%;
  width: 42px;
  height: 42px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  top: 5px;
  right: 5px;
  transition: 0.3s all;
  cursor: pointer;
}
.card-produto-padrao .img-produto .add-card-in:hover {
  transform: translateY(-1px);
  background-color: #0b5362;
}
.card-produto-padrao .img-produto img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: center;
     object-position: center;
}
.card-produto-padrao .title-in {
  color: #243352;
  text-align: center;
  font-family: Kanit;
  font-size: 18px;
  font-style: normal;
  font-weight: 600;
  line-height: normal;
  text-transform: uppercase;
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  text-overflow: ellipsis;
  height: "";
}
.card-produto-padrao .saiba-mais-in {
  color: #243352;
  text-align: center;
  font-family: Kanit;
  font-size: 15px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  text-decoration-line: underline;
  text-decoration-style: solid;
  -webkit-text-decoration-skip-ink: none;
          text-decoration-skip-ink: none;
  text-decoration-thickness: auto;
  text-underline-offset: auto;
  text-underline-position: from-font;
}
.card-produto-padrao .bottom-item {
  display: flex;
  justify-content: space-between;
}
.card-produto-padrao .bottom-item .main-cta {
  max-width: 198px;
}
.card-produto-padrao .bottom-item .action-zap {
  background-color: #2fb54d;
  border-radius: 20px;
  width: 63.59px;
  height: 44.02px;
  display: flex;
  align-items: center;
  justify-content: center;
  transform: translate(8px, 3px);
  transition: 0.3s all;
  cursor: pointer;
}
.card-produto-padrao .bottom-item .action-zap:hover {
  background-color: #1f8035;
}

img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}

* {
  background-size: cover;
  background-position: center;
}

.icon {
  width: 49px;
  height: 49px;
  background-color: none;
  border: 1px solid #023766;
  border-radius: 50px;
  display: flex;
  align-content: center;
  align-items: center;
  justify-content: center;
}

.rating-box {
  display: inline-flex;
  gap: 4px;
  line-height: 1;
}

.rating-box .star {
  display: block;
}

.row-ctas.contact .main-phone.zap {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 369px;
  height: 50px;
  flex-shrink: 0;
  border-radius: 10px;
  background: #00b700;
}
.row-ctas.contact .main-phone.zap .icon {
  border: unset;
  width: 40px;
}
.row-ctas.contact .main-phone.zap .icon svg {
  color: red;
}
.row-ctas.contact .main-phone.zap .info {
  color: #fff;
  font-family: "DM Sans", sans-serif;
  font-size: 16px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  position: relative;
}
.row-ctas.contact .main-phone.zap .info:after {
  content: "";
  position: absolute;
  left: 50%;
  right: 50%;
  bottom: 0;
  background: #fff;
  height: 0;
  transition: all 300ms ease;
}
.row-ctas.contact .main-phone.zap .info:hover:after {
  left: 0;
  right: 0;
  height: 1px;
}

.btn-wa {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  width: 100%;
  height: 44px;
  border-radius: 10px;
  color: #fff;
  font-family: "DM Sans", sans-serif;
  font-size: 17.575px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  text-decoration: none;
  background: #00b700;
  box-shadow: 0 10px 24px rgba(37, 211, 102, 0.25);
  transition: transform 0.15s ease, filter 0.15s ease;
  cursor: pointer;
}
.btn-wa .info {
  position: relative;
}
.btn-wa .info:after {
  content: "";
  position: absolute;
  left: 50%;
  right: 50%;
  bottom: 0;
  background: #fff;
  height: 0;
  transition: all 300ms ease;
}
.btn-wa .info:hover:after {
  left: 0;
  right: 0;
  height: 1px;
}
.btn-wa .wa-dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #fff;
  opacity: 0.85;
  margin-left: 14px;
}
.btn-wa:hover {
  filter: brightness(1.03);
  transform: translateY(-1px);
}
.btn-wa:hover .info {
  color: #fff;
}
.btn-wa:active {
  transform: translateY(0);
}

.main-phone {
  display: flex;
  gap: 5px;
  cursor: pointer;
}
.main-phone .icon {
  width: 49px;
  height: 49px;
  background-color: none;
  border: 1px solid #023766;
  border-radius: 50px;
  display: flex;
  align-content: center;
  align-items: center;
  justify-content: center;
}
.main-phone .info {
  font-size: 16px;
  font-style: normal;
}
.main-phone .info .label,
.main-phone .info .number {
  color: #023766;
  font-family: "DM Sans", sans-serif;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}
.main-phone .info .label {
  font-weight: 700;
}
.main-phone.zap .icon {
  background-color: transparent;
  border: 1px solid #023766;
}
.main-phone.blue-icon .icon {
  background-color: #307bc4;
  border: 1px solid #307bc4;
}
.main-phone.blue-icon .number {
  text-decoration: underline;
}

.section-title {
  text-align: center;
  margin: 0 0 28px;
}
.section-title span,
.section-title strong,
.section-title p {
  font-family: "DM Sans", sans-serif;
  font-size: 35px;
  color: #023766;
}
@media (max-width: 576px) {
  .section-title span,
  .section-title strong,
  .section-title p {
    font-size: 28px;
  }
}
.section-title strong {
  color: #f6911d;
  font-weight: 800;
}
@media (max-width: 576px) {
  .section-title strong {
    font-size: 28px;
  }
}
.section-title span {
  color: #fff;
  font-weight: 300;
}
@media (max-width: 576px) {
  .section-title span {
    font-size: 28px;
  }
}

.row-ctas.links .btn.btn-outline-primary {
  border-radius: 10px;
  border: 1px solid #023766;
  background: transparent;
  transition: all 0.3s ease;
  padding: 0.9rem 1.2rem;
  cursor: pointer;
}
.row-ctas.links .btn.btn-outline-primary span {
  font-size: 1rem;
  font-weight: 800;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  color: #023766;
  font-family: "DM Sans", sans-serif;
  line-height: normal;
  transition: color 0.3s ease;
  margin: 0;
  position: relative;
  padding: 5px 2px;
}
.row-ctas.links .btn.btn-outline-primary span:after {
  content: "";
  position: absolute;
  left: 50%;
  right: 50%;
  bottom: 0;
  background: #fff;
  height: 0;
  transition: all 300ms ease;
}
.row-ctas.links .btn.btn-outline-primary span:hover:after {
  left: 0;
  right: 0;
  height: 1px;
}
.row-ctas.links .btn.btn-outline-primary:hover {
  background: #023766;
  border-color: #023766;
}
.row-ctas.links .btn.btn-outline-primary:hover span {
  color: #fff;
}
.row-ctas.links .btn.btn-outline-primary:focus {
  outline: 3px solid rgba(2, 55, 102, 0.4);
  outline-offset: 2px;
}

.main-cta {
  border-radius: 10px;
  background: linear-gradient(90deg, #f6911d 0%, #ebb632 100%);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: none;
  outline: none;
  padding: 10px 15px;
  width: 100%;
  max-width: 291px;
  color: #fff;
  font-size: 16px;
  font-style: normal;
  font-weight: 600;
  line-height: normal;
  transition: 0.5s all;
  text-align: center;
  gap: 7px;
  width: 291px;
  height: 50px;
  flex-shrink: 0;
  cursor: pointer;
  transition: 0.5s all;
  transition: all 300ms ease;
}
.main-cta:hover {
  color: #fff;
}
.main-cta .label {
  color: #023766;
  text-align: center;
  font-family: "DM Sans", sans-serif;
  font-size: 16px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  position: relative;
}
.main-cta .label:after {
  content: "";
  position: absolute;
  left: 50%;
  right: 50%;
  bottom: 0;
  background: #023766;
  height: 0;
  transition: all 300ms ease;
}
.main-cta .label:hover:after {
  left: 0;
  right: 0;
  height: 1px;
}
.main-cta.whatsapp {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: white;
  background: linear-gradient(90deg, #01ce5f 20%, #00b55c 90%);
  font-weight: 600;
}
.main-cta.whatsapp:hover {
  background: #135f00;
}
.main-cta.carrinho {
  background-color: transparent;
  border: 1px solid #10404b;
  color: #10404b;
  font-weight: 400;
  position: relative;
}
.main-cta.carrinho svg path {
  transition: 0.3s all;
}
.main-cta.carrinho:hover {
  background-color: #10404b;
  color: white;
}
.main-cta.carrinho:hover svg path {
  stroke: white;
}
@media (max-width: 991px) {
  .main-cta.carrinho {
    width: 50px;
    min-height: 44px;
  }
  .main-cta.carrinho .txt-in {
    display: none;
  }
}
.main-cta.carrinho .qtd-carrinho {
  width: 25px;
  height: 25px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #10404b;
  color: white;
  font-size: 13px;
  position: absolute;
  right: 11px;
  top: calc(50% - 12.5px);
}
@media (max-width: 991px) {
  .main-cta.carrinho .qtd-carrinho {
    top: -7px;
    right: -7px;
  }
}
@media (max-width: 991px) {
  .main-cta {
    font-size: 16px !important;
    padding: 10px !important;
  }
}

.carousel-tool {
  display: flex;
  gap: 10px;
  align-items: center;
  margin: 40px 0 0 0;
}
.carousel-tool .prev,
.carousel-tool .next {
  cursor: pointer;
  transition: 0.3s all;
}
.carousel-tool .prev:hover,
.carousel-tool .next:hover {
  transform: translateY(-3px);
}
.carousel-tool ul.carousel-tool-dots {
  display: flex;
  gap: 5px;
  align-items: center;
  justify-content: center;
  height: 100%;
  margin: 0;
  padding: 0;
}
.carousel-tool ul.carousel-tool-dots .custom-dots-destaque-in {
  width: 8.181px;
  height: 8.181px;
  border-radius: 8.181px;
  background-color: #d9d9d9;
  transition: 0.3s all;
  cursor: pointer;
}
.carousel-tool ul.carousel-tool-dots .custom-dots-destaque-in.active, .carousel-tool ul.carousel-tool-dots .custom-dots-destaque-in:hover {
  background-color: #171717;
}
@media (max-width: 991px) {
  .carousel-tool {
    display: none;
  }
}

.owl-carousel .owl-nav:not(.disabled) {
  position: absolute;
  bottom: 50px;
  left: 16%;
  display: flex;
  gap: 30px;
}
.owl-carousel .owl-nav:not(.disabled) .owl-prev,
.owl-carousel .owl-nav:not(.disabled) .owl-next {
  transition: 0.3s all;
  outline: none;
  border: none;
}
.owl-carousel .owl-nav:not(.disabled) .owl-prev:hover,
.owl-carousel .owl-nav:not(.disabled) .owl-next:hover {
  transform: translateY(-1px);
}

.owl-carousel .owl-dots:not(.disabled) {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
  flex-wrap: wrap;
  padding: 0.8rem 1.5rem;
  border-radius: 0.25rem;
  margin: 0 auto;
  width: auto;
  max-width: 80%;
}
.owl-carousel .owl-dots:not(.disabled) .owl-dot {
  border-radius: 100%;
  background: rgb(217, 217, 217);
  width: 13px;
  height: 13px;
}
.owl-carousel .owl-dots:not(.disabled) .owl-dot.active {
  background: rgb(235, 182, 50);
}
@media (max-width: 991px) {
  .owl-carousel .owl-dots:not(.disabled) {
    margin-top: 20px;
  }
}

/* DM Sans – Minimal (300/400/500/700/800) */
/* Light 300 */
@font-face {
  font-family: "DM Sans";
  src: url("../fonts/DMSans18pt-Light.woff2") format("woff2"), url("../fonts/DMSans18pt-Light.woff") format("woff");
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}
/* Regular 400 */
@font-face {
  font-family: "DM Sans";
  src: url("../fonts/DMSans18pt-Regular.woff2") format("woff2"), url("../fonts/DMSans18pt-Regular.woff") format("woff");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
/* Medium 500 */
@font-face {
  font-family: "DM Sans";
  src: url("../fonts/DMSans18pt-Medium.woff2") format("woff2"), url("../fonts/DMSans18pt-Medium.woff") format("woff");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
/* Bold 700 */
@font-face {
  font-family: "DM Sans";
  src: url("../fonts/DMSans18pt-Bold.woff2") format("woff2"), url("../fonts/DMSans18pt-Bold.woff") format("woff");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
/* ExtraBold 800 */
@font-face {
  font-family: "DM Sans";
  src: url("../fonts/DMSans18pt-ExtraBold.woff2") format("woff2"), url("../fonts/DMSans18pt-ExtraBold.woff") format("woff");
  font-weight: 800;
  font-style: normal;
  font-display: swap;
}
body {
  font-family: "DM Sans", sans-serif;
  font-weight: 400;
}

@media (max-width: 576px) {
  header .container.area-menu {
    display: none;
  }
  header .header-wrapper {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
  header .header-wrapper .logo-wrapper {
    width: 50%;
  }
  header .header-wrapper .row-ctas .main-phone {
    display: flex;
    gap: 5px;
    cursor: pointer;
  }
  header .header-wrapper .row-ctas .main-phone .icon {
    width: 38px;
    height: 38px;
  }
  header .header-wrapper .menu-wrapper {
    width: 25%;
  }
  header .header-wrapper .menu-wrapper a .exibirMobile::before {
    font-size: 1.7rem;
  }
  header .header-wrapper .whatsapp-wrapper {
    width: 25%;
    display: flex;
    justify-content: space-around;
    align-items: center;
  }
  header .header-wrapper .menu-wrapper,
  header .header-wrapper .whatsapp-wrapper {
    display: flex;
    justify-content: space-around;
    align-items: center;
  }
}

section.header {
  background-image: url("../image/bg-header.png");
  background-size: cover;
  background-repeat: no-repeat;
  padding: 20px 0 0 0;
  transition: all 0.3s ease;
  /* busca */
  /* ===========================
   MOBILE
   =========================== */
}
section.header .logo {
  max-width: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
section.header .header-row-1 {
  border-bottom: 2px solid #b4b4b4;
  padding: 15px 0 20px;
}
section.header .header-row-1 .row-ctas {
  display: flex;
  justify-content: space-around;
  align-items: center;
  gap: 15px;
}
section.header .header-row-1 .main-cta {
  font-size: 15px;
  padding: 10px 11px;
}
section.header .header-row-1 .box-redes {
  display: flex;
  gap: 5px;
  height: 100%;
  align-items: center;
  font-size: 25px;
  justify-content: space-around;
  max-width: 150px;
  margin: auto;
}
section.header .header-row-1 .box-redes a {
  color: #10404b;
  display: inline-block;
  transition: 0.3s all;
}
section.header .header-row-1 .box-redes a:hover {
  transform: translateY(-2px);
  color: #599aa8;
}
section.header .header-row-2 {
  position: relative;
  z-index: 2000;
  padding: 20px 0;
  /* ====== MENU PRINCIPAL ====== */
}
section.header .header-row-2 ul.menu-principal {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  margin: 0;
  padding: 0;
  list-style: none;
}
section.header .header-row-2 ul.menu-principal > li.menu-item {
  position: relative;
  list-style: none;
  /* Links de 1º nível */
  /* ====== ITEM COM SUBMENU ====== */
}
section.header .header-row-2 ul.menu-principal > li.menu-item > a,
section.header .header-row-2 ul.menu-principal > li.menu-item .dropdown > a {
  color: #323232;
  font-family: "DM Sans", sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.9;
  text-decoration: none;
  position: relative;
  transition: color 0.2s;
  /* sublinhado animado (só para itens SEM submenu) */
}
section.header .header-row-2 ul.menu-principal > li.menu-item > a::before,
section.header .header-row-2 ul.menu-principal > li.menu-item .dropdown > a::before {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -3px;
  width: 0;
  height: 2px;
  background: #023766;
  opacity: 0;
  transition: width 0.2s, left 0.2s, opacity 0.2s;
}
section.header .header-row-2 ul.menu-principal > li.menu-item > a:hover, section.header .header-row-2 ul.menu-principal > li.menu-item > a.active,
section.header .header-row-2 ul.menu-principal > li.menu-item .dropdown > a:hover,
section.header .header-row-2 ul.menu-principal > li.menu-item .dropdown > a.active {
  color: #023766;
}
section.header .header-row-2 ul.menu-principal > li.menu-item > a:hover::before, section.header .header-row-2 ul.menu-principal > li.menu-item > a.active::before,
section.header .header-row-2 ul.menu-principal > li.menu-item .dropdown > a:hover::before,
section.header .header-row-2 ul.menu-principal > li.menu-item .dropdown > a.active::before {
  left: 0;
  width: 100%;
  opacity: 1;
}
section.header .header-row-2 ul.menu-principal > li.menu-item.has-sub {
  /* “ponte” invisível para não perder o hover entre o item e o balão */
  /* ====== BALÃO DO SUBMENU ====== */
}
section.header .header-row-2 ul.menu-principal > li.menu-item.has-sub .dropdown-toggle {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  /* não sublinhar o item com submenu */
}
section.header .header-row-2 ul.menu-principal > li.menu-item.has-sub .dropdown-toggle::before, section.header .header-row-2 ul.menu-principal > li.menu-item.has-sub .dropdown-toggle::after {
  display: none;
}
section.header .header-row-2 ul.menu-principal > li.menu-item.has-sub .dropdown-toggle .caret {
  width: 8px;
  height: 8px;
  border-right: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: rotate(45deg);
  margin-top: -2px;
}
section.header .header-row-2 ul.menu-principal > li.menu-item.has-sub > .dropdown {
  position: relative;
}
section.header .header-row-2 ul.menu-principal > li.menu-item.has-sub > .dropdown::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 100%;
  height: 16px;
  /* sem background — apenas captura o hover */
}
section.header .header-row-2 ul.menu-principal > li.menu-item.has-sub > .dropdown > .dropdown-menu {
  /* Força sobre Bootstrap (que deixa display:none) */
  display: block !important;
  position: absolute;
  top: calc(100% + 16px); /* surge depois da “ponte” */
  left: 0;
  min-width: 310px;
  padding: 24px 28px;
  background: #053a66;
  border-radius: 20px;
  box-shadow: 0 18px 40px rgba(0, 0, 0, 0.22);
  z-index: 3000;
  opacity: 0;
  visibility: hidden;
  transform: translateY(8px);
  pointer-events: none;
  transition: opacity 0.18s ease, transform 0.18s ease, visibility 0s 0.18s;
}
section.header .header-row-2 ul.menu-principal > li.menu-item.has-sub > .dropdown > .dropdown-menu::before {
  content: "";
  position: absolute;
  top: -11px;
  left: 24px;
  width: 22px;
  height: 22px;
  background: #053a66;
  border-left: 3px solid #1d5a86;
  border-top: 3px solid #1d5a86;
  transform: rotate(45deg);
}
section.header .header-row-2 ul.menu-principal > li.menu-item.has-sub > .dropdown > .dropdown-menu li {
  list-style: none;
  padding: 14px 0;
}
section.header .header-row-2 ul.menu-principal > li.menu-item.has-sub > .dropdown > .dropdown-menu li:not(:last-child) {
  border-bottom: 2px solid #f6911d;
}
section.header .header-row-2 ul.menu-principal > li.menu-item.has-sub > .dropdown > .dropdown-menu li a.link-dropdown {
  display: block;
  color: #fff;
  font-family: "DM Sans", sans-serif;
  font-size: 20px;
  font-style: normal;
  font-weight: 800;
  line-height: normal;
  transition: opacity 0.2s;
  position: relative;
}
section.header .header-row-2 ul.menu-principal > li.menu-item.has-sub > .dropdown > .dropdown-menu li a.link-dropdown:hover {
  opacity: 0.9;
  text-decoration: underline;
}
section.header .header-row-2 ul.menu-principal > li.menu-item.has-sub:hover > .dropdown > .dropdown-menu, section.header .header-row-2 ul.menu-principal > li.menu-item.has-sub:focus-within > .dropdown > .dropdown-menu, section.header .header-row-2 ul.menu-principal > li.menu-item.has-sub.is-open > .dropdown > .dropdown-menu {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
  pointer-events: auto;
  transition: opacity 0.18s ease, transform 0.18s ease, visibility 0s;
}
section.header .header-row-2 ul.menu-principal li.menu-social {
  display: inline-flex;
  align-items: center;
  gap: 12px;
}
section.header .header-row-2 ul.menu-principal li.menu-social strong {
  color: #023766;
  font-family: "DM Sans", sans-serif;
  font-weight: 700;
  font-size: 16px;
  line-height: 1.9;
  white-space: nowrap;
}
@media (max-width: 991px) {
  section.header .header-row-2 ul.menu-principal {
    gap: 14px;
  }
  section.header .header-row-2 ul.menu-principal li.menu-item.has-sub > .dropdown > .dropdown-menu {
    position: static;
    width: 100%;
    border: 0;
    border-radius: 0;
    box-shadow: none;
    background: transparent;
    padding: 8px 0 0;
    display: block !important;
    opacity: 1;
    visibility: visible;
    transform: none;
    pointer-events: auto;
  }
  section.header .header-row-2 ul.menu-principal li.menu-item.has-sub > .dropdown > .dropdown-menu::before {
    display: none;
  }
  section.header .header-row-2 ul.menu-principal li.menu-item.has-sub > .dropdown > .dropdown-menu li {
    border-bottom: 1px solid #e6eef5;
  }
  section.header .header-row-2 ul.menu-principal li.menu-item.has-sub > .dropdown > .dropdown-menu li a.link-dropdown {
    color: #323232;
    font-weight: 700;
    font-size: 16px;
    padding: 10px 0;
  }
}
section.header .header-row-2 .menu-social strong {
  color: #f6911d;
  font-family: "DM Sans", sans-serif;
  font-size: 16px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  padding: 0 10px;
}
section.header .header-row-2 .menu-social::before {
  content: "";
  width: 5px;
  height: 22px;
  border-radius: 20px;
  background: #023766;
  flex-shrink: 0;
  display: inline-block;
}
section.header .header-row-2 .menu-social ul.redes-sociais-menu li a::before {
  display: none;
}
section.header .header-row-3 {
  background-color: #10404b;
  padding: 15px 0;
}
section.header .header-row-3 ul.categorias-principais {
  padding: 0;
  margin: 0;
  display: flex;
  justify-content: space-between;
}
section.header .header-row-3 ul.categorias-principais li {
  padding: 0;
  margin: 0;
  list-style: none;
}
section.header .header-row-3 ul.categorias-principais li a {
  display: flex;
  gap: 10px;
  align-items: center;
  transition: 0.5s all;
}
section.header .header-row-3 ul.categorias-principais li a .icon {
  width: 37px;
  height: 35px;
  transition: 0.6s all;
  text-align: center;
}
section.header .header-row-3 ul.categorias-principais li a .icon img {
  max-width: 100%;
  max-height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
section.header .header-row-3 ul.categorias-principais li a .title-in {
  color: #fff;
  text-align: center;
  leading-trim: both;
  text-edge: cap;
  font-family: "PT Sans Caption";
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  position: relative;
}
section.header .header-row-3 ul.categorias-principais li a .title-in::before {
  position: absolute;
  content: "";
  height: 1px;
  width: 0;
  left: 50%;
  bottom: -5px;
  transition: 0.3s all;
  background-color: #fff;
  opacity: 0;
}
@media (min-width: 2px) {
  section.header .header-row-3 ul.categorias-principais li a:hover .icon {
    transform: rotateY(180deg);
  }
  section.header .header-row-3 ul.categorias-principais li a:hover .title-in::before {
    width: 100%;
    left: 0;
    opacity: 1;
  }
}
section.header a.exibir-categorias-mobile {
  text-align: center;
  justify-content: center;
  align-items: center;
  gap: 10px;
  padding: 12px 15px;
  background-color: #599aa8;
  font-size: 16px;
  font-weight: 600;
  color: white;
  margin: 15px 13px 0 13px;
  text-transform: uppercase;
  display: none;
}
section.header .box-search {
  margin-top: 10px;
}
section.header .box-search .box-input-search {
  background: #f0eeee;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-right: 20px;
  border: 1px solid #10404b;
}
section.header .box-search .box-input-search input {
  background-color: transparent;
  border: none;
  outline: none;
  color: #7b7b7b;
  font-family: Kanit;
  font-size: 15px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  padding: 10px 20px;
  width: 100%;
}
section.header .box-search .box-input-search button {
  padding: 0;
  margin: 0;
  width: auto;
  min-height: auto;
  min-width: auto;
  background-color: transparent;
  display: inline;
  outline: none;
  border: none;
}
section.header.header-scrolled {
  background: #ffffff;
  box-shadow: 0 2px 20px rgba(0, 0, 0, 0.1);
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  z-index: 1000;
}
section.header.header-scrolled .header-row-1 {
  border-bottom: 1px solid #e0e0e0;
  padding: 10px 0 15px;
}
section.header.header-scrolled .header-row-1 .main-cta {
  padding: 8px 10px;
  font-size: 14px;
}
section.header.header-scrolled .header-row-1 .main-phone .info .label {
  font-size: 12px;
}
section.header.header-scrolled .header-row-1 .main-phone .info .number {
  font-size: 14px;
}
section.header.header-scrolled .header-row-2 {
  padding: 10px 0;
}

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;
}
section.barra-lgpd.exibir {
  display: flex;
}
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;
}
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% */
}
section.barra-lgpd .text {
  color: var(--Texto-1, #141414);
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 20px; /* 142.857% */
}
section.barra-lgpd .text a {
  font-weight: 700;
  text-decoration-line: underline;
  color: #141414;
}
@media (max-width: 991px) {
  section.barra-lgpd {
    bottom: 70px;
    left: 10px;
    max-width: calc(100% - 20px);
    flex-flow: column;
    gap: 10px;
  }
  section.barra-lgpd .text {
    text-align: center;
    line-height: 1.4;
    font-size: 12px;
  }
  section.barra-lgpd .button a {
    font-size: 12px;
    padding: 8px 20px;
  }
  section.barra-lgpd .icon {
    display: none;
  }
}

body {
  font-size: 1em;
  font-family: "DM Sans", sans-serif;
  text-rendering: optimizeLegibility;
  line-height: 1.4;
  margin: auto;
  overflow-x: hidden;
  /* MODAL */
}
body main {
  overflow: hidden;
}
body div#lightbox {
  position: fixed !important;
  top: 10px !important;
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
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: 0 !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: 40px;
  border-radius: 15px;
}
body .modal-body h1 {
  color: #243352;
  font-size: 34px;
  font-weight: 700;
  text-align: center;
  margin-bottom: 8px;
  line-height: 1;
}
body .modal-body h1.terciary {
  color: #599AA8;
}
body .modal-body h3 {
  font-weight: 400;
  text-align: center;
  font-size: 16px;
}
body .modal-body form {
  margin-top: 20px;
}
body .modal-body form label {
  display: block;
  font-weight: 500;
  margin-bottom: 5px;
}
body .modal-body form input,
body .modal-body form select,
body .modal-body form textarea {
  font-size: 16px;
  padding: 10px 20px;
  border: 1px solid gray;
  width: 100%;
  margin-bottom: 15px;
  outline: none;
}
body .modal-body form textarea {
  resize: none;
  height: 100px;
  outline: none;
}
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;
}
@media screen and (max-width: 991px) {
  body .modal-body {
    padding: 15px 0;
  }
  body .modal-body h1 {
    margin-bottom: 10px;
    font-size: 24px;
    text-align: center;
  }
  body .modal-body h3 {
    text-align: center;
    font-size: 15px;
  }
  body .modal-body form {
    margin-top: 20px;
  }
  body .modal-body form label {
    font-size: 15px;
  }
  body .modal-body form input,
  body .modal-body form select,
  body .modal-body form textarea {
    font-size: 14px;
  }
}
body section.formulario-enviado {
  padding: 100px 0;
  color: #1C1C1C;
}
body section.formulario-enviado .box-in {
  text-align: center;
}
body section.formulario-enviado .box-in h5 {
  font-size: 20px;
  font-weight: 400;
  margin-top: 20px;
}
body section.formulario-enviado .box-in a {
  color: #1C1C1C;
  font-weight: 500;
  border-bottom: 1px dotted #1C1C1C;
}
body section.formulario-enviado .box-in .btn-voltar {
  color: #1C1C1C;
  padding: 10px 30px;
  border-radius: 5px;
  display: inline-block;
  margin-top: 30px;
  font-weight: 600;
  background-color: transparent;
  outline: none;
  border: 2px solid #1C1C1C;
  transition: 0.3s all;
}
body section.formulario-enviado .box-in .btn-voltar:hover {
  background-color: #1C1C1C;
  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: 24px;
  font-weight: 400;
  color: #1C1C1C;
}
body section.formulario-enviado .box-in h1 {
  font-size: 75px;
  font-weight: 500;
  line-height: 1;
}
@media (max-width: 991px) {
  body section.formulario-enviado {
    padding: 90px 0;
    text-align: center;
  }
  body section.formulario-enviado .container {
    position: relative;
    z-index: 2;
  }
  body section.formulario-enviado .box-in {
    text-align: center;
  }
  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 .politica-termos {
  padding: 40px 0px;
  color: #525252;
  background-size: cover;
}
body .politica-termos h1,
body .politica-termos h2,
body .politica-termos h3,
body .politica-termos h4,
body .politica-termos h5,
body .politica-termos h6 {
  font-size: 32px;
  font-weight: 700;
  color: #6db895;
}
body .politica-termos strong,
body .politica-termos b {
  color: #6db895;
}
@media (max-width: 991px) {
  body .politica-termos {
    padding: 20px 0px;
    font-size: 15px;
  }
  body .politica-termos h1 {
    font-size: 22px;
  }
}
body main {
  /* =======================
     Paginação
     ======================= */
  /* ===== Perguntas Frequentes (component) ===== */
  /* Pergunta (botão) */
  /* Resposta (com transição suave) */
  /* CTA */
  /* Responsivo */
  /* Acessibilidade: reduz animações se o usuário pedir */
  /* Seção Sobre – Mais */
  /* ===== Serviços - Página de categoria/interna ===== */
  /* utilidades pequenas */
  /* ============ Blog ============ */
  /* ============ BLOG – LEFT BAR (busca + categorias) ============ */
  /* DM Sans – Minimal (300/400/500/700/800) */
  /* Light 300 */
  /* Regular 400 */
  /* Medium 500 */
  /* Bold 700 */
  /* ExtraBold 800 */
}
body main .header-conteudo {
  position: relative;
  display: grid;
  grid-template-areas: "stack";
  align-items: center;
}
body main .header-conteudo.noBanner-cabecalho {
  background-color: #023766;
}
@media (max-width: 576px) {
  body main .header-conteudo {
    place-items: center;
  }
}
body main .header-conteudo .header-bg-image {
  z-index: 1;
  grid-area: stack;
}
body main .header-conteudo .header-bg-image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
body main .header-conteudo .container {
  position: relative;
  z-index: 2;
}
body main .header-conteudo .container.conteudo {
  grid-area: stack;
}
body main .header-conteudo .box-efects.shapes {
  width: 100%;
  height: 100%;
  min-height: 320px;
  padding: 30px 40px;
  display: flex;
}
body main .header-conteudo .box-header-in {
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: 80%;
}
body main .header-conteudo .title-bar h1 {
  color: #ebb632;
  font-family: "DM Sans", sans-serif;
  font-weight: 800;
  font-size: 36px;
  line-height: 1.2;
  margin: 0 0 15px 0;
}
body main .header-conteudo .description-in p {
  color: #ffffff;
  font-family: "DM Sans", sans-serif;
  font-size: 16px;
  line-height: 1.4;
  margin: 0;
}
@media (max-width: 991px) {
  body main .header-conteudo {
    min-height: auto;
  }
  body main .header-conteudo .box-efects.shapes {
    clip-path: none;
    min-height: auto;
  }
  body main .header-conteudo .box-header-in {
    width: 100%;
    text-align: center;
    align-items: center;
  }
  body main .header-conteudo .title-bar h1 {
    font-size: 28px;
  }
}
body main section.breadcrumb {
  color: #fff;
  text-align: center;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  display: flex;
  justify-content: start;
  flex-wrap: wrap;
  align-items: center;
}
body main section.breadcrumb a {
  color: white;
  margin: 0 5px;
  font-weight: 300;
  text-transform: lowercase;
}
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;
}
@media (max-width: 576px) {
  body main .page-blog-in .order-2 {
    order: 0 !important;
    padding-top: 1rem !important;
  }
  body main .page-blog-in .order-2 .categorias {
    margin-top: 0 !important;
    max-width: 100% !important;
  }
  body main .page-blog-in .order-1 {
    order: 1 !important;
    margin-top: 1rem;
  }
  body main .page-blog-in .order-1 .blog-card .blog-card-text {
    padding: 28px !important;
  }
}
body main ul.paginacao {
  display: flex;
  gap: 14px; /* espaçamento entre bolinhas */
  justify-content: center;
  align-items: center;
  margin: 48px 0 40px;
}
body main ul.paginacao li {
  list-style: none;
  margin: 0;
  padding: 0;
}
body main ul.paginacao li a {
  /* círculo */
  width: 47px;
  height: 46px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  /* tipografia */
  font-family: "DM Sans", sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  font-size: 20px;
  font-weight: 800;
  line-height: 1;
  /* estado padrão (não ativo) */
  color: #c5c5c5;
  border: 1px solid #c5c5c5;
  background: transparent;
  box-shadow: 0 0 1.5rem rgba(197, 197, 197, 0.1);
  /* micro interação */
  transition: color 0.2s ease, border-color 0.2s ease, background-color 0.2s ease, box-shadow 0.15s ease;
  /* hover/focus (não ativo) */
  /* página atual */
  /* estado desabilitado (caso use «…» ou botões fora de range) */
}
body main ul.paginacao li a:hover, body main ul.paginacao li a:focus-visible {
  color: #023766;
  border-color: #023766;
  outline: none;
  box-shadow: 0 2px 10px rgba(2, 55, 102, 0.1);
}
body main ul.paginacao li a.active {
  background: #023766;
  border-color: #023766;
  color: #fff;
}
body main ul.paginacao li a.active:hover, body main ul.paginacao li a.active:focus-visible {
  background: #023766; /* mantém cheio */
  color: #fff;
  border-color: #023766;
}
body main ul.paginacao li a.disabled, body main ul.paginacao li a[aria-disabled=true] {
  pointer-events: none;
  color: #d7d7d7;
  border-color: #e5e5e5;
  background: #fafafa;
  box-shadow: none;
}
@media (max-width: 576px) {
  body main ul.paginacao {
    padding-left: 0;
    margin-bottom: 20px;
  }
}
body main section.index-banner {
  position: relative;
}
body main section.index-banner .owl-height,
body main section.index-banner .owl-stage,
body main section.index-banner .owl-item {
  height: 100% !important;
}
body main section.index-banner .item-banner {
  height: 100%;
  display: flex;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
body main section.index-banner .item-banner .content-banner {
  display: flex;
  align-items: flex-start;
  flex-direction: column;
}
body main section.index-banner .item-banner .banner-content-container {
  height: 100%;
  display: flex;
  align-items: center;
}
body main section.index-banner .item-banner .btn-special {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
}
body main section.index-banner .item-banner .btn-special span {
  color: #023766;
  text-align: center;
  font-family: "DM Sans", sans-serif;
  font-size: 16px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
}
body main section.index-banner .item-banner .title-text {
  font-size: 36px;
  line-height: 1;
  color: #ebb632;
  font-family: "DM Sans", sans-serif;
  font-size: 35px;
  font-style: normal;
  line-height: normal;
  margin-bottom: 5px;
}
@media (max-width: 576px) {
  body main section.index-banner .item-banner .title-text {
    text-align: center;
  }
}
body main section.index-banner .item-banner .title-text p {
  margin-bottom: 0;
}
body main section.index-banner .item-banner .title-text,
body main section.index-banner .item-banner .description-text {
  font-family: Manrope;
}
body main section.index-banner .item-banner .description-text {
  color: #fff;
  font-family: "DM Sans", sans-serif;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}
body main section.index-banner .item-banner .banner-content {
  display: flex;
  flex-direction: column;
}
body main section.index-banner #bannerMobile .title-text {
  font-size: 22px;
}
body main section.index-banner #bannerMobile .owl-stage-outer {
  height: 100vh !important;
  min-height: 300px;
  max-height: 400px;
}
body main section.index-banner #bannerMobile .item-banner {
  min-height: 300px;
  max-height: 400px;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
body main section.index-banner #bannerMobile .description-text,
body main section.index-banner #bannerMobile .btn-special {
  font-size: 14px;
}
body main section.index-banner #bannerMobile .description-text span,
body main section.index-banner #bannerMobile .description-text p,
body main section.index-banner #bannerMobile .btn-special span,
body main section.index-banner #bannerMobile .btn-special p {
  font-size: 14px;
}
@media (max-width: 576px) {
  body main section.index-banner #bannerMobile .description-text span,
  body main section.index-banner #bannerMobile .description-text p,
  body main section.index-banner #bannerMobile .btn-special span,
  body main section.index-banner #bannerMobile .btn-special p {
    text-align: center;
  }
}
body main section.index-banner #bannerDesktop .owl-stage-outer {
  height: 100vh !important;
  min-height: 300px;
  max-height: 400px;
}
body main section.index-banner #bannerDesktop .item-banner {
  min-height: 300px;
  max-height: 400px;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
body main .featured-results {
  background: #fff;
  padding-block: 3rem;
}
body main .featured-results .ietm-card {
  flex-shrink: 0;
  max-width: 297px;
}
@media (max-width: 576px) {
  body main .featured-results {
    position: relative;
  }
}
@media (max-width: 767.98px) {
  body main .featured-results {
    padding-block: 2rem;
  }
}
body main .featured-results .operacao-carousel {
  position: unset;
}
body main .featured-results .result-card {
  height: 220px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 0.5rem;
  background: #fff;
  border-radius: 20px;
  box-shadow: 0 8px 25.3px 0 rgba(0, 0, 0, 0.1);
  padding: 1rem;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}
@media (min-width: 768px) {
  body main .featured-results .result-card {
    padding: 1.5rem;
  }
}
body main .featured-results .result-card .result-icon {
  margin-bottom: 0.5rem;
}
body main .featured-results .result-card .result-icon img {
  display: block;
  width: 32px;
  height: 32px;
}
body main .featured-results .result-card .result-icon i {
  font-size: 2rem;
  line-height: 1;
}
body main .featured-results .result-card .result-number {
  white-space: nowrap;
  word-break: keep-all;
  overflow-wrap: normal;
  line-height: 1;
  display: inline-flex;
  align-items: baseline;
  font-variant-numeric: tabular-nums lining-nums;
  font-feature-settings: "tnum" 1, "lnum" 1;
  min-width: 8ch;
  will-change: transform;
}
body main .featured-results .result-card .result-number span {
  color: #023766;
  font-family: "DM Sans", sans-serif;
  font-size: 48px;
  font-style: normal;
  font-weight: 800;
  line-height: normal;
}
@media (max-width: 576px) {
  body main .featured-results .result-card .result-number span {
    font-size: 24px;
  }
}
body main .featured-results .result-card .result-desc {
  color: #6c757d;
  font-size: 0.875rem;
}
body main .featured-results .result-card .result-desc span {
  color: #323232;
  font-family: "DM Sans", sans-serif;
  font-size: 20px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}
@media (max-width: 576px) {
  body main .featured-results .result-card .result-desc span {
    font-size: 16px;
  }
}
body main .featured-results .result-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.08);
}
body main .featured-servicos {
  padding: 1rem 0;
}
body main .featured-servicos .section-title {
  text-align: center;
  margin-bottom: 10px;
}
body main .featured-servicos .section-title span,
body main .featured-servicos .section-title strong,
body main .featured-servicos .section-title p {
  font-family: "DM Sans", sans-serif;
  font-size: 35px;
  font-style: normal;
}
@media (max-width: 576px) {
  body main .featured-servicos .section-title span,
  body main .featured-servicos .section-title strong,
  body main .featured-servicos .section-title p {
    font-size: 24px;
  }
}
body main .featured-servicos .section-title strong {
  color: #f6911d;
  font-weight: 800;
}
body main .featured-servicos .section-title span {
  color: #023766;
  font-weight: 300;
}
body main .featured-servicos .descricao p {
  font-family: "DM Sans", sans-serif;
  font-size: 16px;
  font-style: normal;
  text-align: center;
  font-weight: 400;
}
body main .featured-servicos .card {
  background: #023766;
  border-radius: 20px;
  overflow: hidden;
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.15);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  color: #fff;
  height: 100%;
  padding: 25px 23px 25px 24px;
}
body main .featured-servicos .card:hover {
  box-shadow: 0 12px 24px rgba(0, 0, 0, 0.2);
}
body main .featured-servicos .card .card-img-link {
  display: block;
  border-radius: 20px 20px 0 0;
  overflow: hidden;
}
body main .featured-servicos .card .card-img-link img {
  width: 100%;
  height: 220px;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 20px 20px 0 0;
  transition: transform 0.4s ease;
}
body main .featured-servicos .card .card-img-link:hover img {
  transform: scale(1.05);
}
body main .featured-servicos .card .card-body {
  padding: 1.5rem;
}
body main .featured-servicos .card .card-body .card-title {
  font-family: "DM Sans", sans-serif;
  font-weight: 800;
  font-size: 1.75em;
  margin-bottom: 0.75rem;
  color: #fff;
  font-style: normal;
  line-height: normal;
}
body main .featured-servicos .card .card-body .card-text {
  font-family: "DM Sans", sans-serif;
  font-weight: 400;
  font-size: 1rem;
  color: #fff;
  margin-bottom: 1.5rem;
  font-style: normal;
  line-height: normal;
}
body main .featured-servicos .card .card-body .card-text p {
  font-weight: 400;
  font-family: "DM Sans", sans-serif;
  font-weight: 400;
  font-size: 1rem;
  color: #fff;
  margin-bottom: 1.5rem;
  font-style: normal;
  line-height: normal;
}
body main .featured-servicos .card .card-body .row-ctas {
  display: flex;
  gap: 0.75rem;
}
body main .featured-servicos .card .card-body .row-ctas.zapEnergy .main-phone {
  padding: 1rem;
}
body main .featured-servicos .card .card-body .row-ctas .links-servicos {
  width: 100%;
  cursor: pointer;
}
body main .featured-servicos .card .card-body .row-ctas .links-servicos .btn {
  border-radius: 10px;
  padding: 0.6rem 1rem;
  font-size: 0.95rem;
  font-weight: 600;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  padding: 0.8rem 1rem;
}
body main .featured-servicos .card .card-body .row-ctas .links-servicos .btn span p {
  color: #fff;
  font-size: 16px;
  font-style: normal;
  font-weight: 800;
  line-height: normal;
  font-family: "DM Sans", sans-serif;
  margin: 0;
  position: relative;
}
body main .featured-servicos .card .card-body .row-ctas .links-servicos .btn span p:after {
  content: "";
  position: absolute;
  left: 50%;
  right: 50%;
  bottom: 0;
  background: #fff;
  height: 0;
  transition: all 300ms ease;
}
body main .featured-servicos .card .card-body .row-ctas .links-servicos .btn span p:hover:after {
  left: 0;
  right: 0;
  height: 1px;
}
body main .featured-servicos .card .card-body .row-ctas .links-servicos .btn img {
  flex-shrink: 0;
}
body main .featured-servicos .card .card-body .row-ctas .links-servicos .btn-primary {
  background: transparent;
  border: 1px solid #fff;
  color: #fff;
  transition: all 0.3s ease;
}
body main .featured-servicos .card .card-body .row-ctas .links-servicos .btn-primary:hover {
  background: rgba(255, 255, 255, 0.1);
  border-color: #fff;
  color: #fff;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
  border: 1px solid rgba(244, 244, 244, 0.364);
}
body main .featured-servicos .card .card-body .row-ctas .links-servicos .btn-primary:hover svg {
  transform: scale(1.1);
}
body main .featured-servicos .card .card-body .row-ctas .links-servicos .btn-primary:active {
  transform: translateY(0);
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
}
body main .featured-servicos .card .card-body .row-ctas .zap {
  width: 100%;
  border-radius: 10px;
  background: #00b700;
  padding: 0.6rem;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background 0.3s ease;
}
body main .featured-servicos .card .card-body .row-ctas .zap svg {
  fill: #fff;
}
body main .featured-servicos .card .card-body .row-ctas .zap:hover {
  background: rgb(30.9129032258, 176.2870967742, 85.2193548387);
}
body main .featured-servicos .row-ctas.links .btn.btn-outline-primary {
  border-radius: 10px;
  border: 1px solid #023766;
  background: transparent;
  transition: all 0.3s ease;
  padding: 0.9rem 1.2rem;
  cursor: pointer;
}
body main .featured-servicos .row-ctas.links .btn.btn-outline-primary span {
  font-size: 1rem;
  font-weight: 800;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  color: #023766;
  font-family: "DM Sans", sans-serif;
  line-height: normal;
  transition: color 0.3s ease;
  margin: 0;
  position: relative;
  padding: 5px 2px;
}
body main .featured-servicos .row-ctas.links .btn.btn-outline-primary span:after {
  content: "";
  position: absolute;
  left: 50%;
  right: 50%;
  bottom: 0;
  background: #fff;
  height: 0;
  transition: all 300ms ease;
}
body main .featured-servicos .row-ctas.links .btn.btn-outline-primary span:hover:after {
  left: 0;
  right: 0;
  height: 1px;
}
body main .featured-servicos .row-ctas.links .btn.btn-outline-primary:hover {
  background: #023766;
  border-color: #023766;
}
body main .featured-servicos .row-ctas.links .btn.btn-outline-primary:hover span {
  color: #fff;
}
body main .featured-servicos .row-ctas.links .btn.btn-outline-primary:focus {
  outline: 3px solid rgba(2, 55, 102, 0.4);
  outline-offset: 2px;
}
body main .featured-eventos {
  padding: 56px 0;
  background-image: url("../image/bg-events.png");
  background-size: cover;
  background-repeat: no-repeat;
}
body main .featured-eventos .section-title {
  text-align: center;
  margin: 0 0 28px;
}
body main .featured-eventos .section-title span,
body main .featured-eventos .section-title strong {
  font-family: "DM Sans", sans-serif;
}
body main .featured-eventos .section-title strong {
  color: #f6911d;
  font-weight: 800;
}
body main .featured-eventos .section-title span {
  color: #fff;
  font-weight: 300;
}
body main .featured-eventos .itens-events {
  display: flex;
  flex-wrap: wrap;
  gap: 15px;
  justify-content: space-between;
}
body main .featured-eventos .itens-events.owl-carousel-events.loading {
  max-height: 392px;
  overflow: hidden;
}
body main .featured-eventos .itens-events.owl-carousel-events .owl-dots {
  position: absolute;
  bottom: 0;
  left: 50%;
}
@media (max-width: 576px) {
  body main .featured-eventos .itens-events.owl-carousel-events .owl-dots {
    left: 0;
    width: 100%;
    text-align: center;
    max-width: 100%;
    overflow: hidden;
  }
}
body main .featured-eventos .card-events {
  width: 295px;
  height: 392px;
  flex-shrink: 0;
  border-radius: 22px;
  box-shadow: 0 16px 32px rgba(0, 0, 0, 0.25);
  display: flex;
}
@media (max-width: 576px) {
  body main .featured-eventos .card-events {
    width: 100%;
  }
}
body main .featured-eventos .card {
  position: relative;
  display: block;
  border-radius: 16px;
  overflow: hidden;
  transform: translateZ(0);
  height: 100%;
  width: 100%;
}
body main .featured-eventos .card .card-img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: transform 0.35s ease;
}
body main .featured-eventos .card::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 45%;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.55) 60%, rgba(0, 0, 0, 0.8) 100%);
  pointer-events: none;
}
body main .featured-eventos .card picture {
  z-index: 0;
}
body main .featured-eventos .card .card-title {
  position: absolute;
  left: 16px;
  right: 16px;
  bottom: 50px;
  margin: 0;
  color: #fff;
  font-family: "DM Sans", sans-serif;
  font-weight: 800;
  font-size: 16px;
  line-height: 1.2;
  text-shadow: 0 2px 6px rgba(0, 0, 0, 0.35);
  z-index: 1;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-align: center;
}
body main .featured-eventos .card:hover .card-img {
  transform: scale(1.03);
}
body main .featured-eventos .empty {
  color: #fff;
  text-align: center;
  opacity: 0.8;
}
body main .featured-eventos {
  padding: 56px 0;
  background-image: url("../image/bg-events.png");
  background-size: cover;
  background-repeat: no-repeat;
}
body main .featured-eventos .section-title {
  text-align: center;
  margin: 0 0 28px;
}
body main .featured-eventos .section-title span,
body main .featured-eventos .section-title strong {
  font-family: "DM Sans", sans-serif;
}
body main .featured-eventos .section-title strong {
  color: #f6911d;
  font-weight: 800;
}
body main .featured-eventos .section-title span {
  color: #fff;
  font-weight: 300;
}
body main .featured-eventos .itens-events {
  display: flex;
  flex-wrap: wrap;
  gap: 15px;
  justify-content: space-between;
}
body main .featured-eventos .itens-events.owl-carousel-events.loading {
  max-height: 392px;
  overflow: hidden;
}
body main .featured-eventos .itens-events.owl-carousel-events .owl-dots {
  position: absolute;
  bottom: 0;
  left: 50%;
}
@media (max-width: 576px) {
  body main .featured-eventos .itens-events.owl-carousel-events .owl-dots {
    left: 0;
    width: 100%;
    text-align: center;
    max-width: 100%;
    overflow: hidden;
  }
}
body main .featured-eventos .card-events {
  width: 295px;
  height: 392px;
  flex-shrink: 0;
  border-radius: 22px;
  box-shadow: 0 16px 32px rgba(0, 0, 0, 0.25);
  display: flex;
}
@media (max-width: 576px) {
  body main .featured-eventos .card-events {
    width: 100%;
  }
}
body main .featured-eventos .card {
  position: relative;
  display: block;
  border-radius: 16px;
  overflow: hidden;
  transform: translateZ(0);
  height: 100%;
  width: 100%;
}
body main .featured-eventos .card .card-img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: transform 0.35s ease;
}
body main .featured-eventos .card::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 45%;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.55) 60%, rgba(0, 0, 0, 0.8) 100%);
  pointer-events: none;
}
body main .featured-eventos .card picture {
  z-index: 0;
}
body main .featured-eventos .card .card-title {
  position: absolute;
  left: 16px;
  right: 16px;
  bottom: 50px;
  margin: 0;
  color: #fff;
  font-family: "DM Sans", sans-serif;
  font-weight: 800;
  font-size: 16px;
  line-height: 1.2;
  text-shadow: 0 2px 6px rgba(0, 0, 0, 0.35);
  z-index: 1;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-align: center;
}
body main .featured-eventos .card:hover .card-img {
  transform: scale(1.03);
}
body main .featured-eventos .empty {
  color: #fff;
  text-align: center;
  opacity: 0.8;
}
body main #index-operacoes.index-operacoes {
  padding: 65px 0 40px 0;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  background-attachment: scroll;
  max-width: 100%;
}
body main #index-operacoes.index-operacoes.home {
  background-image: none !important;
  background-color: #f6f8fb;
}
body main #index-operacoes.index-operacoes.home .container {
  background-color: #023766;
  padding: 56px 0;
}
@media (max-width: 576px) {
  body main #index-operacoes.index-operacoes {
    background-position: center top;
    position: relative;
    background-image: url("../image/Bg_operations-mobile.jpg") !important;
  }
  body main #index-operacoes.index-operacoes .container,
  body main #index-operacoes.index-operacoes .operacoes-grid {
    position: unset;
  }
}
body main #index-operacoes.index-operacoes.noBanner {
  background-image: url("../image/Bg_operations.jpg");
}
body main #index-operacoes.index-operacoes .owl-dots {
  position: absolute;
  bottom: 0;
  left: 50%;
}
@media (max-width: 576px) {
  body main #index-operacoes.index-operacoes .owl-dots {
    left: 0;
    width: 100%;
    text-align: center;
    max-width: 100%;
    overflow: hidden;
  }
}
body main #index-operacoes.index-operacoes .operacoes-header {
  text-align: center;
  margin-bottom: 28px;
}
body main #index-operacoes.index-operacoes .operacoes-header .title {
  color: #cfe3f6;
  font-weight: 600;
  font-size: clamp(18px, 2.2vw, 24px);
}
body main #index-operacoes.index-operacoes .operacoes-header .title span {
  color: #ff6a4a;
  font-weight: 800;
}
body main #index-operacoes.index-operacoes .operacoes-grid {
  list-style: none;
  margin: 0;
  padding: 0;
  gap: 16px;
  display: flex;
  justify-content: center;
  align-items: center;
}
body main #index-operacoes.index-operacoes .operacao-card {
  display: flex;
  width: 213px;
  height: 286px;
  flex-shrink: 0;
  justify-items: center;
  text-align: center;
  background: rgb(1, 33, 62);
  border-radius: 16px;
  padding: 1.4rem 30px;
  flex-direction: column;
  cursor: pointer;
  justify-content: center;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
  border-radius: 22px;
  box-shadow: 0 16px 32px rgba(0, 0, 0, 0.25);
}
@media (max-width: 576px) {
  body main #index-operacoes.index-operacoes .operacao-card {
    width: 100%;
  }
}
body main #index-operacoes.index-operacoes .operacao-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 22px rgba(0, 0, 0, 0.25);
}
body main #index-operacoes.index-operacoes .operacao-card .operacao-icon {
  width: 40px;
  height: 40px;
  margin-bottom: 10px;
}
body main #index-operacoes.index-operacoes .operacao-card .operacao-icon img,
body main #index-operacoes.index-operacoes .operacao-card .operacao-icon svg {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
body main #index-operacoes.index-operacoes .operacao-card .operacao-desc {
  color: #fff;
  font-family: "DM Sans", sans-serif;
  font-size: 20px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  text-align: start;
}
body main .featured-portifolio {
  background-repeat: no-repeat;
  background-size: cover;
  background-position: bottom left;
  padding: 40px 0 40px;
}
body main .featured-portifolio .infobox {
  padding: 0 50px;
}
@media (max-width: 576px) {
  body main .featured-portifolio .row.portifolio {
    flex-direction: column;
  }
  body main .featured-portifolio .row.portifolio .col-6 {
    width: 100%;
  }
  body main .featured-portifolio .row.portifolio .col-6 .card-body {
    padding-bottom: 10px;
  }
  body main .featured-portifolio .row.portifolio .col-6 .card-body .infobox {
    padding: 0 10px;
  }
  body main .featured-portifolio .row.portifolio .col-6 .img-events {
    margin-bottom: 10px;
  }
  body main .featured-portifolio .row.portifolio .col-6 .gallery-slide {
    height: auto !important;
  }
  body main .featured-portifolio .row.portifolio .col-6 .carousel-gallery .owl-dots {
    bottom: 15%;
  }
}
body main .featured-portifolio .section-title {
  text-align: center;
  margin-bottom: 40px;
}
body main .featured-portifolio .section-title p {
  margin-bottom: 0;
}
body main .featured-portifolio .section-title p,
body main .featured-portifolio .section-title strong {
  font-family: "DM Sans", sans-serif;
  font-style: normal;
}
body main .featured-portifolio .section-title strong {
  color: #f6911d;
  font-weight: 800;
}
body main .featured-portifolio .section-title p {
  color: #023766;
  font-weight: 300;
}
body main .featured-portifolio .gradient-title {
  background: linear-gradient(90deg, #ffb100 0%, #ff6a00 100%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}
body main .featured-portifolio .featured-card {
  border-radius: 12px;
  overflow: hidden;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}
body main .featured-portifolio .featured-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 0.75rem 1.5rem rgba(0, 0, 0, 0.08);
}
body main .featured-portifolio .featured-card .featured-thumb {
  position: relative;
}
body main .featured-portifolio .featured-card .featured-thumb img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
body main .featured-portifolio .featured-card .featured-thumb .dots {
  list-style: none;
  padding: 0;
  margin: 0;
  position: absolute;
  left: 12px;
  bottom: 12px;
  display: flex;
  gap: 6px;
}
body main .featured-portifolio .featured-card .featured-thumb .dots .dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.6);
  border: 1px solid rgba(0, 0, 0, 0.08);
}
body main .featured-portifolio .featured-card .featured-thumb .dots .dot.active {
  background: #0d6efd;
}
body main .featured-portifolio .featured-card .card-body {
  background: #fff;
  display: flex;
  flex-direction: column;
  position: relative;
  padding: 0 0 50px 0;
}
body main .featured-portifolio .featured-card .card-body .card-title,
body main .featured-portifolio .featured-card .card-body .text-desc {
  color: #023766;
  font-style: normal;
  line-height: normal;
}
body main .featured-portifolio .featured-card .card-body .card-title h4,
body main .featured-portifolio .featured-card .card-body .card-title p,
body main .featured-portifolio .featured-card .card-body .text-desc h4,
body main .featured-portifolio .featured-card .card-body .text-desc p {
  color: #023766;
  font-style: normal;
  line-height: normal;
}
body main .featured-portifolio .featured-card .card-body .card-title {
  font-size: 20px;
  font-weight: 700;
}
@media (max-width: 576px) {
  body main .featured-portifolio .featured-card .card-body .card-title {
    font-size: 16px;
    text-align: center;
  }
}
body main .featured-portifolio .featured-card .card-body .card-title h4 {
  font-size: 20px;
  font-weight: 700;
  line-height: normal;
  margin: 0;
}
body main .featured-portifolio .featured-card .card-body .card-title h4 p {
  margin: 0;
}
body main .featured-portifolio .featured-card .card-body .text-desc {
  font-size: 16px;
  font-weight: 400;
  margin: 15px 0 0 0;
}
@media (max-width: 576px) {
  body main .featured-portifolio .featured-card .card-body .text-desc {
    font-size: 14px;
    text-align: center;
  }
}
body main .featured-portifolio .featured-card .card-body .text-desc p {
  margin: 0;
}
body main .featured-portifolio .featured-card .card-body .text-muted {
  color: #6c757d !important;
}
body main .featured-portifolio .featured-card .card-body .img-events {
  display: block;
  width: 100%;
  height: 100%;
  max-height: 322px;
  margin-bottom: 70px;
  position: relative;
}
body main .featured-portifolio .featured-card .card-body .img-events .gallery-slide {
  height: 322px;
  flex-shrink: 0;
}
body main .featured-portifolio .featured-card .card-body .img-events .gallery-slide img {
  border-radius: 20px 20px 0 0;
}
body main .featured-portifolio .featured-card .card-body .carousel-gallery {
  position: relative;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
}
body main .featured-portifolio .featured-card .card-body .carousel-gallery .owl-dots {
  margin-top: 0;
  border-radius: 20px;
  background: #023766;
  position: absolute;
  bottom: -20px;
}
@media (max-width: 575.98px) {
  body main .featured-portifolio .featured-card {
    border-radius: 10px;
  }
  body main .featured-portifolio .featured-thumb .dots {
    left: 10px;
    bottom: 10px;
  }
}
body main .index-contato {
  position: relative;
  padding: 56px 0;
  background: #0e1a19;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: bottom left;
  /* background image via inline CSS var (opcional) */
  /* LEFT */
  /* RIGHT – CARD DO FORM */
  /* inputs */
  /* responsivo */
}
body main .index-contato.homenoBanner {
  background-image: url("../image/bg_contatos_home.jpg");
}
body main .index-contato .section-title {
  color: #f6911d;
  text-align: left;
}
body main .index-contato .section-title P {
  color: #f6911d;
}
@media (max-width: 576px) {
  body main .index-contato .section-title P {
    font-size: 20px;
    text-align: center;
  }
}
body main .index-contato .section-title strong {
  color: #fff;
}
@media (max-width: 576px) {
  body main .index-contato .section-title strong {
    font-size: 20px;
    text-align: center;
  }
}
body main .index-contato .card-text {
  color: #fff;
  color: #fff;
  font-family: "DM Sans", sans-serif;
  font-size: 28px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}
@media (max-width: 576px) {
  body main .index-contato .card-text {
    font-size: 20px;
    text-align: center;
  }
}
body main .index-contato .footer-descricao {
  display: flex;
  flex-direction: column;
  gap: 15px;
}
@media (max-width: 576px) {
  body main .index-contato .footer-descricao .row-ctas {
    margin: 0 auto;
  }
  body main .index-contato .footer-descricao .row-ctas .main-phone {
    max-width: 100%;
    padding: 0 30px;
  }
}
body main .index-contato .footer-descricao .row-ctas .main-phone {
  width: 100%;
}
body main .index-contato .footer-descricao .card-text {
  color: #f6911d;
  font-family: "DM Sans";
  font-size: 20px;
  font-style: normal;
  font-weight: 800;
  line-height: normal;
}
@media (max-width: 576px) {
  body main .index-contato .footer-descricao .card-text {
    font-size: 20px;
    text-align: center;
  }
}
@supports (background: paint(dummy)) {
  body main .index-contato {
    /* nada */
  }
}
body main .index-contato::before {
  /* fallback sem CSS var */
  content: "";
}
body main .index-contato[style*="--bg"] {
  background-image: var(--bg);
  background-size: cover;
  background-position: center;
}
body main .index-contato .container.big {
  position: relative;
  z-index: 2;
}
body main .index-contato__mask {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.55);
  z-index: 1;
}
body main .index-contato .form.col-lg-4.offset-lg-1 {
  margin-left: 0 !important;
  margin-right: 8.333333% !important; /* 1 coluna (1/12) */
}
body main .index-contato__left {
  color: #fff;
  max-width: 502px;
  display: flex;
  flex-direction: column;
  gap: 40px;
}
body main .index-contato__brand {
  margin-bottom: 18px;
}
@media (max-width: 576px) {
  body main .index-contato__brand {
    text-align: center;
  }
}
body main .index-contato__brand img {
  max-height: 34px;
  width: auto;
}
body main .index-contato__title {
  font-weight: 700;
  line-height: 1.2;
  margin: 0 0 10px;
  color: #fff;
}
body main .index-contato__title .hl {
  color: #ffcd3c; /* amarelo do layout */
}
body main .index-contato__subtitle {
  opacity: 0.9;
  margin-bottom: 18px;
}
body main .index-contato__zap {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 16px;
  border-radius: 999px;
  background: #1fae5b;
  color: #0c2a1b;
  font-weight: 700;
  text-decoration: none;
  transition: transform 0.15s ease, filter 0.15s ease;
}
body main .index-contato__zap i {
  font-size: 18px;
}
body main .index-contato__zap:hover {
  transform: translateY(-1px);
  filter: brightness(1.05);
}
body main .index-contato__form-card {
  padding: 60px 50px 30px 40px;
  color: #fff;
  max-width: 460px;
  border-radius: 16px;
  background: rgba(217, 217, 217, 0.1);
}
body main .index-contato__form-head {
  margin-bottom: 10px;
}
body main .index-contato__form-head h3 {
  margin: 0 0 2px;
  font-weight: 700;
}
body main .index-contato__form-head p {
  margin: 0;
  opacity: 0.85;
}
body main .index-contato .label {
  display: block;
  margin-bottom: 6px;
  color: #fff;
  font-family: "DM Sans", sans-serif;
  font-size: 16px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
}
body main .index-contato .input {
  width: 100%;
  color: #fff;
  padding: 7px 12px;
  outline: none;
  border-radius: 6px;
  border: 1px solid rgba(255, 255, 255, 0.15);
  background: rgba(255, 255, 255, 0.1);
  transition: border-color 0.15s ease, background 0.15s ease;
}
body main .index-contato .input::-moz-placeholder {
  color: rgba(255, 255, 255, 0.65);
}
body main .index-contato .input::placeholder {
  color: rgba(255, 255, 255, 0.65);
}
body main .index-contato .input:focus {
  border-color: #fff;
  background: rgba(0, 0, 0, 0.35);
}
body main .index-contato .textarea {
  resize: vertical;
}
body main .index-contato .main-cta {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  gap: 8px;
  padding: 12px 18px;
  border-radius: 10px;
  background: linear-gradient(90deg, #f6911d 0%, #ebb632 100%);
  transition: transform 0.15s ease, filter 0.15s ease;
  color: #02335d;
  text-align: center;
  font-family: "DM Sans", sans-serif;
  font-size: 16px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
}
body main .index-contato .main-cta span {
  position: relative;
}
body main .index-contato .main-cta span:after {
  content: "";
  position: absolute;
  left: 50%;
  right: 50%;
  bottom: 0;
  background: #02335d;
  height: 0;
  transition: all 300ms ease;
}
body main .index-contato .main-cta span:hover:after {
  left: 0;
  right: 0;
  height: 1px;
}
body main .index-contato .main-cta:hover {
  transform: translateY(-1px);
  filter: brightness(1.03);
}
@media (max-width: 991.98px) {
  body main .index-contato {
    padding: 40px 0;
  }
  body main .index-contato__left {
    margin-bottom: 22px;
  }
}
body main #featured-avaliacoes-home {
  background: #f2f2f2;
  padding: 56px 0;
  /* Título */
  /* Grid dos cards */
  /* Card */
  /* Estrelas */
  /* Tipografia */
  /* Responsivo */
}
@media (max-width: 576px) {
  body main #featured-avaliacoes-home {
    padding-bottom: 20px;
  }
}
body main #featured-avaliacoes-home .section-title .avaliacoes,
body main #featured-avaliacoes-home .section-title .avaliacoes p {
  margin: 0 0 32px 0;
  text-align: center;
  font-family: "DM Sans", sans-serif;
  font-size: 35px;
  font-style: normal;
  font-weight: 300; /* parte azul */
  line-height: normal;
  color: #023766;
}
body main #featured-avaliacoes-home .section-title .avaliacoes strong {
  color: #f6911d; /* parte laranja */
  font-weight: 800;
}
body main #featured-avaliacoes-home .card-itens {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1.5625rem;
}
@media (max-width: 576px) {
  body main #featured-avaliacoes-home .card-itens {
    flex-direction: column;
  }
}
body main #featured-avaliacoes-home .avaliacao-card.card {
  max-width: 417px;
  width: 100%;
  min-height: 334px;
  border-radius: 20px;
  background: #fff;
  box-shadow: 0 4px 28.7px 0 rgba(0, 0, 0, 0.15);
  border: 0;
}
body main #featured-avaliacoes-home .avaliacao-card .card-body {
  padding: 24px;
  display: flex;
  flex-direction: column;
  gap: 12px;
}
body main #featured-avaliacoes-home .rating-box {
  display: inline-flex;
  gap: 4px;
  line-height: 1;
}
body main #featured-avaliacoes-home .rating-box .star {
  display: block;
}
body main #featured-avaliacoes-home .card-text {
  color: #323232;
  font-family: "DM Sans", sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: normal;
  margin: 0;
}
body main #featured-avaliacoes-home .card-title {
  color: #023766;
  font-family: "DM Sans", sans-serif;
  font-size: 16px;
  font-weight: 700; /* nomes */
  line-height: normal;
  margin: 0;
}
body main #featured-avaliacoes-home .row-ctas.links .btn.btn-outline-primary {
  padding: 1rem 4rem;
}
@media (max-width: 1200px) {
  body main #featured-avaliacoes-home .avaliacao-card.card {
    width: 100%;
  }
  body main #featured-avaliacoes-home .row {
    gap: 16px;
  }
}
body main #sec-redes {
  background: #f2f2f2;
  padding: 56px 0 0;
  position: relative;
  z-index: 0;
  /* ------------ Título e descrição ------------ */
  /* ------------ Faixa amarela sobreposta ------------ */
  /* ------------ Responsivo ------------ */
}
body main #sec-redes::before {
  content: "";
  background-image: linear-gradient(to right, #ffffff 50%, #023766 50%);
  position: absolute;
  bottom: 0;
  left: 0;
  height: 340px;
  width: 100%;
  z-index: -1;
}
@media (max-width: 576px) {
  body main #sec-redes::before {
    background-image: linear-gradient(to bottom, #ffffff 50%, #023766 50%);
  }
}
body main #sec-redes .container {
  position: unset;
}
body main #sec-redes .redes-wrap {
  position: relative;
  position: unset;
  z-index: 10;
}
body main #sec-redes .section-title {
  margin-bottom: 5px;
}
body main #sec-redes .section-title p {
  color: #023766;
  font-family: "DM Sans", sans-serif;
  font-style: normal;
  font-weight: 300;
  line-height: normal;
  text-align: left;
  margin-bottom: 5px;
}
@media (max-width: 576px) {
  body main #sec-redes .section-title p {
    text-align: center;
  }
}
body main #sec-redes .section-title p strong {
  width: 100%;
  display: block;
}
body main #sec-redes .redes-title {
  width: 26.5rem;
  margin: 0 0 0.75rem 0;
  font-family: "DM Sans", sans-serif;
  font-size: 35px;
  line-height: normal;
  font-weight: 300;
  color: #023766;
}
body main #sec-redes .redes-title .laranja {
  color: #f6911d;
  font-weight: 800;
}
body main #sec-redes .redes-underline {
  width: 10rem;
  height: 6px;
  border-radius: 6px;
  background: #f6911d;
  margin: 0.5rem 0 1.25rem;
}
body main #sec-redes .redes-desc {
  width: 22.9rem;
  color: #323232;
  font-family: "DM Sans", sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: normal;
  margin: 0 0 1.25rem 0;
}
body main #sec-redes .redes-instagram {
  width: 100%;
  display: block;
}
@media (max-width: 576px) {
  body main #sec-redes .redes-instagram {
    text-align: center;
  }
}
body main #sec-redes .redes-instagram span {
  color: #f6911d;
  font-family: "DM Sans", sans-serif;
  font-size: 35px;
  font-style: normal;
  font-weight: 800;
  line-height: normal;
  text-align: center;
}
@media (max-width: 576px) {
  body main #sec-redes .redes-instagram span {
    text-align: center;
  }
}
body main #sec-redes .redes-panel {
  position: relative;
  z-index: 2;
  background: #023766;
  border-radius: 22px;
  padding: 1rem;
  box-shadow: 0 18px 56px rgba(2, 55, 102, 0.2);
}
body main #sec-redes .redes-gallery {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1rem;
}
body main #sec-redes .redes-gallery .gallery-stack {
  display: grid;
  grid-template-rows: repeat(2, 1fr);
  gap: 1rem;
}
body main #sec-redes .redes-gallery a {
  display: block;
  width: 100%;
  height: 100%;
  border-radius: 20px;
  overflow: hidden;
  position: relative;
  z-index: 1;
}
body main #sec-redes .redes-gallery picture {
  display: flex;
}
body main #sec-redes .redes-gallery img {
  border-radius: 20px;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: transform 0.4s ease;
  display: block;
  flex-shrink: 0;
  aspect-ratio: 79/99;
  width: 100%;
  height: 100%;
  object-fit: cover;
  -o-object-position: center;
     object-position: center;
  transition: transform 0.3s ease;
}
@media (max-width: 576px) {
  body main #sec-redes .redes-gallery img {
    aspect-ratio: unset;
  }
}
body main #sec-redes .redes-gallery a:hover img {
  transform: scale(1.02);
}
body main #sec-redes .redes-gallery a::after {
  content: "\f16d";
  font-family: "Font Awesome 5 Brands";
  font-weight: 900;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(2, 55, 102, 0.3);
  color: #ffffff;
  font-size: 3rem;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  transform: scale(1.2);
  transition: opacity 0.4s ease, transform 0.4s ease;
  z-index: 2;
  pointer-events: none;
}
body main #sec-redes .redes-gallery a:hover::after {
  opacity: 1;
  transform: scale(1);
}
@media (max-width: 767px) {
  body main #sec-redes .redes-gallery {
    grid-template-columns: 1fr;
  }
  body main #sec-redes .redes-gallery .gallery-stack {
    grid-template-columns: 1fr;
    grid-template-rows: auto;
  }
}
body main #sec-redes .tile {
  border-radius: 16px;
  overflow: hidden;
  aspect-ratio: 4/5;
  background: radial-gradient(110% 110% at 10% 0%, #0f3a67 0%, #082c4f 100%);
  box-shadow: inset 0 6px 22px rgba(0, 0, 0, 0.25);
  display: block;
}
body main #sec-redes .tile img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
}
body main #sec-redes .tile.is-ph {
  background: linear-gradient(135deg, #0f3a67, #0a2748);
}
body main #sec-redes .redes-ribbon {
  --w: 40%;
  --h: 5rem;
  position: absolute;
  left: 0;
  bottom: 0;
  width: var(--w);
  height: var(--h);
  background: #ebb632;
  border-radius: 0 44px 0 0;
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.15);
  display: flex;
  align-items: center;
  gap: 2.4rem;
  padding: 0 2rem;
  z-index: 3;
}
body main #sec-redes .redes-ribbon .icons {
  display: flex;
  align-items: center;
  width: 100%;
  gap: 2.4rem;
  justify-content: center;
}
body main #sec-redes .redes-ribbon .icons a {
  width: 30px;
  height: 30px;
  display: grid;
  place-items: center;
  transition: transform 0.15s ease;
}
body main #sec-redes .redes-ribbon .icons a svg {
  width: 100%;
  height: 100%;
  display: block;
}
body main #sec-redes .redes-ribbon .icons a:hover {
  transform: translateY(-2px);
}
body main #sec-redes .redes-ribbon .badge-count {
  margin-left: auto;
  background: #d33c2e;
  color: #fff;
  font: 700 16px "DM Sans", sans-serif;
  padding: 0.3rem 0.65rem;
  border-radius: 8px;
  line-height: 1;
}
@media (max-width: 1200px) {
  body main #sec-redes .redes-ribbon {
    width: min(44rem, 100% - 2rem);
    bottom: -1.2rem;
  }
}
@media (max-width: 991px) {
  body main #sec-redes .redes-gallery {
    gap: 0.75rem;
  }
  body main #sec-redes .redes-ribbon {
    position: static;
    width: 100%;
    height: auto;
    border-radius: 12px;
    padding: 12px 16px;
    gap: 1rem;
  }
}
body main .index-duvidas {
  height: 654px;
  padding: 50px 0 70px;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: bottom left;
}
@media (max-width: 576px) {
  body main .index-duvidas {
    height: unset;
  }
}
body main .index-duvidas .area-duvidas {
  justify-content: center;
}
body main .index-duvidas .area-duvidas .section-title {
  text-align: left;
}
body main .index-duvidas .row-ctas {
  justify-content: flex-start;
}
@media (max-width: 576px) {
  body main .index-duvidas .row-ctas {
    text-align: center;
  }
}
body main .faq {
  margin-top: 24px;
}
body main .faq-list {
  list-style: none;
  padding: 0;
  margin: 0;
  max-width: 635px;
  width: 100%;
}
body main .faq-item {
  margin-bottom: 14px;
  border-radius: 8px;
  border: 1px solid #ababab;
}
body main .faq-item__title {
  margin: 0 0 8px 0;
}
body main .faq-q {
  -moz-appearance: none;
       appearance: none;
  -webkit-appearance: none;
  border: 0;
  width: 100%;
  min-height: 50px;
  padding: 0 16px;
  display: flex;
  align-items: center;
  gap: 12px;
  background: #023766;
  color: #fff;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.1;
  border-radius: 8px;
  cursor: pointer;
  position: relative;
  transition: background 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
  /* seta */
}
body main .faq-q:hover {
  background: rgb(7, 59, 119);
}
body main .faq-q:focus-visible {
  outline: 2px solid #ffb703;
  outline-offset: 2px;
}
body main .faq-q::after {
  content: "";
  width: 10px;
  height: 10px;
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
  transform: rotate(45deg);
  margin-left: auto;
  transition: transform 0.25s ease;
  position: absolute;
  right: 10px;
}
body main .faq-q[aria-expanded=true]::after {
  transform: rotate(-135deg);
}
body main .faq-q .faq-q__text {
  display: inline-block;
  color: #fff;
  font-family: "DM Sans", sans-serif;
  font-size: 16px;
  font-style: normal;
  font-weight: 300;
  line-height: normal;
  padding: 15px;
}
body main .faq-a {
  /* truque do grid colapsável */
  display: grid;
  grid-template-rows: 0fr; /* fechado */
  overflow: hidden;
  opacity: 0;
  transform: translateY(-4px);
  transition: grid-template-rows 0.28s ease, opacity 0.28s ease, transform 0.28s ease;
  /* conteúdo interno precisa “estourar” para o grid animar */
}
body main .faq-a.is-open {
  grid-template-rows: 1fr; /* aberto */
  opacity: 1;
  transform: translateY(0);
}
body main .faq-a__box {
  overflow: hidden;
}
body main .faq-a__box {
  background: #fff;
  border: 1px solid #e6ecf3;
  border-radius: 8px;
  padding: 24px 66px 15px 33px;
  color: #023766;
  font-family: "DM Sans", sans-serif;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}
body main .faq-a__box p {
  margin: 0 0 10px 0;
}
body main .faq-a__box ul,
body main .faq-a__box ol {
  margin: 8px 0 8px 18px;
}
body main .faq-a__box a {
  color: #0a4993;
  text-decoration: underline;
}
body main .faq-all {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 10px 16px;
  border-radius: 8px;
  border: 1px solid #023766;
  color: #023766;
  text-decoration: none;
  font-weight: 600;
  margin-top: 8px;
  transition: background 0.2s ease, color 0.2s ease;
}
body main .faq-all:hover {
  background: #023766;
  color: #fff;
}
@media (max-width: 991px) {
  body main .faq-list {
    max-width: 100%;
  }
}
@media (prefers-reduced-motion: reduce) {
  body main .faq-q,
  body main .faq-a {
    transition: none !important;
  }
}
body main section.index-linha-produtos {
  position: relative;
  z-index: 2;
}
body main section.index-linha-produtos .back-blue {
  position: relative;
  width: 100%;
  z-index: -1;
}
body main section.index-linha-produtos .back-blue .mais18 {
  position: absolute;
  right: -77px;
  top: -70px;
}
body main section.index-linha-produtos .back-blue .linha-produtos-title {
  color: #FFF;
  text-align: center;
  font-family: Kanit;
  font-size: 32px;
  font-style: normal;
  font-weight: 700;
  line-height: 130%; /* 41.6px */
  position: relative;
  z-index: 1;
  padding: 30px 0;
}
body main section.index-linha-produtos .back-blue::before {
  content: "";
  position: absolute;
  top: 0;
  background: #599aa8;
  border-radius: 0px 0px 15px 15px;
  width: 100%;
  height: 206px;
  box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.15);
}
body main section.index-linha-produtos .box-categorias {
  display: flex;
  justify-content: center;
  gap: 10px;
  margin-bottom: 50px;
}
body main section.index-linha-produtos .box-categorias .box-categoria-produto {
  background: #ffffff;
  border-radius: 15px;
  width: 163.1px;
  height: 190.82px;
  position: relative;
  box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.15);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-items: center;
  justify-content: center;
  transition: 0.5s all;
  padding: 10px;
}
body main section.index-linha-produtos .box-categorias .box-categoria-produto .icon {
  width: 65px;
  height: 57px;
  margin-bottom: 10px;
  display: block;
  padding: 5px;
}
body main section.index-linha-produtos .box-categorias .box-categoria-produto .icon img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: center;
     object-position: center;
}
body main section.index-linha-produtos .box-categorias .box-categoria-produto .title-in {
  display: block;
  color: #10404B;
  text-align: center;
  leading-trim: both;
  text-edge: cap;
  font-family: "PT Sans Caption";
  font-size: 16px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  transition: 0.5s all;
}
body main section.index-linha-produtos .box-categorias .box-categoria-produto:hover {
  transform: translateY(-15px);
  background-color: #10404B;
}
body main section.index-linha-produtos .box-categorias .box-categoria-produto:hover .title-in {
  color: white;
}
@media (max-width: 991px) {
  body main section.index-linha-produtos {
    background: #599aa8;
  }
  body main section.index-linha-produtos .back-blue {
    text-align: center;
  }
  body main section.index-linha-produtos .back-blue::before {
    display: none;
  }
  body main section.index-linha-produtos .back-blue .mais18 {
    position: relative;
    top: auto;
    right: auto;
    height: 150px;
  }
  body main section.index-linha-produtos .back-blue .linha-produtos-title {
    padding-top: 0;
  }
  body main section.index-linha-produtos .box-categorias {
    flex-wrap: wrap;
  }
  body main section.index-linha-produtos .box-categorias .box-categoria-produto {
    flex: calc(50% - 10px) 1 1;
  }
}
body main section.index-destaque-produtos {
  padding: 50px 0;
}
body main section.index-destaque-produtos.bg-destaque-hospitalar {
  background-image: url("../image/bg-detaque-home-hospitalar.png");
  background-size: 550px;
  background-position: right bottom;
  background-repeat: no-repeat;
}
body main section.index-destaque-produtos .row-head-title-destaque {
  display: flex;
  justify-content: space-between;
  margin-bottom: 15px;
}
body main section.index-destaque-produtos .row-head-title-destaque h2.title-categoria-destaque {
  color: #243352;
  font-family: Kanit;
  font-size: 32px;
  font-style: normal;
  font-weight: 600;
  line-height: normal;
}
@media (max-width: 991px) {
  body main section.index-destaque-produtos .row-head-title-destaque h2.title-categoria-destaque {
    font-size: 22px;
  }
}
body main section.index-destaque-produtos .row-head-title-destaque a {
  display: block;
  color: #243352;
  text-align: center;
  font-family: Kanit;
  font-size: 15px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  text-decoration-line: underline;
  text-decoration-style: solid;
  -webkit-text-decoration-skip-ink: none;
          text-decoration-skip-ink: none;
  text-decoration-thickness: auto;
  text-underline-offset: auto;
  text-underline-position: from-font;
  white-space: nowrap;
}
body main section.index-destaque-produtos .owl-produtos-destaque .owl-dots {
  display: none;
}
body main section.index-destaque-produtos.bg-destaque-estetica, body main section.index-destaque-produtos.bg-produto-relacionados {
  background-size: cover;
  background-repeat: no-repeat;
}
body main section.index-destaque-produtos.bg-destaque-estetica .row-head-title-destaque h2.title-categoria-destaque, body main section.index-destaque-produtos.bg-produto-relacionados .row-head-title-destaque h2.title-categoria-destaque {
  color: white;
}
body main section.index-destaque-produtos.bg-destaque-estetica .row-head-title-destaque a, body main section.index-destaque-produtos.bg-produto-relacionados .row-head-title-destaque a {
  color: white;
}
body main section.index-destaque-produtos.bg-destaque-estetica ul.carousel-tool-dots .custom-dots-destaque-in, body main section.index-destaque-produtos.bg-produto-relacionados ul.carousel-tool-dots .custom-dots-destaque-in {
  background-color: rgba(255, 255, 255, 0.16);
}
body main section.index-destaque-produtos.bg-destaque-estetica ul.carousel-tool-dots .custom-dots-destaque-in.active, body main section.index-destaque-produtos.bg-destaque-estetica ul.carousel-tool-dots .custom-dots-destaque-in:hover, body main section.index-destaque-produtos.bg-produto-relacionados ul.carousel-tool-dots .custom-dots-destaque-in.active, body main section.index-destaque-produtos.bg-produto-relacionados ul.carousel-tool-dots .custom-dots-destaque-in:hover {
  background-color: rgb(255, 255, 255);
}
body main section.index-destaque-produtos.bg-destaque-estetica {
  background-image: url("../image/bg-destaque-estetica.jpg");
}
body main section.index-destaque-produtos.bg-produto-relacionados {
  background-image: url("../image/bg-produto-interna.jpg");
}
@media (max-width: 991px) {
  body main section.index-destaque-produtos {
    background-position: 80%;
  }
}
body main section.index-mais-que-produtos {
  background-image: url("../image/bg-mais-que-produtos.jpg");
  background-size: cover;
  background-repeat: no-repeat;
  padding: 30px 0;
}
body main section.index-mais-que-produtos .img-principal-box {
  display: flex;
  height: 100%;
  width: 100%;
  align-items: end;
}
body main section.index-mais-que-produtos .img-principal-box .img-principal {
  max-width: 100%;
  max-height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
body main section.index-mais-que-produtos .conteudo-main-box {
  padding-left: 20px;
}
body main section.index-mais-que-produtos .conteudo-main-box .conteudo-principal {
  color: #000;
  font-family: Kanit;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}
body main section.index-mais-que-produtos .conteudo-main-box .conteudo-principal h1, body main section.index-mais-que-produtos .conteudo-main-box .conteudo-principal h2 {
  color: #243352;
  font-family: Kanit;
  font-size: 38px;
  font-style: normal;
  font-weight: 600;
  line-height: normal;
}
body main section.index-mais-que-produtos .conteudo-main-box .conteudo-principal ul {
  margin: 0;
  padding: 0;
}
body main section.index-mais-que-produtos .conteudo-main-box .conteudo-principal ul li {
  list-style: none;
  position: relative;
  display: flex;
  gap: 20px;
  margin: 0 0 15px 0;
  padding: 10px 25px;
  color: #243352;
  font-family: Poppins;
  font-size: 16px;
  font-style: normal;
  font-weight: 600;
  line-height: normal;
  border-radius: 10px;
  background: #FFF;
  align-items: center;
}
body main section.index-mais-que-produtos .conteudo-main-box .conteudo-principal ul li::before {
  content: url("../image/chevron-green.png");
}
@media (max-width: 991px) {
  body main section.index-mais-que-produtos .conteudo-main-box {
    padding-left: 0;
  }
  body main section.index-mais-que-produtos .conteudo-main-box .conteudo-principal {
    margin-top: 15px;
    text-align: center;
  }
  body main section.index-mais-que-produtos .conteudo-main-box .conteudo-principal h1, body main section.index-mais-que-produtos .conteudo-main-box .conteudo-principal h2 {
    font-size: 27px;
    line-height: 1;
  }
  body main section.index-mais-que-produtos .main-cta {
    margin: 15px auto 0 auto;
    display: block;
  }
}
body main section.index-vantagens {
  background-image: url("../image/bg-vantagens.png");
  background-size: cover;
  background-repeat: no-repeat;
  padding: 15px 0;
}
body main section.index-vantagens .row-vantagens {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 5px;
}
body main section.index-vantagens .row-vantagens .box-vantagem {
  flex: calc(25% - 20px) 0 0;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
}
body main section.index-vantagens .row-vantagens .box-vantagem .img-in {
  width: 50px;
  height: 50px;
  margin-bottom: 5px;
}
body main section.index-vantagens .row-vantagens .box-vantagem .img-in img {
  max-width: 100%;
  max-height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
body main section.index-vantagens .row-vantagens .box-vantagem .title-in {
  color: #FFF;
  font-family: Poppins;
  font-size: 16px;
  font-style: normal;
  font-weight: 600;
  line-height: normal;
  text-align: center;
}
@media (max-width: 991px) {
  body main section.index-vantagens {
    background-position: 80%;
  }
  body main section.index-vantagens .row-vantagens {
    flex-direction: column;
    flex-wrap: nowrap;
  }
  body main section.index-vantagens .row-vantagens .box-vantagem {
    flex: 100% 1 1;
  }
}
body main section.index-promo {
  padding: 0 0 50px 0;
  background-image: url("../image/bg-index-promo.jpg");
  background-repeat: no-repeat;
  background-size: cover;
}
body main section.index-promo .banner-promo {
  max-width: 100%;
  max-height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
body main section.index-quer-saber-mais {
  padding: 65px 0 40px 0;
  background-image: url("../image/bg-index-promo.jpg");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: bottom left;
}
body main section.index-quer-saber-mais .box-imgs .img-principal {
  margin-bottom: 21px;
  width: 100%;
}
body main section.index-quer-saber-mais .box-imgs .img-principal img {
  width: 100%;
  max-width: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
body main section.index-quer-saber-mais .box-imgs .conteudo-box-in {
  border-radius: 16.965px;
  background: #599AA8;
  padding: 24px;
  height: 100%;
}
body main section.index-quer-saber-mais .box-imgs .conteudo-box-in .txt-in {
  max-width: 254px;
  color: var(--1, #FFF);
  leading-trim: both;
  text-edge: cap;
  font-family: "Plus Jakarta Sans";
  font-size: 16px;
  font-style: normal;
  font-weight: 600;
  line-height: 120%; /* 19.2px */
}
body main section.index-quer-saber-mais .box-imgs .conteudo-box-in img {
  width: 100%;
  max-width: 112px;
  -o-object-fit: contain;
     object-fit: contain;
  margin-bottom: 18px;
}
body main section.index-quer-saber-mais .box-imgs .img-secundaria {
  width: 100%;
  max-width: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
body main section.index-quer-saber-mais .texto-form {
  color: #000;
  font-family: Kanit;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  margin-bottom: 28px;
}
body main section.index-quer-saber-mais .texto-form h1, body main section.index-quer-saber-mais .texto-form h2 {
  color: var(--4, #050319);
  leading-trim: both;
  text-edge: cap;
  font-family: Kanit;
  font-size: 32px;
  font-style: normal;
  font-weight: 600;
  line-height: 120%; /* 38.4px */
}
body main section.index-quer-saber-mais form .box-input {
  margin-bottom: 36px;
}
body main section.index-quer-saber-mais form .box-input label {
  color: var(--4, #050319);
  leading-trim: both;
  text-edge: cap;
  font-family: "Plus Jakarta Sans";
  font-size: 16px;
  font-style: normal;
  font-weight: 600;
  line-height: 120%; /* 19.2px */
  margin-bottom: 10px;
}
body main section.index-quer-saber-mais form .box-input input:not(.form-check-input),
body main section.index-quer-saber-mais form .box-input textarea, body main section.index-quer-saber-mais form .box-input select {
  display: flex;
  width: 100%;
  padding: 15px 15px;
  align-items: center;
  gap: 10px;
  align-self: stretch;
  border-radius: 9px;
  border: 2px solid var(--6, #E3E3E3);
  background: var(--1, #FFF);
  color: var(--3, #595959);
  font-family: "Plus Jakarta Sans";
  font-size: 15px;
  font-style: normal;
  font-weight: 400;
  line-height: 140%;
}
body main section.index-quer-saber-mais form .box-input input:not(.form-check-input) option,
body main section.index-quer-saber-mais form .box-input textarea option, body main section.index-quer-saber-mais form .box-input select option {
  color: var(--3, #595959);
}
body main section.index-quer-saber-mais form .box-input input:not(.form-check-input)::-moz-placeholder, body main section.index-quer-saber-mais form .box-input textarea::-moz-placeholder, body main section.index-quer-saber-mais form .box-input select::-moz-placeholder {
  color: #9f9f9f;
}
body main section.index-quer-saber-mais form .box-input input:not(.form-check-input)::placeholder,
body main section.index-quer-saber-mais form .box-input textarea::placeholder, body main section.index-quer-saber-mais form .box-input select::placeholder {
  color: #9f9f9f;
}
body main section.index-quer-saber-mais form button.main-cta {
  border-radius: 10px;
  background: #10404B;
  margin-top: 0;
}
@media (max-width: 991px) {
  body main section.index-quer-saber-mais {
    padding: 30px 0;
  }
  body main section.index-quer-saber-mais .box-imgs .conteudo-box-in {
    text-align: center;
  }
  body main section.index-quer-saber-mais .box-imgs .conteudo-box-in .txt-in {
    max-width: unset;
  }
  body main section.index-quer-saber-mais .box-imgs .img-principal {
    margin: auto;
    height: 100%;
  }
  body main section.index-quer-saber-mais .box-imgs .img-principal img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
  body main section.index-quer-saber-mais .texto-form {
    text-align: center;
    margin: 25px 0;
  }
  body main section.index-quer-saber-mais .texto-form h2 {
    font-size: 27px;
  }
}
body main section.index-quer-saber-mais form .box-input {
  margin-bottom: 15px;
}
body main section.index-fornecedores {
  padding: 60px 0;
  background-image: url("../image/bg-fornecedores.jpg");
  background-size: cover;
  background-repeat: no-repeat;
}
body main section.index-fornecedores .icon {
  text-align: center;
}
body main section.index-fornecedores h2 {
  color: var(--4, #050319);
  text-align: center;
  leading-trim: both;
  text-edge: cap;
  font-family: Kanit;
  font-size: 32px;
  font-style: normal;
  font-weight: 600;
  line-height: 120%; /* 38.4px */
  margin-bottom: 26px;
}
body main section.index-fornecedores .thumb-fornecedores {
  border-radius: 15px;
  border: 1px solid #ABABAB;
  background: #FFF;
  padding: 29px 42px;
}
body main section.index-fornecedores .thumb-fornecedores img {
  width: 100%;
  max-width: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
body main section.index-fornecedores .box-depoimentos {
  padding: 60px 0 60px;
}
body main section.index-fornecedores .box-depoimentos .box-list-depoimentos-left {
  position: relative;
}
body main section.index-fornecedores .box-depoimentos .box-list-depoimentos-left .depoimentos-fornecedores-bar {
  pointer-events: none;
  position: absolute;
  top: 0;
  right: 5px;
  height: 100%;
  width: 2px;
  background-color: #599AA8;
  display: flex;
  flex-direction: column;
  justify-content: space-around;
  align-items: center;
}
body main section.index-fornecedores .box-depoimentos .box-list-depoimentos-left .depoimentos-fornecedores-bar .circle-in {
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background-color: #599AA8;
  transition: 0.3s all;
}
body main section.index-fornecedores .box-depoimentos .box-list-depoimentos-left .depoimentos-fornecedores-bar .circle-in.active {
  width: 14px;
  height: 14px;
}
body main section.index-fornecedores .box-depoimentos .box-list-depoimentos-left .box-depoimento {
  border-radius: 15px;
  padding: 33px 43px;
  transition: 0.3s all;
  max-width: 365px;
  cursor: pointer;
}
body main section.index-fornecedores .box-depoimentos .box-list-depoimentos-left .box-depoimento.active {
  background-color: #FFF;
  box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.15);
}
body main section.index-fornecedores .box-depoimentos .box-list-depoimentos-left .box-depoimento .nome-in {
  color: #274760;
  font-family: Kanit;
  font-size: 20px;
  font-style: normal;
  font-weight: 700;
  line-height: 130%; /* 26px */
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  text-overflow: ellipsis;
  height: "";
}
body main section.index-fornecedores .box-depoimentos .box-list-depoimentos-left .box-depoimento .empresa-in {
  color: #274760;
  font-family: "PT Sans Caption";
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  text-overflow: ellipsis;
  height: "";
}
body main section.index-fornecedores .box-depoimentos .box-list-depoimentos-right .box-depoimento {
  display: flex;
  gap: 17px;
  opacity: 0;
  height: 100%;
  max-height: 0;
  overflow: hidden;
  transition: 0.5s all;
}
body main section.index-fornecedores .box-depoimentos .box-list-depoimentos-right .box-depoimento.active {
  opacity: 1;
  max-height: 200px;
}
body main section.index-fornecedores .box-depoimentos .box-list-depoimentos-right .box-depoimento .icon {
  width: 30px;
}
body main section.index-fornecedores .box-depoimentos .box-list-depoimentos-right .box-depoimento .depoimento-in {
  width: calc(100% - 47px);
  color: #555;
  leading-trim: both;
  text-edge: cap;
  font-family: Kanit;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}
body main section.index-fornecedores .box-depoimentos .box-list-depoimentos-right .box-depoimento .depoimento-in .stars {
  margin-top: 15px;
}
body main section.index-fornecedores .box-depoimentos a.main-cta {
  background-color: #274760;
}
@media (max-width: 991px) {
  body main section.index-fornecedores {
    padding: 30px 0;
  }
  body main section.index-fornecedores h2 {
    font-size: 27px;
  }
  body main section.index-fornecedores .box-depoimentos {
    padding: 0;
    margin-top: 30px;
  }
  body main section.index-fornecedores .box-depoimentos .box-list-depoimentos-left {
    margin-top: 15px;
  }
  body main section.index-fornecedores .box-depoimentos .box-list-depoimentos-left .box-depoimento {
    max-width: 280px;
  }
  body main section.index-fornecedores .box-depoimentos .box-list-depoimentos-right .box-depoimento.active {
    max-height: 400px;
  }
}
body main .sobre-mais {
  background: #f6f8fb;
  padding: 72px 0;
}
@media (max-width: 576px) {
  body main .sobre-mais {
    padding: 40px 0 40px;
  }
}
body main .sobre-mais .section-title {
  text-align: left;
  margin-bottom: 15px;
}
body main .sobre-mais .section-title p {
  color: #f6911d;
  font-weight: 800;
  margin-bottom: 0;
}
body main .sobre-mais .section-title p:first-child {
  color: #023766;
  font-weight: 300;
}
@media (max-width: 576px) {
  body main .sobre-mais .section-title p {
    font-size: 24px;
  }
  body main .sobre-mais .section-title strong {
    font-size: 24px;
  }
}
body main .sobre-mais .container.big {
  max-width: 1240px;
}
body main .sobre-mais__grid {
  display: grid;
  grid-template-columns: 1.05fr 1fr;
  gap: 40px;
  align-items: center;
}
@media (max-width: 576px) {
  body main .sobre-mais__grid {
    display: flex;
    flex-direction: column;
  }
}
@media (max-width: 992px) {
  body main .sobre-mais__grid {
    grid-template-columns: 1fr;
    gap: 28px;
  }
}
body main .sobre-mais__desc {
  margin-bottom: 0 0 20px;
  padding-bottom: 10px;
}
body main .sobre-mais__desc p {
  font-family: "DM Sans", sans-serif;
  font-size: 16px;
  line-height: 1.6;
  color: #323232;
  margin-bottom: 0;
}
body main .sobre-mais .row-ctas p a {
  border-radius: 10px;
  border: 1px solid #023766;
  background: transparent;
  transition: all 0.3s ease;
  padding: 0.9rem 1.2rem;
  cursor: pointer;
  font-size: 1rem;
  font-weight: 800;
  color: #023766;
  font-family: "DM Sans", sans-serif;
  line-height: normal;
  transition: color 0.3s ease;
  margin: 0;
  position: relative;
  padding: 5px 2px;
}
body main .sobre-mais .row-ctas p a:after {
  content: "";
  position: absolute;
  left: 50%;
  right: 50%;
  bottom: 0;
  background: #fff;
  height: 0;
  transition: all 300ms ease;
}
body main .sobre-mais .row-ctas p a:hover:after {
  left: 0;
  right: 0;
  height: 1px;
}
body main .sobre-mais .row-ctas p a:hover {
  background: #023766;
  border-color: #023766;
}
body main .sobre-mais .row-ctas p a:hover span {
  color: #fff;
}
body main .sobre-mais .row-ctas p a:focus {
  outline: 3px solid rgba(2, 55, 102, 0.4);
  outline-offset: 2px;
}
@media (max-width: 576px) {
  body main .sobre-mais .row-ctas {
    text-align: center;
  }
}
@media (max-width: 576px) {
  body main .sobre-mais .video {
    text-align: center;
    max-width: 100%;
  }
}
body main .sobre-mais .video .open-video {
  position: relative;
  display: grid;
  grid-template-areas: "video";
  place-items: center;
}
body main .sobre-mais .video .open-video picture {
  grid-area: video;
  z-index: 0;
}
@media (max-width: 576px) {
  body main .sobre-mais .video .open-video picture img {
    text-align: center;
    max-width: 100%;
  }
}
body main .sobre-mais .video .open-video svg {
  grid-area: video;
  z-index: 1;
}
@media (max-width: 576px) {
  body main .sobre-mais .video .open-video svg {
    max-width: 40px;
  }
  body main .sobre-mais .video .open-video svg img {
    text-align: center;
    max-width: 100%;
  }
}
body main .video-thumb {
  position: relative;
  display: block;
  border-radius: 10px;
  overflow: hidden;
  /* moldura azul fina ao redor da imagem */
}
body main .video-thumb__img {
  display: block;
  width: 100%;
  height: 100%;
  max-height: 360px;
  -o-object-fit: cover;
     object-fit: cover;
  filter: brightness(0.9);
  transition: transform 0.35s ease, filter 0.35s ease;
}
@media (max-width: 576px) {
  body main .video-thumb__img {
    max-height: 300px;
  }
}
body main .video-thumb__frame {
  position: absolute;
  inset: 0;
  border-radius: 10px;
  pointer-events: none;
  box-shadow: 0 0 0 3px #1e3f67 inset; /* cor da borda */
  z-index: 1;
}
body main .video-thumb__play {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 70px;
  height: 70px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.2);
  border: 2px solid #fff;
  z-index: 2;
  transition: transform 0.25s ease, background 0.25s ease;
  /* ícone (triângulo) */
}
body main .video-thumb__play::before {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-40%, -50%);
  width: 0;
  height: 0;
  border-left: 18px solid #fff;
  border-top: 12px solid transparent;
  border-bottom: 12px solid transparent;
}
body main .video-thumb:hover .video-thumb__img {
  transform: scale(1.02);
  filter: brightness(1);
}
body main .video-thumb:hover .video-thumb__play {
  transform: translate(-50%, -50%) scale(1.06);
  background: rgba(255, 255, 255, 0.28);
}
body main section.index-instagram {
  padding: 40px 0;
}
body main section.index-instagram .box-insta-main {
  border-radius: 24px;
  border: 1px solid #A1A1A1;
  background: #FFF;
  display: flex;
}
body main section.index-instagram .box-insta-main .box-insta-left {
  flex: 40% 1 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  height: 100%;
  padding: 50px 50px 50px 74px;
}
body main section.index-instagram .box-insta-main .box-insta-left .icon {
  margin-bottom: 10px;
}
body main section.index-instagram .box-insta-main .box-insta-left h2.title-in {
  color: #10404B;
  font-family: Kanit;
  font-size: 35.853px;
  font-style: normal;
  font-weight: 600;
  line-height: normal;
}
body main section.index-instagram .box-insta-main .box-insta-left a.link-insta {
  margin: 10px 0;
  color: #555;
  leading-trim: both;
  text-edge: cap;
  font-family: Kanit;
  font-size: 17.927px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}
body main section.index-instagram .box-insta-main .box-insta-right {
  border-radius: 24px;
  background: #70AA7D;
  padding: 25px 50px;
}
body main section.index-instagram .box-insta-main .box-insta-right a img {
  width: 100%;
  height: 100%;
  max-width: 222px;
  max-height: 222px;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 9px;
}
@media (max-width: 991px) {
  body main section.index-instagram {
    padding: 30px 0;
  }
  body main section.index-instagram .box-insta-main {
    flex-direction: column;
  }
  body main section.index-instagram .box-insta-main .box-insta-left {
    padding: 30px 50px;
  }
  body main section.index-instagram .box-insta-main .box-insta-left h2.title-in {
    font-size: 25px;
  }
  body main section.index-instagram .box-insta-main .box-insta-right {
    padding: 30px 15px;
  }
  body main section.index-instagram .box-insta-main .box-insta-right a img {
    display: block;
    margin: 0 auto 30px auto;
    max-width: 300px;
    max-height: 300px;
  }
}
body main section.index-blog {
  padding: 50px 0 70px;
  background-image: url("../image/bg-blog.jpg");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: bottom left;
}
body main section.index-blog h2 {
  text-align: center;
  font-family: Kanit;
  font-size: 32px;
  font-style: normal;
  font-weight: 600;
  line-height: 120%; /* 38.4px */
  margin-bottom: 36px;
  font-family: "DM Sans", sans-serif;
  font-size: 35px;
  font-style: normal;
  line-height: normal;
  color: #023766;
  font-weight: 300;
}
body main section.index-blog h2 strong {
  font-weight: 800;
  color: #f6911d;
}
body main section.index-blog .blog-card {
  display: block;
  border-radius: 20px;
  background: #fff;
  box-shadow: 0 4px 28.7px 0 rgba(0, 0, 0, 0.15);
}
body main section.index-blog .blog-card .blog-img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  overflow: hidden;
  margin-bottom: 22px;
  transition: 0.3s all;
  border-radius: 20px 20px 0 0;
}
body main section.index-blog .blog-card .blog-img:hover {
  filter: grayscale(0.3);
}
body main section.index-blog .blog-card .content-desc {
  padding: 15px 60px 15px 54px;
}
body main section.index-blog .blog-card h3 {
  font-style: normal;
  font-weight: 600;
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  text-overflow: ellipsis;
  height: "";
  margin-bottom: 22px;
  transition: 0.3s all;
  color: #023766;
  font-family: "DM Sans", sans-serif;
  font-size: 20px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
}
body main section.index-blog .blog-card h3:hover {
  text-decoration: underline;
}
body main section.index-blog .blog-card .resumo {
  font-size: 13.521px;
  font-style: normal;
  font-weight: 400;
  line-height: 140%; /* 18.929px */
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  text-overflow: ellipsis;
  height: "";
  margin-bottom: 15px;
  transition: 0.3s all;
}
body main section.index-blog .blog-card .resumo:hover {
  text-decoration: underline;
}
body main section.index-blog .blog-card .continue {
  color: #f6911d;
  font-family: "DM Sans", sans-serif;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  position: relative;
}
body main section.index-blog .blog-card .continue:after {
  content: "";
  position: absolute;
  left: 50%;
  right: 50%;
  bottom: 0;
  background: #f6911d;
  height: 0;
  transition: all 300ms ease;
}
body main section.index-blog .blog-card .continue:hover:after {
  left: 0;
  right: 0;
  height: 1px;
}
@media (max-width: 991px) {
  body main section.index-blog {
    padding: 30px 0;
  }
  body main section.index-blog h2 {
    font-size: 27px;
  }
  body main section.index-blog .blog-card .blog-img {
    margin-bottom: 5px;
    height: 200px;
  }
  body main section.index-blog .blog-card h3 {
    font-size: 20px;
    margin-bottom: 5px;
  }
  body main section.index-blog .blog-card .resumo {
    margin-bottom: 5px;
  }
}
body main section.index-bg-middle-site {
  background-image: url("../image/bg-middle-site.png");
  background-repeat: no-repeat;
  background-position: center right;
  background-size: 800px;
}
body main .page-sobre section.bg-sobre-nos {
  background-image: url("../image/bg-sobre-nos.png");
  background-repeat: no-repeat;
  background-size: 1000px;
  background-position: 100% 100px;
}
body main .page-sobre section.sobre-galeria-fotos {
  padding: 15px 0 60px;
  background: url("../image/bg-sobre-galeria.png") 50% 85%/cover no-repeat;
}
body main .page-sobre section.sobre-galeria-fotos h2 {
  color: #023766;
  text-align: center;
  font-family: "DM Sans", sans-serif;
  font-size: 35px;
  font-weight: 800;
  line-height: normal;
  margin-bottom: 20px;
}
body main .page-sobre section.sobre-galeria-fotos .container.big.arrow {
  position: relative;
}
body main .page-sobre section.sobre-galeria-fotos .container.big.footer {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}
body main .page-sobre section.sobre-galeria-fotos .container.big.footer .text-desc {
  margin-top: 60px;
  display: flex;
  justify-content: center;
  align-items: center;
}
@media (max-width: 576px) {
  body main .page-sobre section.sobre-galeria-fotos .container.big.footer .text-desc {
    margin-top: 20px;
  }
  body main .page-sobre section.sobre-galeria-fotos .container.big.footer .text-desc p {
    width: 100%;
  }
}
body main .page-sobre section.sobre-galeria-fotos .container.big.footer .text-desc.saiba-mais p {
  width: 100%;
  color: #323232;
  text-align: center;
  font-family: "DM Sans";
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}
body main .page-sobre section.sobre-galeria-fotos .container.big.footer .text-desc p {
  width: 50%;
  color: #023766;
  text-align: center;
  font-family: "DM Sans", sans-serif;
  font-size: 25px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}
@media (max-width: 576px) {
  body main .page-sobre section.sobre-galeria-fotos .container.big.footer .text-desc p {
    width: 100%;
    padding: 0 1rem;
    text-align: left;
  }
}
body main .page-sobre section.sobre-galeria-fotos .container .row-ctas {
  text-align: center;
}
body main .page-sobre section.sobre-galeria-fotos .owl-carousel {
  /* CARD (link) com a largura do Figma */
  /* imagem/picture preenche o card */
  /* NAV (setas) – centralizado verticalmente */
  /* uma seta em cada lado */
}
body main .page-sobre section.sobre-galeria-fotos .owl-carousel .galeria-in {
  display: block;
  width: 369px; /* <- largura fixa do card */
  border-radius: 20px;
  overflow: hidden; /* garante cantos arredondados */
}
body main .page-sobre section.sobre-galeria-fotos .owl-carousel .galeria-in picture,
body main .page-sobre section.sobre-galeria-fotos .owl-carousel .galeria-in img {
  display: block;
  width: 100%;
  height: 504px !important; /* bate com o layout */
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 20px;
}
body main .page-sobre section.sobre-galeria-fotos .owl-carousel .owl-nav {
  position: absolute;
  bottom: 50%;
  left: -40px;
  right: -40px;
  transform: translateY(-50%);
  z-index: 5;
  pointer-events: none; /* só os botões recebem clique */
}
body main .page-sobre section.sobre-galeria-fotos .owl-carousel .owl-nav button {
  position: absolute;
  width: 44px;
  height: 44px;
  border: 0;
  border-radius: 999px;
  background: #fff;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.15);
  display: flex;
  align-items: center;
  justify-content: center;
  color: #10404b; /* se usar fonte/símbolo */
  pointer-events: auto;
  transition: transform 0.15s ease, box-shadow 0.15s ease, opacity 0.15s ease;
  /* se estiver usando SVG no navText, pinta o path */
}
body main .page-sobre section.sobre-galeria-fotos .owl-carousel .owl-nav button svg {
  width: 22px;
  height: 22px;
}
body main .page-sobre section.sobre-galeria-fotos .owl-carousel .owl-nav button svg path {
  fill: #10404b;
}
body main .page-sobre section.sobre-galeria-fotos .owl-carousel .owl-nav .owl-prev {
  left: -16px;
}
body main .page-sobre section.sobre-galeria-fotos .owl-carousel .owl-nav .owl-next {
  right: -16px;
}
body main .page-sobre section.sobre-galeria-fotos .owl-carousel .owl-nav button:hover {
  transform: scale(1.05);
  box-shadow: 0 6px 18px rgba(0, 0, 0, 0.22);
}
body main .page-sobre section.sobre-galeria-fotos .owl-carousel .owl-nav button.disabled {
  opacity: 0.35;
  cursor: default;
  pointer-events: none;
}
@media (max-width: 576px) {
  body main .page-sobre section.sobre-galeria-fotos .owl-carousel .galeria-in {
    width: 100%;
  }
  body main .page-sobre section.sobre-galeria-fotos .owl-carousel .owl-dots {
    width: 100%;
    max-width: 100%;
  }
  body main .page-sobre section.sobre-galeria-fotos .text-desc {
    margin-top: 20px;
  }
}
@media (max-width: 991px) {
  body main .page-sobre section.sobre-galeria-fotos h2 {
    font-size: 27px;
  }
  body main .page-sobre section.sobre-galeria-fotos .owl-carousel {
    /* card menor no mobile */
  }
  body main .page-sobre section.sobre-galeria-fotos .owl-carousel .galeria-in {
    width: 100%;
  }
  body main .page-sobre section.sobre-galeria-fotos .owl-carousel .galeria-in picture,
  body main .page-sobre section.sobre-galeria-fotos .owl-carousel .galeria-in img {
    height: 250px !important;
  }
  body main .page-sobre section.sobre-galeria-fotos .owl-carousel .owl-nav .owl-prev {
    left: 6px;
  }
  body main .page-sobre section.sobre-galeria-fotos .owl-carousel .owl-nav .owl-next {
    right: 6px;
  }
  body main .page-sobre section.sobre-galeria-fotos .owl-carousel .owl-nav button {
    width: 38px;
    height: 38px;
  }
}
body main .page-sobre .section-title {
  text-align: left;
  margin-bottom: 15px;
}
body main .page-sobre .section-title p {
  color: #f6911d;
  font-weight: 800;
  margin-bottom: 0;
}
body main .page-sobre .section-title p:first-child {
  color: #023766;
  font-weight: 300;
}
body main .page-sobre .sobre-mais__desc.intro {
  color: #323232;
  font-family: "DM Sans", sans-serif;
  font-size: 22.216px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
}
body main .page-sobre .sobre-nos {
  display: block;
  float: left;
  width: 100%;
  background-color: #023766;
  padding: 70px 0;
}
@media (max-width: 576px) {
  body main .page-sobre .sobre-nos .img-sobre-main {
    display: block;
    float: left;
    width: 100%;
    margin-bottom: 1rem;
  }
  body main .page-sobre .sobre-nos .img-sobre-main picture {
    display: block;
    float: left;
    width: 100%;
  }
  body main .page-sobre .sobre-nos .img-sobre-main picture img {
    max-width: 100%;
  }
}
body main .page-sobre .sobre-nos .section-title {
  color: #fff;
  font-family: "DM Sans", sans-serif;
  font-size: 35px;
  font-style: normal;
  font-weight: 300;
  line-height: normal;
}
body main .page-sobre .sobre-nos .section-title strong {
  color: #f6911d;
  font-size: 35px;
  font-weight: 700;
}
body main .page-sobre .sobre-nos .itens-texts {
  padding-left: 2.5rem;
}
body main .page-sobre .sobre-nos .texto-sobre-nos {
  color: #fff;
  font-family: "DM Sans", sans-serif;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}
body main .page-sobre .mvv-section {
  padding: 60px 0;
  display: block;
  float: left;
  background-color: #f2f2f2;
  width: 100%;
}
body main .page-sobre .mvv-section .mvv-grid {
  align-items: stretch;
}
body main .page-sobre .mvv-section .mvv-card {
  position: relative;
  height: 100%;
  background: #fff;
  border: none;
  border-radius: 12px;
  max-width: 400px;
  padding: 40px 50px;
  transition: transform 0.2s, box-shadow 0.2s;
  display: flex;
  flex-direction: column;
  border-radius: 20px;
  background: #fff;
  box-shadow: 0 8px 25.3px 0 rgba(0, 0, 0, 0.1);
}
body main .page-sobre .mvv-section .mvv-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 12px 28px rgba(11, 58, 99, 0.14);
}
body main .page-sobre .mvv-section .mvv-icon {
  width: 28px;
  height: 28px;
}
body main .page-sobre .mvv-section .mvv-icon img,
body main .page-sobre .mvv-section .mvv-icon picture,
body main .page-sobre .mvv-section .mvv-icon svg {
  width: 100%;
  height: 100%;
  display: block;
}
body main .page-sobre .mvv-section .mvv-title {
  position: relative;
  z-index: 2;
  margin: 30px 0 8px;
  color: #023766;
  font-family: "DM Sans", sans-serif;
  font-size: 35px;
  font-style: normal;
  font-weight: 800;
  line-height: normal;
}
body main .page-sobre .mvv-section .mvv-content {
  position: relative;
  z-index: 2;
  padding: 6px 6px 0;
}
body main .page-sobre .mvv-section .mvv-content p {
  margin: 0;
  color: #323232;
  font-family: "DM Sans", sans-serif;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}
body main .page-sobre .mvv-section .mvv-content ul {
  margin: 0;
  padding-left: 20px;
}
body main .page-sobre .mvv-section .mvv-content ul li {
  font-family: "DM Sans", sans-serif;
  color: #323232;
  font-size: 16px;
  line-height: 1.5;
  margin-bottom: 6px;
  list-style: disc;
}
@media (max-width: 991px) {
  body main .page-sobre .mvv-section .mvv-title {
    font-size: 24px;
  }
  body main .page-sobre .mvv-section .mvv-card {
    padding: 24px 20px;
  }
  body main .page-sobre .mvv-section .mvv-card::after {
    top: 68px;
    left: 16px;
    right: 16px;
    bottom: 16px;
  }
}
body main .page-sobre .mvv-section .visually-hidden {
  position: absolute !important;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(1px, 1px, 1px, 1px);
  white-space: nowrap;
  border: 0;
}
body main section {
  display: block;
  float: left;
  width: 100%;
}
body main .page-servicos {
  /* ===== Servicos – bloco kVA (cards) ===== */
}
body main .page-servicos #featured-eventos.featured-eventos {
  background-image: unset;
  background-color: #f2f2f2;
}
body main .page-servicos .featured-servicos {
  padding: 3rem 0 0;
}
body main .page-servicos .featured-servicos .row.my-5 {
  margin-top: 1.5rem !important;
  margin-bottom: 2rem !important;
}
body main .page-servicos .featured-servicos .section-title {
  margin-bottom: 0;
}
body main .page-servicos .featured-servicos .section-title p {
  margin-bottom: 0;
}
body main .page-servicos .incluso-solucoes {
  padding: 0 0 12px;
}
@media (max-width: 576px) {
  body main .page-servicos .incluso-solucoes .section-title {
    margin-bottom: 0;
  }
}
body main .page-servicos .incluso-solucoes .inc-grid {
  display: flex;
  flex-wrap: nowrap;
  align-content: center;
  justify-content: center;
  align-items: center;
  gap: 30px;
}
@media (max-width: 576px) {
  body main .page-servicos .incluso-solucoes .inc-grid {
    flex-direction: column;
    padding: 20px;
    gap: 20px;
  }
}
body main .page-servicos .incluso-solucoes .inc-card {
  background: #fff;
  min-height: 186px;
  padding: 32px 24px;
  display: flex;
  flex-direction: column;
  gap: 16px;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
  width: 297px;
  flex-shrink: 0;
  border-radius: 20px;
  background: #fff;
  box-shadow: 0 8px 25.3px 0 rgba(0, 0, 0, 0.1);
}
@media (max-width: 576px) {
  body main .page-servicos .incluso-solucoes .inc-card {
    width: 100%;
  }
}
body main .page-servicos .incluso-solucoes .inc-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 12px 32px rgba(0, 0, 0, 0.1);
}
body main .page-servicos .incluso-solucoes .inc-card__icon {
  width: 17px;
  height: 17px;
}
body main .page-servicos .incluso-solucoes .inc-card__icon img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
body main .page-servicos .incluso-solucoes .inc-card__text {
  color: #323232;
  font-family: "DM Sans", sans-serif;
  font-size: 20px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}
body main .page-servicos .incluso-solucoes .inc-card__text p {
  margin: 0;
}
body main .page-servicos .servicos-kva {
  padding: 60px 0 40px;
  display: block;
  float: left;
  width: 100%;
  /* Grid com 2 colunas de cards (297 x 150 aprox.) */
  /* Responsivo */
}
@media (max-width: 576px) {
  body main .page-servicos .servicos-kva {
    padding: 20px 0 40px;
  }
}
body main .page-servicos .servicos-kva .kva-wrap {
  display: flex;
  align-items: center;
  justify-content: center;
  align-items: stretch;
  -moz-column-gap: 60px;
       column-gap: 60px;
}
body main .page-servicos .servicos-kva .kva-wrap .item-primary {
  display: flex;
  flex-direction: column;
}
body main .page-servicos .servicos-kva .kva-wrap .kvas {
  text-align: left;
  margin-bottom: 0;
}
@media (max-width: 576px) {
  body main .page-servicos .servicos-kva .kva-wrap .kvas {
    text-align: center;
  }
}
body main .page-servicos .servicos-kva .section-title {
  font-style: normal;
  line-height: normal;
}
body main .page-servicos .servicos-kva .section-title p {
  margin-bottom: 0;
  line-height: normal;
}
body main .page-servicos .servicos-kva .kva-intro {
  margin-top: 15px;
}
body main .page-servicos .servicos-kva .kva-text {
  color: #323232;
  font-family: "DM Sans", sans-serif;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  max-width: 400px;
}
@media (max-width: 576px) {
  body main .page-servicos .servicos-kva .kva-text {
    padding: 10px;
  }
}
body main .page-servicos .servicos-kva .kva-text p {
  margin: 0;
}
body main .page-servicos .servicos-kva .kva-grid {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(2, minmax(260px, 300px));
  gap: 22px;
  justify-content: start; /* mantém alinhado à esquerda */
}
body main .page-servicos .servicos-kva .kva-card {
  border-radius: 20px;
  background: #fff;
  box-shadow: 0 8px 25.3px 0 rgba(0, 0, 0, 0.1);
  min-height: 150px;
  width: 100%;
  max-width: 297px;
  padding: 18px 20px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  transition: transform 0.18s ease, box-shadow 0.18s ease, background-color 0.18s ease;
}
body main .page-servicos .servicos-kva .kva-card:hover, body main .page-servicos .servicos-kva .kva-card:focus-within {
  transform: translateY(-2px);
  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.12);
  background-color: #ffffff;
}
body main .page-servicos .servicos-kva .kva-card__icon {
  margin-bottom: 10px;
}
body main .page-servicos .servicos-kva .kva-card__icon img,
body main .page-servicos .servicos-kva .kva-card__icon picture img,
body main .page-servicos .servicos-kva .kva-card__icon svg {
  display: block;
  width: 17px; /* ícone pequeno como no layout */
  height: auto;
}
body main .page-servicos .servicos-kva .kva-card__label, body main .page-servicos .servicos-kva .kva-card__value {
  font-family: "DM Sans", sans-serif;
  color: #323232;
  line-height: normal;
  font-style: normal;
}
body main .page-servicos .servicos-kva .kva-card__label {
  font-size: 16px;
  font-weight: 400;
}
body main .page-servicos .servicos-kva .kva-card__value {
  font-size: 25px;
  font-weight: 700;
}
@media (max-width: 576px) {
  body main .page-servicos .servicos-kva .item-secundary {
    padding: 10px;
  }
}
@media (max-width: 991px) {
  body main .page-servicos .servicos-kva .kva-wrap {
    flex-direction: column;
    row-gap: 40px;
    -moz-column-gap: 0;
         column-gap: 0;
  }
  body main .page-servicos .servicos-kva .kva-grid {
    grid-template-columns: 1fr;
    gap: 16px;
  }
  body main .page-servicos .servicos-kva .kva-card {
    max-width: 100%;
    min-height: 120px;
  }
}
body main .page-servicos #featured-portifolio-home.services.noBanner {
  background-color: #023766;
}
body main .page-servicos #featured-portifolio-home.services .section-title.contatos p {
  color: #fff;
  font-weight: 300;
}
body main .page-servicos #featured-portifolio-home.services .section-title.contatos strong {
  color: #f6911d;
  font-weight: 800;
}
body main .page-servicos #featured-portifolio-home.services .card-text.contatos {
  font-size: 25px;
  font-style: normal;
}
body main .page-servicos #featured-portifolio-home.services .index-contato__form-card .main-cta {
  color: #fff;
}
body main .rounded-20 {
  border-radius: 20px;
}
body main .shadow-soft {
  box-shadow: 0 12px 32px rgba(2, 55, 102, 0.1);
}
body main .page-servico {
  background-color: #f2f2f2;
  /* CARDS PROBLEMA / SOLUÇÃO */
  /* “X” central entre os dois cards */
  /* MINI-CARDS (“pílulas”) + CTA */
  /* ===== Eventos que atendemos ===== */
  /* setas do owl */
  /* botão do CTA de eventos (não ocupar 100%) */
  /* responsivo */
}
body main .page-servico .img-events {
  flex: 0 0 724px; /* <<< FIXO EM 724PX */
  width: 724px;
  height: 409px;
  border-radius: 20px;
  overflow: hidden;
  position: relative;
  /* tudo dentro ocupa 100% do bloco, sem forçar 720px */
  /* dots do owl sobre a imagem */
}
@media (max-width: 576px) {
  body main .page-servico .img-events {
    width: auto;
    height: auto;
  }
}
body main .page-servico .img-events .carousel-gallery,
body main .page-servico .img-events .gallery-img,
body main .page-servico .img-events .gallery-slide,
body main .page-servico .img-events .gallery-slide picture,
body main .page-servico .img-events .gallery-slide img,
body main .page-servico .img-events .owl-stage-outer,
body main .page-servico .img-events .owl-stage,
body main .page-servico .img-events .owl-item {
  width: 100%;
  height: 100% !important;
  display: block;
  -o-object-fit: cover;
     object-fit: cover;
}
body main .page-servico .img-events .gallery-img {
  display: flex;
  align-items: center;
  justify-content: center;
}
body main .page-servico .img-events .gallery-img .owl-nav.disabled {
  display: none;
}
body main .page-servico .img-events .gallery-img .owl-dots {
  position: absolute;
  left: 50%;
  bottom: 20px;
  transform: translateX(-50%);
  margin-top: 0;
  border-radius: 20px;
  background: #023766;
  padding: 10px 30px;
}
body main .page-servico .img-events .gallery-img .owl-dots .owl-dot {
  opacity: 0.38;
  background: #d9d9d9;
}
body main .page-servico .img-events .gallery-img .owl-dots .owl-dot.active {
  opacity: 1;
  background: #ebb632;
}
body main .page-servico .hero .hero-media {
  border-radius: 14px;
  overflow: hidden;
}
body main .page-servico .hero .hero-copy .hero-title {
  color: #023766;
  font-family: "DM Sans", sans-serif;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
}
@media (max-width: 576px) {
  body main .page-servico .hero .hero-copy .hero-title {
    width: 100%;
  }
}
body main .page-servico .hero .hero-copy .hero-title p {
  margin-bottom: 0;
}
body main .page-servico .hero .hero-copy .hero-lead {
  color: #323232;
  font-family: "DM Sans", sans-serif;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  margin-top: 5px;
}
body main .page-servico .card-soft {
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 10px 26px rgba(0, 0, 0, 0.08);
  padding: 59px 99px 20px;
  border-radius: 25px;
  border: 1px solid #c6c6c6;
  background: #fff;
}
@media (max-width: 576px) {
  body main .page-servico .card-soft {
    padding: 20px;
  }
}
body main .page-servico .card-soft__title {
  margin: 0 0 10px;
  color: #023766;
  font-family: "DM Sans", sans-serif;
  font-size: 25px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
}
body main .page-servico .card-soft__body {
  color: #323232;
  font-family: "DM Sans", sans-serif;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}
body main .page-servico .card-soft__body ul li {
  margin-bottom: 10px;
}
body main .page-servico .card-soft__body p {
  margin-bottom: 10px;
}
body main .page-servico .duo-cards .duo-sep {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 90px;
  height: 90px;
  border-radius: 50%;
  background: #023766;
  color: #fff;
  display: grid;
  place-items: center;
  font: 800 14px/1 "DM Sans", sans-serif;
  text-transform: uppercase;
  box-shadow: 0 10px 26px rgba(0, 0, 0, 0.1);
  pointer-events: none;
  fill: #023766;
  filter: drop-shadow(0 4px 15.3px rgba(0, 0, 0, 0.25));
  margin-top: 0;
}
body main .page-servico .duo-cards .duo-sep span {
  color: #ebb632;
  font-family: "DM Sans", sans-serif;
  font-size: 35px;
  font-style: normal;
  font-weight: 800;
  line-height: normal;
}
@media (max-width: 576px) {
  body main .page-servico .duo-cards {
    margin-top: 0.5rem !important;
  }
}
body main .page-servico .mini-cards__title {
  margin: 0 0 12px;
  color: #023766;
  font: 700 16px/1.3 "DM Sans";
  text-align: center;
}
body main .page-servico .mini-cards .mini-card {
  display: flex;
  align-items: center;
  gap: 10px;
  border-radius: 12px;
  background: #fff;
  border: 1px solid rgba(2, 55, 102, 0.08);
  box-shadow: 0 10px 22px rgba(0, 0, 0, 0.06);
  padding: 18px 16px;
  text-decoration: none;
  transition: transform 0.15s ease, box-shadow 0.15s ease;
}
body main .page-servico .mini-cards .mini-card__dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #023766;
  opacity: 0.85;
  flex: 0 0 8px;
}
body main .page-servico .mini-cards .mini-card__title {
  color: #0d2f55;
  font: 700 14px/1.35 "DM Sans";
}
body main .page-servico .mini-cards .mini-card:hover {
  transform: translateY(-1px);
  box-shadow: 0 14px 28px rgba(0, 0, 0, 0.1);
}
body main .page-servico .mini-cards .btn-wa {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  height: 40px;
  padding: 0 18px;
  border-radius: 10px;
  font: 700 14px/1 "DM Sans";
  color: #fff;
  background: #25d366;
  text-decoration: none;
  box-shadow: 0 10px 24px rgba(37, 211, 102, 0.25);
  transition: transform 0.15s ease, filter 0.15s ease;
}
body main .page-servico .mini-cards .btn-wa svg {
  width: 18px;
  height: 18px;
}
body main .page-servico .mini-cards .btn-wa:hover {
  filter: brightness(1.03);
  transform: translateY(-1px);
}
body main .page-servico .mini-cards .btn-wa:active {
  transform: translateY(0);
}
body main .page-servico .evt-atendidos {
  position: relative;
}
body main .page-servico .evt-atendidos .evt-list {
  list-style: none;
  margin: 0;
  padding: 30px 60px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 7px; /* espaço entre os cards */
}
@media (max-width: 576px) {
  body main .page-servico .evt-atendidos .evt-list {
    padding: 30px 0 !important;
    width: 100vw;
    position: relative;
    left: 50%;
    right: 50%;
    margin-left: -50vw;
    margin-right: -50vw;
  }
}
@media (max-width: 576px) {
  body main .page-servico .evt-atendidos .evt-list .owl-stage-outer {
    padding-left: 0 !important;
    padding-right: 0 !important;
    overflow: visible !important;
  }
}
@media (max-width: 576px) {
  body main .page-servico .evt-atendidos .evt-list .owl-stage {
    display: flex;
    align-items: center;
  }
}
@media (max-width: 576px) {
  body main .page-servico .evt-atendidos .evt-list .owl-item {
    width: 85% !important;
    margin-right: 0 !important;
    display: flex;
    justify-content: center;
    padding: 10px 0;
    transition: all 0.3s ease;
    transform: scale(0.95);
  }
  body main .page-servico .evt-atendidos .evt-list .owl-item.active {
    opacity: 1 !important;
    transform: scale(1);
    z-index: 2;
  }
}
@media (max-width: 576px) {
  body main .page-servico .evt-atendidos .evt-list .evt-item {
    display: flex;
    justify-content: center;
    width: 100%;
  }
}
body main .page-servico .evt-atendidos .evt-list .evt-card {
  display: flex;
  align-items: flex-start;
  flex-direction: column;
  gap: 12px;
  min-height: 173px;
  padding: 30px 40px;
  border-radius: 20px;
  color: #fff;
  background: #023766;
  box-shadow: 0 8px 25.3px 0 rgba(0, 0, 0, 0.1);
  cursor: pointer;
  transition: all 0.3s ease-in-out;
}
@media (max-width: 576px) {
  body main .page-servico .evt-atendidos .evt-list .evt-card {
    width: 100%;
    margin: 0 auto;
    max-width: 280px;
    min-height: 150px;
    padding: 20px 25px;
  }
}
body main .page-servico .evt-atendidos .evt-list .evt-card:hover {
  background: rgb(1.7057692308, 46.9086538462, 86.9942307692);
  transform: translateY(1px);
  box-shadow: 0 12px 35px 0 rgba(0, 0, 0, 0.15);
}
@media (max-width: 576px) {
  body main .page-servico .evt-atendidos .evt-list .evt-card:hover {
    transform: translateY(1px);
  }
}
body main .page-servico .evt-atendidos .evt-list .evt-card.hover-gradient {
  background: linear-gradient(135deg, #023766 0%, #022a4d 100%);
}
body main .page-servico .evt-atendidos .evt-list .evt-card.hover-gradient:hover {
  background: linear-gradient(135deg, rgb(1.2153846154, 33.4230769231, 61.9846153846) 0%, rgb(0.9670886076, 20.3088607595, 37.2329113924) 100%);
}
body main .page-servico .evt-atendidos .evt-list .evt-icon {
  width: 18px;
  height: 18px;
  flex: 0 0 18px;
  color: #ebb632; /* detalhe amarelado */
  display: grid;
  place-items: center;
}
body main .page-servico .evt-atendidos .evt-list .evt-icon img,
body main .page-servico .evt-atendidos .evt-list .evt-icon svg {
  width: 17px;
  height: 17px;
  display: block;
}
body main .page-servico .evt-atendidos .evt-list .evt-text {
  color: #fff;
  font-family: "DM Sans", sans-serif;
  font-size: 23px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}
@media (max-width: 576px) {
  body main .page-servico .evt-atendidos .evt-list .evt-text {
    font-size: 20px;
  }
}
body main .page-servico .evt-atendidos .evt-list .evt-text p {
  margin: 0;
}
body main .page-servico .evt-atendidos .evt-list .evt-text p + p {
  margin-top: 4px;
}
@media (max-width: 576px) {
  body main .page-servico .evt-atendidos .owl-nav .owl-prev {
    left: 10px !important;
    background: rgba(255, 255, 255, 0.9) !important;
    border: 1px solid #023766 !important;
    width: 40px !important;
    height: 40px !important;
  }
  body main .page-servico .evt-atendidos .owl-nav .owl-next {
    right: 10px !important;
    background: rgba(255, 255, 255, 0.9) !important;
    border: 1px solid #023766 !important;
    width: 40px !important;
    height: 40px !important;
  }
}
@media (max-width: 576px) {
  body main .page-servico .evt-atendidos .owl-dots {
    margin-top: 15px;
  }
  body main .page-servico .evt-atendidos .owl-dots .owl-dot {
    width: 10px;
    height: 10px;
  }
  body main .page-servico .evt-atendidos .owl-dots .owl-dot.active span {
    background: #f6911d;
  }
}
body main .page-servico .evt-list.owl-carousel .owl-nav {
  position: unset;
  top: unset;
  left: unset;
  display: flex;
  gap: 30px;
  text-align: center;
  width: 100%;
  justify-content: space-evenly;
}
body main .page-servico .evt-list.owl-carousel .owl-nav button {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  border: 1px solid rgba(2, 55, 102, 0.15);
  background: #fff;
  display: grid;
  place-items: center;
  color: #023766;
  font-size: 18px;
  box-shadow: 0 4px 12px rgba(2, 55, 102, 0.08);
  transition: background 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}
body main .page-servico .evt-list.owl-carousel .owl-nav button:hover {
  background: #023766;
  color: #fff;
  border-color: #023766;
}
body main .page-servico .evt-list.owl-carousel .owl-nav .owl-prev {
  position: absolute;
  left: 1%;
}
body main .page-servico .evt-list.owl-carousel .owl-nav .owl-next {
  position: absolute;
  right: 1%;
}
body main .page-servico .evt-list.owl-carousel .owl-nav .owl-prev,
body main .page-servico .evt-list.owl-carousel .owl-nav .owl-next {
  top: 50%;
  transform: translateY(-50%);
  border: none;
  background: unset;
  box-shadow: unset;
}
body main .page-servico .evt-list.owl-carousel .owl-nav .owl-prev:hover,
body main .page-servico .evt-list.owl-carousel .owl-nav .owl-next:hover {
  background: #fff;
  color: #023766;
  border-color: rgba(2, 55, 102, 0.15);
}
body main .page-servico .evt-cta {
  /* wrapper para centralizar */
  display: flex;
  justify-content: center;
  margin: 12px 0 30px;
}
@media (max-width: 576px) {
  body main .page-servico .evt-cta {
    margin: 25px 0 30px;
  }
}
body main .page-servico .btn-wa--inline {
  /* só esta variação */
  display: inline-flex;
  align-items: center;
  gap: 10px;
  box-shadow: none;
  padding: 0 60px;
  width: auto; /* >>> tira o 100% */
  max-width: 100%;
}
@media (max-width: 576px) {
  body main .page-servico .btn-wa--inline {
    padding: 0 40px;
  }
}
body main .page-servico .pag-servicos-about {
  padding: 48px 0 50px 0;
  display: block;
  float: left;
  width: 100%;
  background-image: url("../image/bg_footer-contacts.png");
  background-repeat: no-repeat;
  background-size: cover;
  text-align: center;
}
body main .page-servico .pag-servicos-about header {
  padding-bottom: 10px;
}
body main .page-servico .pag-servicos-about .section-title {
  color: #023766;
  font-family: "DM Sans", sans-serif;
  font-size: 35px;
  font-style: normal;
  font-weight: 300;
  line-height: normal;
  margin-bottom: 0;
}
body main .page-servico .pag-servicos-about .section-title strong {
  color: #f6911d;
  font-weight: 800;
}
body main .page-servico .pag-servicos-about .descricao {
  color: #323232;
  text-align: center;
  font-family: "DM Sans";
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}
body main .page-servico .pag-servicos-about .row-ctas {
  margin-top: 20px;
}
@media (max-width: 1199px) {
  body main .page-servico .evt-atendidos .evt-list {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
@media (max-width: 991px) {
  body main .page-servico {
    /* não atrapalhar o fluxo no mobile */
  }
  body main .page-servico .evt-atendidos .evt-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  body main .page-servico .duo-cards .duo-sep {
    display: none;
  }
}
@media (max-width: 575px) {
  body main .page-servico .evt-atendidos .evt-list {
    grid-template-columns: 1fr;
  }
}
body main .page-portifolio {
  /* carrossel/linha de cards */
  /* ====== CARD ====== */
  /* setas do owl */
  /* ===== Responsivo ===== */
}
@media (max-width: 576px) {
  body main .page-portifolio .featured-eventos,
  body main .page-portifolio #featured-avaliacoes-home {
    padding: 25px 0 40px;
  }
}
body main .page-portifolio #featured-portifolio {
  padding: 48px 0 56px;
  background-repeat: no-repeat;
  background-position: center top;
  background-size: cover;
  position: relative;
}
body main .page-portifolio #featured-portifolio.isBanner .container {
  position: relative;
  z-index: 1;
}
body main .page-portifolio #featured-portifolio.isBanner::before {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(80% 80% at 50% 0%, rgba(255, 255, 255, 0.85) 0%, rgba(255, 255, 255, 0.92) 50%, #fff 100%);
}
body main .page-portifolio #featured-portifolio .section-title.portifolio {
  margin: 0 0 24px;
}
body main .page-portifolio .featured-portifolio {
  background: #f2f2f2;
}
body main .page-portifolio .content {
  padding: 0 3rem;
  position: relative;
}
@media (max-width: 576px) {
  body main .page-portifolio .content {
    padding: 0 2rem;
  }
}
body main .page-portifolio .portfolio-list {
  overflow: hidden;
  background: #fff;
  border-radius: 20px;
  position: unset;
  /* deixa sombras aparecerem fora do viewport do owl */
}
body main .page-portifolio .portfolio-list .owl-stage-outer {
  overflow: visible;
  position: unset;
}
body main .page-portifolio .portfolio-card {
  display: flex;
  align-items: stretch;
  gap: 18px;
  border-radius: 20px;
  will-change: transform;
  transition: transform 0.18s ease;
  /* imagem à esquerda (724 x 504) */
  /* conteúdo à direita ocupa o RESTO do item (1252px – 724 – 18 = ~510px) */
}
body main .page-portifolio .portfolio-card:hover {
  transform: translateY(-2px);
}
body main .page-portifolio .portfolio-card .img-events {
  flex: 0 0 724px; /* <<< FIXO EM 724PX */
  width: 724px;
  height: 504px;
  border-radius: 20px;
  overflow: hidden;
  position: relative;
  /* tudo dentro ocupa 100% do bloco, sem forçar 720px */
  /* dots do owl sobre a imagem */
}
body main .page-portifolio .portfolio-card .img-events .carousel-gallery,
body main .page-portifolio .portfolio-card .img-events .gallery-img,
body main .page-portifolio .portfolio-card .img-events .gallery-slide,
body main .page-portifolio .portfolio-card .img-events .gallery-slide picture,
body main .page-portifolio .portfolio-card .img-events .gallery-slide img,
body main .page-portifolio .portfolio-card .img-events .owl-stage-outer,
body main .page-portifolio .portfolio-card .img-events .owl-stage,
body main .page-portifolio .portfolio-card .img-events .owl-item {
  width: 100%;
  height: 100% !important;
  display: block;
  -o-object-fit: cover;
     object-fit: cover;
}
body main .page-portifolio .portfolio-card .img-events .gallery-img {
  display: flex;
  align-items: center;
  justify-content: center;
}
body main .page-portifolio .portfolio-card .img-events .gallery-img .owl-nav.disabled {
  display: none;
}
body main .page-portifolio .portfolio-card .img-events .gallery-img .owl-dots {
  position: absolute;
  left: 50%;
  bottom: 20px;
  transform: translateX(-50%);
  margin-top: 0;
  border-radius: 20px;
  background: #023766;
  padding: 10px 30px;
}
body main .page-portifolio .portfolio-card .img-events .gallery-img .owl-dots .owl-dot {
  opacity: 0.38;
  background: #d9d9d9;
}
body main .page-portifolio .portfolio-card .img-events .gallery-img .owl-dots .owl-dot.active {
  opacity: 1;
  background: #ebb632;
}
body main .page-portifolio .portfolio-card .card-info {
  width: calc(100% - 724px - 18px); /* <<< A MÁGICA */
  min-width: 0; /* evita overflow de textos */
  height: 504px;
  border-radius: 20px;
  padding: 30px 18px 18px;
  overflow: hidden;
  background: #fff;
}
body main .page-portifolio .portfolio-card .card-info .card-title {
  display: flex;
  flex-direction: column;
  margin: 0 0 14px;
  font-size: 25px;
  line-height: normal;
  font-weight: 700;
  font-family: "DM Sans", sans-serif;
}
body main .page-portifolio .portfolio-card .card-info .card-title a {
  color: #023766;
  font-family: "DM Sans", sans-serif;
  font-size: 25px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  position: relative;
}
body main .page-portifolio .portfolio-card .card-info .card-title a:after {
  content: "";
  position: absolute;
  left: 50%;
  right: 50%;
  bottom: 0;
  background: #023766;
  height: 0;
  transition: all 300ms ease;
}
body main .page-portifolio .portfolio-card .card-info .card-title a:hover:after {
  left: 0;
  right: 0;
  height: 1px;
}
body main .page-portifolio .portfolio-card .card-info .card-title .sub-title {
  color: #023766;
  font-family: "DM Sans";
  font-size: 16px;
  font-style: normal;
  font-weight: 300;
  line-height: normal;
}
body main .page-portifolio .portfolio-card .card-info .card-text {
  color: #323232;
  font-family: "DM Sans", sans-serif;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  margin: 0 0 14px;
}
body main .page-portifolio .portfolio-card .card-info .card-text p {
  margin: 0 0 10px;
}
body main .page-portifolio .portfolio-card .card-info .card-text.destaque strong {
  color: #023766;
  font-size: 16px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
}
body main .page-portifolio .portfolio-card .card-info .card-text strong {
  color: #023766;
}
body main .page-portifolio .portfolio-list.owl-carousel .owl-nav {
  position: unset;
  top: unset;
  left: unset;
  display: flex;
  gap: 30px;
  text-align: center;
  width: 100%;
  justify-content: space-evenly;
}
body main .page-portifolio .portfolio-list.owl-carousel .owl-nav button {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  border: 1px solid rgba(2, 55, 102, 0.15);
  background: #fff;
  display: grid;
  place-items: center;
  color: #023766;
  font-size: 18px;
  box-shadow: 0 4px 12px rgba(2, 55, 102, 0.08);
  transition: background 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}
body main .page-portifolio .portfolio-list.owl-carousel .owl-nav button:hover {
  background: #023766;
  color: #fff;
  border-color: #023766;
}
body main .page-portifolio .portfolio-list.owl-carousel .owl-nav .owl-prev {
  position: absolute;
  left: 0;
}
body main .page-portifolio .portfolio-list.owl-carousel .owl-nav .owl-next {
  position: absolute;
  right: 0;
}
@media (max-width: 576px) {
  body main .page-portifolio .portfolio-list.owl-carousel .owl-nav .owl-prev {
    left: -10px;
  }
  body main .page-portifolio .portfolio-list.owl-carousel .owl-nav .owl-next {
    right: -10px;
  }
}
body main .page-portifolio .portfolio-list.owl-carousel .owl-nav .owl-prev,
body main .page-portifolio .portfolio-list.owl-carousel .owl-nav .owl-next {
  top: 50%;
  transform: translateY(-50%);
  border: none;
  background: unset;
  box-shadow: unset;
}
body main .page-portifolio .portfolio-list.owl-carousel .owl-nav .owl-prev:hover,
body main .page-portifolio .portfolio-list.owl-carousel .owl-nav .owl-next:hover {
  background: #fff;
  color: #023766;
  border-color: rgba(2, 55, 102, 0.15);
}
@media (max-width: 1200px) {
  body main .page-portifolio .portfolio-card .img-events {
    /* mantém proporção 724/504 quando reduzir */
    flex-basis: min(724px, 58vw);
    width: auto;
    height: auto;
    aspect-ratio: 724/504;
  }
  body main .page-portifolio .portfolio-card .card-info {
    height: auto;
    width: calc(100% - min(724px, 58vw) - 18px);
  }
}
@media (max-width: 991px) {
  body main .page-portifolio .portfolio-card {
    flex-direction: column;
  }
  body main .page-portifolio .portfolio-card .img-events,
  body main .page-portifolio .portfolio-card .card-info {
    width: 100%;
    height: auto;
    min-height: 260px;
    aspect-ratio: auto;
  }
  body main .page-portifolio .portfolio-card .card-info {
    width: 100%;
  }
}
@media (max-width: 575px) {
  body main .page-portifolio #featured-portifolio {
    padding: 36px 0 44px;
  }
  body main .page-portifolio .portfolio-card .card-info {
    padding: 14px 14px 16px;
  }
  body main .page-portifolio .portfolio-card .card-info .card-title {
    font-size: 20px;
  }
  body main .page-portifolio .portfolio-card .card-info .card-text {
    font-size: 14px;
  }
}
body main .page-portifolio .featured-eventos.homenoBanner {
  background-image: url("../image/bg-grandes-eventos.jpg");
  background-repeat: no-repeat;
}
@media (max-width: 576px) {
  body main .page-portifolio .featured-eventos .content {
    padding: 0 1rem;
  }
}
@media (max-width: 576px) and (max-width: 576px) {
  body main .page-portifolio .featured-eventos .content .row-ctas {
    margin-top: 20px;
  }
}
body main .page-portifolio .featured-eventos .section-title.grandes-eventos {
  color: #fff;
  text-align: center;
}
body main .page-portifolio .featured-eventos .section-title.grandes-eventos p {
  color: #fff;
  text-align: center;
  margin-bottom: 0;
}
@media (max-width: 576px) {
  body main .page-portifolio .featured-eventos .section-title.grandes-eventos {
    margin-bottom: 0;
  }
  body main .page-portifolio .featured-eventos .section-title.grandes-eventos p {
    font-size: 20px;
  }
}
body main .page-portifolio .featured-eventos .card-text.grandes-eventos {
  text-align: center;
  margin-top: 10px;
}
body main .page-portifolio .featured-eventos .card-text.grandes-eventos p {
  color: #f6911d;
  text-align: center;
  font-family: "DM Sans", sans-serif;
  font-size: 16px;
  font-style: normal;
  font-weight: 600;
  line-height: normal;
}
body main .page-portifolio .featured-eventos .card-text.grandes-eventos.falar {
  color: #fff;
  font-family: "DM Sans", sans-serif;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}
body main .page-portifolio .featured-eventos .card-text.grandes-eventos.falar p {
  color: #fff;
  font-family: "DM Sans", sans-serif;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}
body main .page-portifolio .featured-eventos .row-ctas {
  margin-top: 50px;
  text-align: center;
}
body main section.produtos-left-bar label {
  color: #599AA8;
  font-family: Kanit;
  font-size: 23px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  margin-bottom: 20px;
}
body main section.produtos-left-bar .separator-line {
  height: 1px;
  width: 100%;
  margin: 30px 0;
  background-color: #D4D4D4;
}
body main section.produtos-left-bar .box-search .box-input-search {
  background: #F0EEEE;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-right: 22px;
}
body main section.produtos-left-bar .box-search .box-input-search input {
  background-color: transparent;
  border: none;
  outline: none;
  color: #7B7B7B;
  font-family: Kanit;
  font-size: 15px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  padding: 14px 22px;
  width: 100%;
}
body main section.produtos-left-bar .box-search .box-input-search button {
  padding: 0;
  margin: 0;
  width: auto;
  min-height: auto;
  min-width: auto;
  background-color: transparent;
  display: inline;
  outline: none;
  border: none;
}
body main section.produtos-left-bar .list-marcas {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
body main section.produtos-left-bar .list-marcas a {
  flex: calc(50% - 10px) 1 1;
  border: 1px solid #CACACA;
  background: #FFF;
  height: 61px;
  padding: 5px;
  text-align: center;
  transition: 0.3s all;
}
body main section.produtos-left-bar .list-marcas a.active, body main section.produtos-left-bar .list-marcas a:hover {
  border: 1px solid #70aa7d;
}
body main section.produtos-left-bar .list-marcas a.active {
  position: relative;
}
body main section.produtos-left-bar .list-marcas a.active::after {
  content: "";
  position: absolute;
  top: 3px;
  left: 3px;
  width: 15px;
  height: 15px;
  background-color: #10404B;
  border: 3px solid #70aa7d;
  border-radius: 2px;
}
body main section.produtos-left-bar .list-marcas a img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
body main section.produtos-left-bar ul.categorias {
  margin: 0;
  padding: 0;
  max-width: 300px;
}
body main section.produtos-left-bar ul.categorias li.produto-categoria {
  margin: 0 0 40px 0;
  padding: 0;
  list-style: none;
}
body main section.produtos-left-bar ul.categorias li.produto-categoria .categoria-in a {
  position: relative;
  color: #1E1E1E;
  font-family: Kanit;
  font-size: 19px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
body main section.produtos-left-bar ul.categorias li.produto-categoria .categoria-in a.tem-filhas::after {
  content: "\f078";
  font-family: "Font Awesome 5 Free";
  color: black;
  margin-right: 10px;
}
body main section.produtos-left-bar ul.categorias li.produto-categoria .categoria-in a::before {
  content: "";
  position: absolute;
  bottom: -7px;
  left: 0;
  width: 100%;
  height: 3px;
  background-color: #D4D4D4;
  transition: 0.3s all;
}
body main section.produtos-left-bar ul.categorias li.produto-categoria.active .categoria-in a {
  color: #70AA7D;
}
body main section.produtos-left-bar ul.categorias li.produto-categoria.active .categoria-in a::before {
  background-color: #70AA7D;
}
body main section.produtos-left-bar ul.categorias li.produto-categoria ul.subcategorias {
  margin: 20px 0 0 0;
  padding: 0 0 0 10px;
}
body main section.produtos-left-bar ul.categorias li.produto-categoria ul.subcategorias li.subcategoria-in {
  list-style: none;
  margin: 0;
  padding: 0;
  border-bottom: 1px solid #cacaca;
}
body main section.produtos-left-bar ul.categorias li.produto-categoria ul.subcategorias li.subcategoria-in:last-child {
  border-bottom: none;
}
body main section.produtos-left-bar ul.categorias li.produto-categoria ul.subcategorias li.subcategoria-in a {
  display: block;
  padding: 10px 0;
  color: #565656;
}
body main section.produtos-left-bar ul.categorias li.produto-categoria ul.subcategorias li.subcategoria-in.active a {
  color: #70AA7D;
}
body main section.produtos-left-bar .main-cta.limpar {
  background-color: #599AA8;
  color: white;
}
body main section.page-produto .page-produto-in {
  padding: 75px 0;
}
body main section.page-produto .page-produto-in .box-produto-imgs {
  display: flex;
  gap: 40px;
  justify-content: center;
}
body main section.page-produto .page-produto-in .box-produto-imgs .box-galeria {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-around;
}
body main section.page-produto .page-produto-in .box-produto-imgs .box-galeria a {
  display: block;
  width: 100px;
  height: 100px;
  padding: 10px 5px;
  text-align: center;
  background: #FFF;
  box-shadow: 0px 10px 20px 0px rgba(0, 0, 0, 0.19), 0px 6px 6px 0px rgba(0, 0, 0, 0.23);
}
body main section.page-produto .page-produto-in .box-produto-imgs .box-galeria a img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
body main section.page-produto .page-produto-in .box-produto-imgs .img-principal {
  background: #FFF;
  box-shadow: 0px 10px 20px 0px rgba(0, 0, 0, 0.19), 0px 6px 6px 0px rgba(0, 0, 0, 0.23);
  width: calc(100% - 140px);
  max-width: 447px;
  margin: 0 auto;
  height: 485px;
  display: flex;
  align-items: center;
  justify-content: center;
}
body main section.page-produto .page-produto-in .box-produto-imgs .img-principal.full {
  width: 100%;
  max-width: 100%;
}
body main section.page-produto .page-produto-in .box-produto-imgs .img-principal img {
  max-width: 100%;
  max-height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
body main section.page-produto .page-produto-in .titulo-produto {
  color: #243352;
  font-family: Kanit;
  font-size: 33.835px;
  font-style: normal;
  font-weight: 700;
  line-height: 130%; /* 43.985px */
  text-transform: uppercase;
  margin-bottom: 27px;
}
body main section.page-produto .page-produto-in .box-info-produto ul.nav-tabs {
  border-color: #4c7078;
}
body main section.page-produto .page-produto-in .box-info-produto ul.nav-tabs li.nav-item button {
  color: #2B2B2B;
  font-family: Kanit;
  font-size: 18px;
  font-style: normal;
  font-weight: 400;
  line-height: 150%; /* 27px */
  outline: none;
  border-radius: 0;
}
body main section.page-produto .page-produto-in .box-info-produto ul.nav-tabs li.nav-item button.active {
  border-color: #4c7078 #4c7078 #fff;
  font-weight: 700;
}
body main section.page-produto .page-produto-in .box-info-produto ul.nav-tabs li.nav-item button:hover:not(.active) {
  border-color: #e9ecef #e9ecef #4c7078;
}
body main section.page-produto .page-produto-in .box-info-produto .tab-content {
  border-left: 1px solid;
  border-right: 1px solid;
  border-bottom: 1px solid;
  border-color: #fff #4c7078 #4c7078;
  padding: 20px;
  color: #2B2B2B;
  font-family: Kanit;
  font-size: 18px;
  font-style: normal;
  font-weight: 400;
  line-height: 203%; /* 36.54px */
}
body main section.page-produto .page-produto-in .box-info-produto .tab-content .produto-descricao {
  margin-bottom: 10px;
}
body main section.page-produto .page-produto-in .box-info-produto .tab-content .produto-caracteristicas {
  display: flex;
  flex-direction: column;
}
body main section.page-produto .page-produto-in .box-info-produto .tab-content .produto-caracteristicas .produto-caracteristicas-in span {
  min-width: 358px;
  display: inline-block;
  padding: 0 10px;
}
body main section.page-produto .page-produto-in .box-info-produto .tab-content .produto-caracteristicas .produto-caracteristicas-in:nth-child(odd) span {
  background-color: #e4e4e4;
}
body main section.page-produto .page-produto-in .variacoes .box-variacao {
  margin-top: 15px;
}
body main section.page-produto .page-produto-in .variacoes .box-variacao label {
  color: #2B2B2B;
  font-family: Kanit;
  font-size: 18px;
  font-style: normal;
  font-weight: 400;
  line-height: 150%; /* 27px */
  margin-bottom: 10px;
}
body main section.page-produto .page-produto-in .variacoes .box-variacao select {
  width: 100%;
  border-radius: 5px;
  border: 1px solid #CACACA;
  background: #FFF;
  color: #2B2B2B;
  font-family: Kanit;
  font-size: 18px;
  font-style: normal;
  font-weight: 400;
  line-height: 150%;
  padding: 10px 24px;
}
body main section.page-produto .page-produto-in .rows-ctas {
  display: flex;
  justify-content: space-between;
  gap: 15px;
  margin: 25px 0 0 0;
}
@media (max-width: 991px) {
  body main section.page-produto section.header-conteudo {
    display: none;
  }
  body main section.page-produto .page-produto-in {
    padding: 30px 0;
  }
  body main section.page-produto .page-produto-in .titulo-produto {
    font-size: 25px;
  }
  body main section.page-produto .page-produto-in .box-produto-imgs {
    flex-direction: column-reverse;
    gap: 20px;
    margin-bottom: 30px;
  }
  body main section.page-produto .page-produto-in .box-produto-imgs .img-principal {
    width: 100%;
    max-width: 100%;
    height: 250px;
  }
  body main section.page-produto .page-produto-in .box-produto-imgs .box-galeria {
    flex-direction: row;
  }
  body main section.page-produto .page-produto-in .box-info-produto ul.nav-tabs {
    border: none;
    margin-bottom: 15px;
  }
  body main section.page-produto .page-produto-in .box-info-produto ul.nav-tabs li.nav-item {
    width: 100%;
  }
  body main section.page-produto .page-produto-in .box-info-produto ul.nav-tabs li.nav-item button {
    width: 100%;
  }
  body main section.page-produto .page-produto-in .box-info-produto ul.nav-tabs li.nav-item button.active {
    border-color: #4c7078 #4c7078 #4c7078;
  }
  body main section.page-produto .page-produto-in .box-info-produto .tab-content {
    border-top: 1px solid #4c7078;
  }
  body main section.page-produto .page-produto-in .box-info-produto .tab-content .produto-caracteristicas .produto-caracteristicas-in span {
    min-width: unset;
    width: 100%;
  }
  body main section.page-produto .page-produto-in .rows-ctas {
    gap: 10px 5px;
    flex-wrap: wrap;
  }
  body main section.page-produto .page-produto-in .rows-ctas .main-cta {
    width: 100%;
    max-width: 100%;
    order: 3;
  }
  body main section.page-produto .page-produto-in .rows-ctas .main-cta.whatsapp {
    width: 100%;
    max-width: calc(100% - 70px);
    order: 1;
    border-radius: 25px 0 0 25px;
  }
  body main section.page-produto .page-produto-in .rows-ctas .main-cta.carrinho {
    max-width: 65px;
    order: 2;
    border-radius: 0 25px 25px 0;
    background-color: #10404B;
  }
  body main section.page-produto .page-produto-in .rows-ctas .main-cta.carrinho svg path {
    stroke: white;
  }
}
body main section.page-produtos .list-produtos {
  padding: 75px 0;
}
@media (max-width: 991px) {
  body main section.page-produtos .list-produtos {
    padding: 30px 0;
  }
}
body main section.page-fornecedores .page-fornecedores-main {
  padding: 40px 0;
}
body main section.page-fornecedores .page-fornecedores-main .page-texto {
  color: #000;
  text-align: center;
  font-family: Kanit;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 130%; /* 20.8px */
  max-width: 895px;
  margin: 0 auto 48px auto;
}
body main section.page-fornecedores .page-fornecedores-main .page-texto h1, body main section.page-fornecedores .page-fornecedores-main .page-texto h2 {
  color: #10404B;
  font-family: Kanit;
  font-size: 33.835px;
  font-style: normal;
  font-weight: 700;
  line-height: 130%; /* 43.985px */
  margin-bottom: 27px;
}
body main section.page-fornecedores .page-fornecedores-main .rows-fornecedores {
  display: flex;
  flex-wrap: wrap;
  gap: 30px;
  justify-content: space-around;
}
body main section.page-fornecedores .page-fornecedores-main .rows-fornecedores .img-fornecedor {
  border-radius: 10px;
  border: 1px solid #8E8E8E;
  display: flex;
  padding: 15px;
  height: 165px;
  flex: calc(20% - 30px) 0 0;
  justify-content: center;
  align-items: center;
  text-align: center;
}
body main section.page-fornecedores .page-fornecedores-main .rows-fornecedores .img-fornecedor img {
  max-width: 100%;
  max-height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
@media (max-width: 991px) {
  body main section.page-fornecedores .page-fornecedores-main .page-texto h1, body main section.page-fornecedores .page-fornecedores-main .page-texto h2 {
    font-size: 25px;
    margin-bottom: 15px;
  }
  body main section.page-fornecedores .page-fornecedores-main .rows-fornecedores {
    gap: 10px;
  }
  body main section.page-fornecedores .page-fornecedores-main .rows-fornecedores .img-fornecedor {
    flex: calc(50% - 10px) 0 0;
  }
}
body main #featured-avaliacoes-home.page-depoimentos .card-itens {
  flex-wrap: wrap;
}
body main section.page-duvidas {
  display: block;
  float: left;
  width: 100%;
  margin-bottom: 3.5rem;
  /* ===== Dúvidas – box do formulário ===== */
  /* ===== Dúvidas – box do formulário ===== */
  /* responsivo */
}
body main section.page-duvidas .page-duvidas-main {
  display: block;
  float: left;
  width: 100%;
  padding-top: 30px;
}
body main section.page-duvidas .page-duvidas-main .content {
  display: flex;
  flex-wrap: nowrap;
  align-content: center;
  justify-content: center;
  align-items: flex-start;
  margin-top: 20px;
  -moz-column-gap: 50px;
       column-gap: 50px;
}
@media (max-width: 576px) {
  body main section.page-duvidas .page-duvidas-main .content {
    flex-direction: column;
    -moz-column-gap: unset;
         column-gap: unset;
    row-gap: 30px;
  }
  body main section.page-duvidas .page-duvidas-main .content .paginacao {
    gap: 5px;
    justify-content: space-around;
  }
  body main section.page-duvidas .page-duvidas-main .content .paginacao li a {
    width: 37px;
    height: 36px;
  }
}
body main section.page-duvidas .page-duvidas-main .content .perguntas {
  width: 40%;
}
@media (max-width: 576px) {
  body main section.page-duvidas .page-duvidas-main .content .perguntas {
    width: 100%;
  }
}
body main section.page-duvidas .page-duvidas-main .content .perguntas .faq {
  margin-top: 0;
  row-gap: 30px;
}
body main section.page-duvidas .page-duvidas-main .content .perguntas .faq .paginacao {
  padding-left: 0;
  margin: 20px 0 0;
}
body main section.page-duvidas .page-duvidas-main .content .form-duvidas {
  width: 25%;
}
@media (max-width: 576px) {
  body main section.page-duvidas .page-duvidas-main .content .form-duvidas {
    width: 100%;
  }
}
body main section.page-duvidas .page-duvidas-main .faq-list {
  display: flex;
  flex-direction: column;
  width: 100%;
}
body main section.page-duvidas .page-duvidas-main .faq-list .faq-item {
  width: 100%;
}
body main section.page-duvidas .page-duvidas {
  /* responsivo */
}
body main section.page-duvidas .page-duvidas .box-form-duvidas {
  position: relative;
  border-radius: 20px;
  padding: 30px 22px 22px;
  color: #fff;
  background-image: url("../image/bg-form.png");
  background-repeat: no-repeat;
  background-position: center right;
  background-size: 800px;
}
body main section.page-duvidas .page-duvidas .box-form-duvidas .text-form {
  text-align: left;
}
body main section.page-duvidas .page-duvidas .box-form-duvidas .text-form h3 {
  margin: 0 0 10px;
  font-family: "DM Sans", system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
  font-size: 25px;
  font-weight: 800;
  line-height: 1.2;
  color: #ebb632; /* amarelo do layout */
}
body main section.page-duvidas .page-duvidas .box-form-duvidas .text-form p {
  margin: 0 0 18px;
  font-size: 14px;
  line-height: 1.45;
  color: #ffffff;
  opacity: 0.95;
}
body main section.page-duvidas .page-duvidas .box-form-duvidas .box-input {
  margin-bottom: 14px;
}
body main section.page-duvidas .page-duvidas .box-form-duvidas .box-input label {
  display: block;
  margin: 0 0 6px;
  font-weight: 700;
  font-size: 16px;
  color: #ffffff;
}
body main section.page-duvidas .page-duvidas .box-form-duvidas .box-input input,
body main section.page-duvidas .page-duvidas .box-form-duvidas .box-input textarea {
  width: 100%;
  border-radius: 6px;
  height: 40px;
  padding: 10px 14px;
  color: #ffffff;
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.12);
  outline: none;
  transition: box-shadow 0.2s ease, border-color 0.2s ease;
}
body main section.page-duvidas .page-duvidas .box-form-duvidas .box-input input::-moz-placeholder, body main section.page-duvidas .page-duvidas .box-form-duvidas .box-input textarea::-moz-placeholder {
  color: rgba(255, 255, 255, 0.7);
}
body main section.page-duvidas .page-duvidas .box-form-duvidas .box-input input::placeholder,
body main section.page-duvidas .page-duvidas .box-form-duvidas .box-input textarea::placeholder {
  color: rgba(255, 255, 255, 0.7);
}
body main section.page-duvidas .page-duvidas .box-form-duvidas .box-input input:focus,
body main section.page-duvidas .page-duvidas .box-form-duvidas .box-input textarea:focus {
  border-color: rgba(255, 255, 255, 0.28);
  box-shadow: 0 0 0 3px rgba(235, 182, 50, 0.25);
}
body main section.page-duvidas .page-duvidas .box-form-duvidas .box-input textarea {
  min-height: 60px;
  resize: vertical;
}
body main section.page-duvidas .page-duvidas .box-form-duvidas .main-cta {
  width: 100%;
  max-width: 291px;
  height: 50px;
  border: 0;
  border-radius: 10px;
  font-weight: 700;
  font-size: 16px;
  letter-spacing: 0.2px;
  color: #0a2d50; /* texto escuro como no layout */
  background-image: linear-gradient(90deg, #f6911d 0%, #ebb632 100%);
  box-shadow: 0 8px 25px rgba(0, 0, 0, 0.1);
  transition: transform 0.15s ease, filter 0.15s ease;
}
body main section.page-duvidas .page-duvidas .box-form-duvidas .main-cta:hover {
  filter: brightness(1.02);
  transform: translateY(-1px);
}
body main section.page-duvidas .page-duvidas .box-form-duvidas .main-cta:active {
  transform: translateY(0);
}
@media (max-width: 991px) {
  body main section.page-duvidas .page-duvidas .box-form-duvidas {
    padding: 22px 18px;
  }
  body main section.page-duvidas .page-duvidas .box-form-duvidas .text-form h3 {
    font-size: 22px;
  }
}
body main section.page-duvidas .box-form-duvidas {
  position: relative;
  overflow: hidden;
  border-radius: 20px;
  padding: 28px 22px 24px;
  color: #fff;
  background-image: url("../image/bg-form.png");
  background-repeat: no-repeat;
  background-position: center right;
}
body main section.page-duvidas .box-form-duvidas .text-form h3 {
  color: #ebb632;
  text-align: center;
  font-family: "DM Sans", sans-serif;
  font-size: 25px;
  font-style: normal;
  font-weight: 800;
  line-height: normal;
}
body main section.page-duvidas .box-form-duvidas .text-form p {
  margin: 0 0 18px;
  color: #fff;
  text-align: center;
  font-family: "DM Sans", sans-serif;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}
body main section.page-duvidas .box-form-duvidas .box-input {
  margin-bottom: 14px;
}
body main section.page-duvidas .box-form-duvidas .box-input label {
  display: block;
  margin: 0 0 6px;
  color: #fff;
  font-family: "DM Sans", sans-serif;
  font-size: 16px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
}
body main section.page-duvidas .box-form-duvidas .box-input input,
body main section.page-duvidas .box-form-duvidas .box-input textarea {
  width: 100%;
  border-radius: 6px;
  height: 40px;
  padding: 10px 14px;
  color: #fff;
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.2);
  outline: none;
  transition: box-shadow 0.2s ease, border-color 0.2s ease;
}
body main section.page-duvidas .box-form-duvidas .box-input input::-moz-placeholder, body main section.page-duvidas .box-form-duvidas .box-input textarea::-moz-placeholder {
  color: rgba(255, 255, 255, 0.7);
}
body main section.page-duvidas .box-form-duvidas .box-input input::placeholder,
body main section.page-duvidas .box-form-duvidas .box-input textarea::placeholder {
  color: rgba(255, 255, 255, 0.7);
}
body main section.page-duvidas .box-form-duvidas .box-input input:focus,
body main section.page-duvidas .box-form-duvidas .box-input textarea:focus {
  border-color: rgba(255, 255, 255, 0.32);
  box-shadow: 0 0 0 3px rgba(235, 182, 50, 0.25);
}
body main section.page-duvidas .box-form-duvidas .box-input textarea {
  min-height: 60px;
  resize: vertical;
}
body main section.page-duvidas .box-form-duvidas .main-cta {
  width: 100%;
  max-width: 291px; /* 291x50 do layout */
  height: 50px;
  border: 0;
  border-radius: 10px;
  display: block;
  margin: 10px auto 0; /* centraliza o botão */
  font-weight: 700;
  font-size: 16px;
  letter-spacing: 0.2px;
  color: #0a2d50; /* texto escuro, como no layout */
  background-image: linear-gradient(90deg, #f6911d 0%, #ebb632 100%);
  box-shadow: 0 8px 25px rgba(0, 0, 0, 0.1);
  transition: transform 0.15s ease, filter 0.15s ease;
}
body main section.page-duvidas .box-form-duvidas .main-cta:hover {
  filter: brightness(1.02);
  transform: translateY(-1px);
}
body main section.page-duvidas .box-form-duvidas .main-cta:active {
  transform: translateY(0);
}
@media (max-width: 991px) {
  body main section.page-duvidas .box-form-duvidas {
    padding: 22px 18px;
    min-height: auto;
  }
  body main section.page-duvidas .box-form-duvidas .text-form h3 {
    font-size: 22px;
  }
}
@media (max-width: 991px) {
  body main section.page-duvidas .page-duvidas-main h2.title-main {
    font-size: 27px;
  }
  body main section.page-duvidas .page-duvidas-main .box-duvidas {
    padding: 15px 30px;
    margin-bottom: 30px;
  }
}
body main section.page-blog {
  background: #f2f2f2;
  /* ===== Responsivo ===== */
}
body main section.page-blog .header-conteudo {
  padding: 30px 0 20px;
}
body main section.page-blog .page-blog-in {
  padding: 80px 0;
  width: 100%;
  display: block;
  float: left;
  /* GRID de cards (2 colunas) */
  /* ===== Card ===== */
}
body main section.page-blog .page-blog-in .in-row {
  justify-content: center !important;
}
body main section.page-blog .page-blog-in .blog-container-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 26px; /* espaço entre cards */
}
body main section.page-blog .page-blog-in .blog-card {
  display: flex;
  flex-direction: column;
  text-decoration: none;
  border-radius: 20px;
  background: #fff;
  height: 455px; /* altura alvo do layout */
  box-shadow: 0 4px 28px rgba(0, 0, 0, 0.08);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
  /* topo com a imagem */
  /* conteúdo do card */
}
body main section.page-blog .page-blog-in .blog-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.12);
}
body main section.page-blog .page-blog-in .blog-card .blog-card-img {
  height: 238px; /* layout */
  overflow: hidden;
  border-radius: 20px 20px 0 0;
}
body main section.page-blog .page-blog-in .blog-card .blog-card-img img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
body main section.page-blog .page-blog-in .blog-card .blog-card-text {
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 28px 60px 40px;
  /* empurra o “continue” para a base do card */
}
body main section.page-blog .page-blog-in .blog-card .blog-card-text h3 {
  color: #023766;
  font-family: "DM Sans", sans-serif;
  font-weight: 700;
  font-size: 20px;
  line-height: 1.2;
  margin: 0;
  /* mantém o título em até 2 linhas */
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
}
body main section.page-blog .page-blog-in .blog-card .blog-card-text .continue {
  margin-top: auto;
  color: #f6911d;
  font-family: "DM Sans", sans-serif;
  font-size: 16px;
  font-weight: 400;
  text-decoration: none;
  letter-spacing: 0.2px;
}
body main section.page-blog .page-blog-in .blog-card .blog-card-text .continue:hover {
  color: #023766;
  text-decoration: underline;
}
@media (max-width: 991px) {
  body main section.page-blog .page-blog-in {
    padding: 30px 0;
  }
  body main section.page-blog .page-blog-in .blog-container-list {
    grid-template-columns: 1fr; /* 1 coluna no mobile */
    gap: 18px;
  }
  body main section.page-blog .page-blog-in .blog-card {
    height: auto; /* deixa crescer no mobile */
  }
  body main section.page-blog .page-blog-in .blog-card .blog-card-img {
    height: 200px;
  }
}
body main section.page-blog {
  /* responsivo */
}
body main section.page-blog .produtos-left-bar {
  /* deixa a barra “cartão” e com bom espaçamento vertical entre blocos */
  display: flex;
  flex-direction: column;
  gap: 18px;
  /* -------- Categorias -------- */
  /* -------- Busca -------- */
  /* separador opcional (se quiser manter) */
  /* “cartão” das categorias */
}
body main section.page-blog .produtos-left-bar .title-box {
  /* título "Categorias" */
  display: block;
  color: #023766;
  font-family: "DM Sans", system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  font-weight: 700;
  font-size: 25px;
  margin: 0;
  padding-bottom: 10px;
  /* barrinha amarela abaixo do título */
}
body main section.page-blog .produtos-left-bar .title-box::after {
  content: "";
  display: block;
  width: 38px;
  height: 4px;
  background: #ebb632;
  border-radius: 2px;
  margin-top: 6px;
}
body main section.page-blog .produtos-left-bar .box-search {
  background: #fff;
  border-radius: 20px;
  padding: 18px 18px 20px;
  box-shadow: 0 4px 28px rgba(0, 0, 0, 0.06);
}
body main section.page-blog .produtos-left-bar .box-search label {
  display: block;
  color: #023766;
  font-family: "DM Sans", system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  font-weight: 700;
  font-size: 20px;
  margin: 0 0 12px;
}
body main section.page-blog .produtos-left-bar .box-search .box-input-search {
  position: relative;
  padding-right: 0;
  background: #fff;
}
body main section.page-blog .produtos-left-bar .box-search .box-input-search input {
  width: 100%;
  height: 44px;
  border-radius: 12px;
  border: 1px solid #cfd6dd;
  background: #fff;
  padding: 0 48px 0 14px;
  font-family: "DM Sans", system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  font-size: 16px;
  color: #323232;
  outline: none;
}
body main section.page-blog .produtos-left-bar .box-search .box-input-search input::-moz-placeholder {
  color: #9aa6b2;
}
body main section.page-blog .produtos-left-bar .box-search .box-input-search input::placeholder {
  color: #9aa6b2;
}
body main section.page-blog .produtos-left-bar .box-search .box-input-search input:focus {
  box-shadow: 0 0 0 2px rgba(2, 55, 102, 0.12);
}
body main section.page-blog .produtos-left-bar .box-search .box-input-search button {
  position: absolute;
  right: 0;
  top: 0;
  width: 44px;
  height: 44px;
  border: 0;
  border-radius: 8px;
  background: #023766;
  display: grid;
  place-items: center;
  cursor: pointer;
  transition: filter 0.2s ease;
}
body main section.page-blog .produtos-left-bar .box-search .box-input-search button svg path {
  stroke: #fff;
}
body main section.page-blog .produtos-left-bar .box-search .box-input-search button:hover {
  filter: brightness(1.05);
}
body main section.page-blog .produtos-left-bar .separator-line {
  height: 1px;
  background: transparent; /* pode esconder se não precisar */
  margin: 5px 0;
}
body main section.page-blog .produtos-left-bar .categorias {
  list-style: none;
  padding: 18px 20px;
  margin: 12px 0 0;
  background: #fff;
  border-radius: 20px;
  box-shadow: 0 4px 28px rgba(0, 0, 0, 0.06);
}
body main section.page-blog .produtos-left-bar .categorias .produto-categoria .categoria-in {
  display: block;
}
body main section.page-blog .produtos-left-bar .categorias .produto-categoria .link {
  display: block;
  padding: 6px 2px;
  text-decoration: none;
  color: #323232;
  font-family: "DM Sans", sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.4;
  border-radius: 8px;
  transition: color 0.15s ease;
}
body main section.page-blog .produtos-left-bar .categorias .produto-categoria .link::before {
  content: "";
  position: absolute;
  bottom: -7px;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: #c5c5c5;
  transition: 0.3s all;
}
body main section.page-blog .produtos-left-bar .categorias .produto-categoria .link:hover {
  color: #023766;
}
body main section.page-blog .produtos-left-bar .categorias .produto-categoria.active .link {
  color: #023766;
  font-weight: 700;
}
body main section.page-blog .produtos-left-bar .categorias .produto-categoria.active .categoria-in a::before {
  background-color: #023766;
}
@media (max-width: 991px) {
  body main section.page-blog .produtos-left-bar {
    gap: 14px;
  }
  body main section.page-blog .produtos-left-bar .box-search,
  body main section.page-blog .produtos-left-bar .categorias {
    border-radius: 16px;
  }
}
@media (min-width: 992px) {
  body main section.blog-interna .header-conteudo {
    padding-bottom: 100px;
  }
  body main section.blog-interna .header-conteudo .box-header-in {
    min-height: 110px;
  }
  body main section.blog-interna .header-conteudo .box-header-in h1 {
    font-size: 25px;
  }
  body main section.blog-interna .header-conteudo .box-header-in::after, body main section.blog-interna .header-conteudo .box-header-in::before {
    display: none;
  }
}
body main section.blog-interna .blog-interna-main {
  padding-bottom: 50px;
}
body main section.blog-interna .blog-interna-main .txt-blog-in .img-principal {
  width: 100%;
  height: 425px;
  border-radius: 15px;
  overflow: hidden;
  margin-top: -90px;
  margin-bottom: 40px;
}
body main section.blog-interna .blog-interna-main .txt-blog-in .img-principal img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
body main section.blog-interna .blog-interna-main .txt-blog-in .conteudo-in {
  font-family: Manrope;
  font-size: 18px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}
body main section.blog-interna .blog-interna-main .txt-blog-in .conteudo-in h1, body main section.blog-interna .blog-interna-main .txt-blog-in .conteudo-in h2, body main section.blog-interna .blog-interna-main .txt-blog-in .conteudo-in h3, body main section.blog-interna .blog-interna-main .txt-blog-in .conteudo-in h4, body main section.blog-interna .blog-interna-main .txt-blog-in .conteudo-in h5, body main section.blog-interna .blog-interna-main .txt-blog-in .conteudo-in h6 {
  font-family: Manrope;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
}
body main section.blog-interna .blog-interna-main .txt-blog-in .conteudo-in h1 {
  font-size: 34px;
}
body main section.blog-interna .blog-interna-main .txt-blog-in .conteudo-in h2 {
  font-size: 30px;
}
body main section.blog-interna .blog-interna-main .txt-blog-in .conteudo-in h3 {
  font-size: 26px;
}
body main section.blog-interna .blog-interna-main .txt-blog-in .conteudo-in h4 {
  font-size: 22px;
}
body main section.blog-interna .blog-interna-main .txt-blog-in .conteudo-in h5 {
  font-size: 18px;
}
body main section.blog-interna .blog-interna-main .txt-blog-in .conteudo-in h6 {
  font-size: 14px;
}
@media (max-width: 991px) {
  body main section.blog-interna .header-conteudo .box-header-in h1 {
    font-size: 22px;
  }
  body main section.blog-interna .blog-interna-main {
    padding: 30px 0;
  }
  body main section.blog-interna .blog-interna-main .txt-blog-in .img-principal {
    height: 250px;
    margin: 0 0 20px;
  }
}
body main section.page-orcamento .page-orcamento-main {
  padding: 50px 0;
}
body main section.page-orcamento .page-orcamento-main .box-ctas-contatos {
  padding: 50px 30px;
  border-radius: 15px;
  background: #FFF;
  box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.15);
  display: flex;
  justify-content: space-between;
  gap: 15px;
  margin-bottom: 50px;
}
body main section.page-orcamento .page-orcamento-main .box-ctas-contatos .main-phone .icon, body main section.page-orcamento .page-orcamento-main .box-ctas-contatos .main-phone.zap .icon {
  background-color: #307BC4;
  border: 1px solid #307BC4;
}
body main section.page-orcamento .page-orcamento-main .box-ctas-contatos .main-cta {
  background: linear-gradient(90deg, #2F74B7 0%, #284E6D 80%);
}
@media (max-width: 991px) {
  body main section.page-orcamento .page-orcamento-main {
    padding: 30px 0;
  }
  body main section.page-orcamento .page-orcamento-main .box-ctas-contatos {
    flex-direction: column;
    justify-content: center;
    align-items: center;
    margin-bottom: 30px;
  }
  body main section.page-orcamento .page-orcamento-main .box-ctas-contatos .main-phone {
    min-width: 170px;
  }
}
body main section.page-contato .page-contato-main {
  padding: 50px 0;
}
body main section.page-contato .page-contato-main .box-card-contato {
  border-radius: 40px;
  background: #fff;
  box-shadow: 0px 4px 22.3px 0px rgba(0, 0, 0, 0.25);
  padding: 65px;
}
body main section.page-contato .page-contato-main .box-card-contato .box-card-left .box-img {
  height: 355px;
  width: 100%;
  overflow: hidden;
  border-radius: 12px;
  margin-bottom: 19px;
}
body main section.page-contato .page-contato-main .box-card-contato .box-card-left .box-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
body main section.page-contato .page-contato-main .box-card-contato .box-card-left .box-text-info {
  color: #161616;
  font-family: Kanit;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  margin-bottom: 42px;
}
body main section.page-contato .page-contato-main .box-card-contato .box-card-left .box-text-info h1,
body main section.page-contato .page-contato-main .box-card-contato .box-card-left .box-text-info h2 {
  color: #161616;
  font-family: Kanit;
  font-size: 40px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
}
body main section.page-contato .page-contato-main .box-card-contato .box-card-left .box-redes {
  display: flex;
  gap: 30px;
  justify-content: space-around;
}
body main section.page-contato .page-contato-main .box-card-contato .box-card-left .box-redes .box-rede-in {
  transition: 0.3s all;
}
body main section.page-contato .page-contato-main .box-card-contato .box-card-left .box-redes .box-rede-in .icon {
  width: 103px;
  height: 103px;
  background-color: #599aa8;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  margin-bottom: 11px;
  transition: 0.3s all;
}
body main section.page-contato .page-contato-main .box-card-contato .box-card-left .box-redes .box-rede-in .icon i {
  font-size: 26px;
  color: white;
  font-weight: 100;
}
body main section.page-contato .page-contato-main .box-card-contato .box-card-left .box-redes .box-rede-in .label-txt {
  color: #6b6b6b;
  text-align: center;
  font-family: Kanit;
  font-size: 15px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}
body main section.page-contato .page-contato-main .box-card-contato .box-card-left .box-redes .box-rede-in:hover {
  transform: translateY(-2px);
}
body main section.page-contato .page-contato-main .box-card-contato .box-card-left .box-redes .box-rede-in:hover .icon {
  background-color: #39727e;
}
body main section.page-contato .page-contato-main .box-card-contato form .text-form h3 {
  color: #161616;
  text-align: center;
  font-family: Kanit;
  font-size: 25px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  margin-bottom: 30px;
}
body main section.page-contato .page-contato-main .box-card-contato form .box-input {
  margin-bottom: 19px;
}
body main section.page-contato .page-contato-main .box-card-contato form .box-input label {
  color: #161616;
  text-align: center;
  font-family: Kanit;
  font-size: 16px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  margin-bottom: 7px;
}
body main section.page-contato .page-contato-main .box-card-contato form .box-input input:not(.form-check-input),
body main section.page-contato .page-contato-main .box-card-contato form .box-input textarea,
body main section.page-contato .page-contato-main .box-card-contato form .box-input select {
  display: flex;
  width: 100%;
  padding: 15px 23px;
  align-items: center;
  gap: 10px;
  align-self: stretch;
  border-radius: 10px;
  border: 1px solid #bcbcbc;
  background: #f1f1f1;
  color: #909090;
  font-family: Kanit;
  font-size: 15px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}
body main section.page-contato .page-contato-main .box-card-contato form .box-input input:not(.form-check-input) option,
body main section.page-contato .page-contato-main .box-card-contato form .box-input textarea option,
body main section.page-contato .page-contato-main .box-card-contato form .box-input select option {
  color: var(--3, #595959);
}
body main section.page-contato .page-contato-main .box-card-contato form .box-input input:not(.form-check-input)::-moz-placeholder, body main section.page-contato .page-contato-main .box-card-contato form .box-input textarea::-moz-placeholder, body main section.page-contato .page-contato-main .box-card-contato form .box-input select::-moz-placeholder {
  color: #9f9f9f;
}
body main section.page-contato .page-contato-main .box-card-contato form .box-input input:not(.form-check-input)::placeholder,
body main section.page-contato .page-contato-main .box-card-contato form .box-input textarea::placeholder,
body main section.page-contato .page-contato-main .box-card-contato form .box-input select::placeholder {
  color: #9f9f9f;
}
body main section.page-contato .page-contato-main .box-card-contato form .box-input textarea {
  height: 169px;
  resize: none;
}
body main section.page-contato .page-contato-main .box-card-contato form .main-cta {
  border-radius: 10px;
  background: #10404b;
  margin: 16px auto 0 auto;
  display: flex;
  max-width: 232px;
}
@media (max-width: 991px) {
  body main section.page-contato .page-contato-main .box-card-contato {
    padding: 30px 15px;
    border-radius: 15px;
  }
  body main section.page-contato .page-contato-main .box-card-contato .box-card-left .box-img {
    height: 250px;
    margin-bottom: 15px;
  }
  body main section.page-contato .page-contato-main .box-card-contato .box-card-left .box-text-info {
    margin-bottom: 15px;
  }
  body main section.page-contato .page-contato-main .box-card-contato .box-card-left .box-text-info h1,
  body main section.page-contato .page-contato-main .box-card-contato .box-card-left .box-text-info h2 {
    font-weight: 27px;
    line-height: 1;
    margin-bottom: 15px;
  }
  body main section.page-contato .page-contato-main .box-card-contato .box-card-left .box-redes {
    flex-wrap: wrap;
    gap: 15px;
    justify-content: center;
    align-items: center;
  }
  body main section.page-contato .page-contato-main .box-card-contato .box-card-left .box-redes .box-rede-in .icon {
    width: 60px;
    height: 60px;
  }
  body main section.page-contato .page-contato-main .box-card-contato form {
    margin-top: 50px;
  }
  body main section.page-contato .page-contato-main .box-card-contato form .text-form h3 {
    font-size: 22px;
  }
}
@font-face {
  font-family: "DM Sans";
  src: url("../fonts/DMSans18pt-Light.woff2") format("woff2"), url("../fonts/DMSans18pt-Light.woff") format("woff");
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "DM Sans";
  src: url("../fonts/DMSans18pt-Regular.woff2") format("woff2"), url("../fonts/DMSans18pt-Regular.woff") format("woff");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "DM Sans";
  src: url("../fonts/DMSans18pt-Medium.woff2") format("woff2"), url("../fonts/DMSans18pt-Medium.woff") format("woff");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "DM Sans";
  src: url("../fonts/DMSans18pt-Bold.woff2") format("woff2"), url("../fonts/DMSans18pt-Bold.woff") format("woff");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "DM Sans";
  src: url("../fonts/DMSans18pt-ExtraBold.woff2") format("woff2"), url("../fonts/DMSans18pt-ExtraBold.woff") format("woff");
  font-weight: 800;
  font-style: normal;
  font-display: swap;
}
body main body {
  font-family: "DM Sans", sans-serif;
  font-weight: 400;
}
body main .page-contato {
  /* ===== Contatos – Página ===== */
  /* ===== Card de Canais ===== */
  /* ===== Cards inferiores ===== */
  /* ===== Formulário ===== */
}
body main .page-contato .main-pages-contact {
  display: block;
  float: left;
  width: 100%;
  background-image: url("../image/bg_interna-contatos.png");
  background-repeat: no-repeat;
  padding: 48px 0 64px;
}
body main .page-contato .contact-card {
  border-radius: 16px;
  background: #023766;
  color: #fff;
  box-shadow: 0 12px 32px rgba(2, 55, 102, 0.12);
  padding: 28px 30px 20px 30px;
}
body main .page-contato .contact-card .card-title {
  font-family: "DM Sans", sans-serif;
  color: #ebb632;
  margin: 0 0 14px;
  text-align: center;
}
body main .page-contato .contact-card .contact-list {
  list-style: none;
  padding: 0;
  margin: 0 0 16px;
}
body main .page-contato .contact-card .contact-list .contact-item {
  display: grid;
  grid-template-columns: 40px 1fr;
  gap: 30px;
  align-items: start;
  padding: 10px 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}
body main .page-contato .contact-card .contact-list .contact-item:last-child {
  border-bottom: 0;
}
body main .page-contato .contact-card .contact-list .contact-item a {
  display: flex;
}
body main .page-contato .contact-card .contact-list .contact-item .icon {
  width: 53.825px;
  height: 53.825px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  color: #fff;
  background-color: transparent;
  border: 1px solid #fff;
}
body main .page-contato .contact-card .contact-list .contact-item .icon svg {
  width: 20px;
  height: 20px;
  display: block;
}
body main .page-contato .contact-card .contact-list .contact-item .info strong,
body main .page-contato .contact-card .contact-list .contact-item .info .label,
body main .page-contato .contact-card .contact-list .contact-item .info a {
  display: block;
  color: #fff;
  font-family: "DM Sans", sans-serif;
  font-size: 17.575px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  margin-bottom: 2px;
}
body main .page-contato .contact-card .contact-list .contact-item .info a {
  cursor: pointer;
}
body main .page-contato .contact-card .contact-list .contact-item .info span,
body main .page-contato .contact-card .contact-list .contact-item .info .number {
  color: #fff;
  font-family: "DM Sans", sans-serif;
  font-size: 17.575px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}
body main .page-contato .contact-card .contact-list .contact-item .info span p,
body main .page-contato .contact-card .contact-list .contact-item .info .number p {
  margin-bottom: 0;
}
body main .page-contato .cta-panel-header {
  max-width: 1034px;
  margin: 0 auto;
  display: flex;
  display: block;
}
@media (max-width: 576px) {
  body main .page-contato .cta-panel-header {
    margin-top: 0 !important;
  }
}
body main .page-contato .cta-panel {
  border-radius: 20px;
  background: #fff;
  box-shadow: 0 4px 14.2px rgba(0, 0, 0, 0.15);
  padding: 24px 28px;
  max-width: 60%;
  margin: 0 auto;
  /* no layout a parte da direita é branca (sem novo card branco) */
}
@media (max-width: 576px) {
  body main .page-contato .cta-panel {
    width: 100%;
    max-width: 100%;
  }
}
body main .page-contato .cta-panel .col-lg-5,
body main .page-contato .cta-panel .col-lg-7 {
  display: flex;
}
body main .page-contato .cta-panel .card-emergencia,
body main .page-contato .cta-panel .card-sla {
  width: 100%;
}
body main .page-contato .cta-panel .card-sla {
  background: transparent;
  border: 0;
  box-shadow: none;
  padding: 0;
}
@media (max-width: 991px) {
  body main .page-contato .cta-panel {
    padding: 18px;
  }
}
body main .page-contato .card-emergencia,
body main .page-contato .card-sla {
  border-radius: 14px;
  padding: 20px;
  display: flex;
  align-items: flex-start;
  gap: 18px;
  height: 100%;
}
body main .page-contato .card-emergencia {
  color: #fff;
  border-radius: 20px;
  background: #023766;
  box-shadow: 0 4px 14.2px 0 rgba(0, 0, 0, 0.15);
}
body main .page-contato .card-emergencia .emg-text h4 {
  margin: 0 0 6px;
  color: #ebb632;
  font-family: "DM Sans", sans-serif;
  font-size: 35px;
  font-style: normal;
  font-weight: 800;
  line-height: normal;
}
body main .page-contato .card-emergencia .emg-text p {
  margin: 0;
  color: #fff;
  font-family: "DM Sans", sans-serif;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}
body main .page-contato .card-sla {
  background: #fff;
  border: 1px solid rgba(2, 55, 102, 0.08);
  box-shadow: 0 10px 28px rgba(0, 0, 0, 0.06);
  justify-content: flex-start;
  flex-direction: column;
  /* ===== Responsivo ===== */
}
body main .page-contato .card-sla .sla-text {
  max-width: 520px;
}
body main .page-contato .card-sla .sla-text h4 {
  margin: 0;
  color: #023766;
  font: 700 16px/1.35 "DM Sans";
}
body main .page-contato .card-sla .btn-wa .wa-dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #fff;
  opacity: 0.85;
}
body main .page-contato .card-sla .btn-wa:hover {
  filter: brightness(1.03);
  transform: translateY(-1px);
}
body main .page-contato .card-sla .btn-wa:active {
  transform: translateY(0);
}
@media (max-width: 991px) {
  body main .page-contato .card-sla {
    padding: 34px 0 44px;
  }
  body main .page-contato .card-sla .contact-card {
    margin-top: 10px;
  }
  body main .page-contato .card-sla .card-sla {
    flex-direction: column;
    align-items: stretch;
    gap: 14px;
  }
  body main .page-contato .card-sla .card-sla .btn-wa {
    align-self: flex-start;
  }
}
body main .page-contato .contact-title {
  font-size: 25px;
  font-weight: 700;
  margin: 0 0 6px;
}
body main .page-contato .contact-title,
body main .page-contato .contact-sub {
  color: #023766;
  font-family: "DM Sans", sans-serif;
  font-style: normal;
  line-height: normal;
}
body main .page-contato .contact-sub {
  color: #023766;
  font-size: 16px;
  font-weight: 400;
  margin: 0 0 18px;
}
body main .page-contato .contact-form .form-group {
  margin-bottom: 12px;
}
body main .page-contato .contact-form label {
  color: #023766;
  font-family: "DM Sans", sans-serif;
  font-size: 16px;
  font-style: normal;
  line-height: normal;
  display: block;
  color: #023766;
  font-weight: 700;
  font-size: 12px;
  margin: 0 0 4px;
}
body main .page-contato .contact-form input,
body main .page-contato .contact-form textarea {
  width: 100%;
  height: 40px;
  padding: 10px 12px;
  color: #323232;
  outline: 0;
  border-radius: 6px;
  border: 1px solid #d8d8d8;
  background: #fff;
  transition: box-shadow 0.2s ease, border-color 0.2s ease;
}
body main .page-contato .contact-form input::-moz-placeholder, body main .page-contato .contact-form textarea::-moz-placeholder {
  color: #9aa7b4;
}
body main .page-contato .contact-form input::placeholder,
body main .page-contato .contact-form textarea::placeholder {
  color: #9aa7b4;
}
body main .page-contato .contact-form input:focus,
body main .page-contato .contact-form textarea:focus {
  border-color: rgba(2, 55, 102, 0.35);
  box-shadow: 0 0 0 3px rgba(2, 55, 102, 0.08);
}
body main .page-contato .contact-form textarea {
  min-height: 96px;
  resize: vertical;
}
body main .page-contato .contact-form .btn-enviar {
  display: inline-block;
  margin-top: 10px;
  margin-left: 20px;
  padding: 10px 20px;
  height: 40px;
  border: 0;
  border-radius: 8px;
  font-weight: 700;
  background-image: linear-gradient(90deg, #f6911d 0%, #ebb632 100%);
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.08);
  transition: transform 0.15s ease, filter 0.15s ease;
  color: #02335d;
  text-align: center;
  font-family: "DM Sans", sans-serif;
  font-size: 16px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
}
body main .page-contato .contact-form .btn-enviar:hover {
  filter: brightness(1.03);
  transform: translateY(-1px);
}
body main .page-contato .contact-form .btn-enviar:active {
  transform: translateY(0);
}
body main section.page-programa .page-programa-main {
  padding: 70px 0;
}
body main section.page-programa .page-programa-main .box-como-funciona {
  margin-bottom: 90px;
}
body main section.page-programa .page-programa-main .box-como-funciona h3 {
  color: #161616;
  text-align: center;
  font-family: Kanit;
  font-size: 40px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  margin-bottom: 45px;
}
body main section.page-programa .page-programa-main .box-como-funciona .row-como-funciona .col-como-funciona {
  position: relative;
}
body main section.page-programa .page-programa-main .box-como-funciona .row-como-funciona .col-como-funciona:nth-child(2)::before, body main section.page-programa .page-programa-main .box-como-funciona .row-como-funciona .col-como-funciona:nth-child(2)::after {
  content: "";
  position: absolute;
  top: 0;
  height: 100%;
  width: 3px;
  background-color: #C3C3C3;
  pointer-events: none;
}
body main section.page-programa .page-programa-main .box-como-funciona .row-como-funciona .col-como-funciona:nth-child(2)::before {
  left: -1.5px;
}
body main section.page-programa .page-programa-main .box-como-funciona .row-como-funciona .col-como-funciona:nth-child(2)::after {
  right: -1.5px;
}
body main section.page-programa .page-programa-main .box-como-funciona .row-como-funciona .col-como-funciona .box-como-funciona-in {
  max-width: 350px;
  margin: auto;
}
body main section.page-programa .page-programa-main .box-como-funciona .row-como-funciona .col-como-funciona .box-como-funciona-in .icon {
  margin-bottom: 17px;
}
body main section.page-programa .page-programa-main .box-como-funciona .row-como-funciona .col-como-funciona .box-como-funciona-in .titulo-in {
  color: #70AA7D;
  font-family: Kanit;
  font-size: 16px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  margin-bottom: 13px;
}
body main section.page-programa .page-programa-main .box-como-funciona .row-como-funciona .col-como-funciona .box-como-funciona-in .valor-in {
  color: #161616;
  font-family: Kanit;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}
body main section.page-programa .page-programa-main .box-green {
  border-radius: 40px;
  background: linear-gradient(155deg, #70AA7D 15.92%, #58AC6B 100%);
  box-shadow: 0px 4px 22.3px 0px rgba(0, 0, 0, 0.25);
  padding: 125px 50px;
  height: 100%;
}
body main section.page-programa .page-programa-main .box-green .box-green-conteudo {
  color: #FFF;
  font-family: Kanit;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}
body main section.page-programa .page-programa-main .box-green .box-green-conteudo h2 {
  color: #FFF;
  font-family: Kanit;
  font-size: 40px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
}
body main section.page-programa .page-programa-main .box-green .box-green-conteudo h3 {
  color: #FFF;
  font-family: Kanit;
  font-size: 25px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
}
body main section.page-programa .page-programa-main .box-green .box-green-conteudo h3::after {
  content: url('data:image/svg+xml; utf8,<svg xmlns="http://www.w3.org/2000/svg" width="267" height="24" viewBox="0 0 267 24" fill="none"> <path d="M266.561 13.0607C267.146 12.4749 267.146 11.5251 266.561 10.9393L257.015 1.3934C256.429 0.807612 255.479 0.807612 254.893 1.3934C254.308 1.97918 254.308 2.92893 254.893 3.51472L263.379 12L254.893 20.4853C254.308 21.0711 254.308 22.0208 254.893 22.6066C255.479 23.1924 256.429 23.1924 257.015 22.6066L266.561 13.0607ZM0 13.5H265.5V10.5H0V13.5Z" fill="white"/> </svg>');
  transform: translateY(10px);
  display: inline-block;
}
body main section.page-programa .page-programa-main form {
  border-radius: 40px;
  background: #FFF;
  box-shadow: 0px 4px 22.3px 0px rgba(0, 0, 0, 0.25);
  padding: 40px 40px;
  height: 100%;
}
body main section.page-programa .page-programa-main form .box-input {
  margin-bottom: 19px;
}
body main section.page-programa .page-programa-main form .box-input label {
  color: #161616;
  text-align: center;
  font-family: Kanit;
  font-size: 16px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  margin-bottom: 7px;
}
body main section.page-programa .page-programa-main form .box-input input:not(.form-check-input),
body main section.page-programa .page-programa-main form .box-input textarea, body main section.page-programa .page-programa-main form .box-input select {
  display: flex;
  width: 100%;
  padding: 15px 23px;
  align-items: center;
  gap: 10px;
  align-self: stretch;
  border-radius: 10px;
  border: 1px solid #BCBCBC;
  background: #F1F1F1;
  color: #909090;
  font-family: Kanit;
  font-size: 15px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}
body main section.page-programa .page-programa-main form .box-input input:not(.form-check-input) option,
body main section.page-programa .page-programa-main form .box-input textarea option, body main section.page-programa .page-programa-main form .box-input select option {
  color: var(--3, #595959);
}
body main section.page-programa .page-programa-main form .box-input input:not(.form-check-input)::-moz-placeholder, body main section.page-programa .page-programa-main form .box-input textarea::-moz-placeholder, body main section.page-programa .page-programa-main form .box-input select::-moz-placeholder {
  color: #9f9f9f;
}
body main section.page-programa .page-programa-main form .box-input input:not(.form-check-input)::placeholder,
body main section.page-programa .page-programa-main form .box-input textarea::placeholder, body main section.page-programa .page-programa-main form .box-input select::placeholder {
  color: #9f9f9f;
}
body main section.page-programa .page-programa-main form .box-input textarea {
  height: 169px;
  resize: none;
}
body main section.page-programa .page-programa-main form .main-cta {
  border-radius: 10px;
  background: #10404B;
  margin: 16px auto 0 auto;
  display: flex;
  max-width: 232px;
}
body main section.page-programa .cadastre {
  background-color: #10404B;
  padding: 50px 0;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 23px;
}
body main section.page-programa .cadastre .txt-cadastre {
  color: #FFF;
  text-align: center;
  font-family: Kanit;
  font-size: 40px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
}
@media (max-width: 991px) {
  body main section.page-programa .cadastre {
    padding: 30px 0;
  }
  body main section.page-programa .cadastre .txt-cadastre {
    font-size: 25px;
  }
}
@media (max-width: 991px) {
  body main section.page-programa .page-programa-main .box-como-funciona {
    margin-bottom: 30px;
  }
  body main section.page-programa .page-programa-main .box-como-funciona h3 {
    font-size: 25px;
    text-align: center;
  }
  body main section.page-programa .page-programa-main .box-como-funciona .row-como-funciona .col-como-funciona {
    margin-bottom: 20px;
    text-align: center;
  }
  body main section.page-programa .page-programa-main .box-como-funciona .row-como-funciona .col-como-funciona::before, body main section.page-programa .page-programa-main .box-como-funciona .row-como-funciona .col-como-funciona::after {
    display: none;
  }
  body main section.page-programa .page-programa-main .box-como-funciona .row-como-funciona .col-como-funciona .box-como-funciona-in .icon svg {
    width: 50px;
    height: 50px;
  }
  body main section.page-programa .page-programa-main .box-como-funciona .row-como-funciona .col-como-funciona .box-como-funciona-in .titulo-in {
    margin-bottom: 0;
  }
  body main section.page-programa .page-programa-main .box-green {
    padding: 30px;
    margin-bottom: 30px;
    height: auto;
  }
  body main section.page-programa .page-programa-main .box-green .box-green-conteudo h2 {
    font-size: 27px;
  }
  body main section.page-programa .page-programa-main .box-green .box-green-conteudo h3 {
    font-size: 22px;
  }
  body main section.page-programa .page-programa-main .box-green .box-green-conteudo h3::after {
    display: none;
  }
  body main section.page-programa .page-programa-main form {
    padding: 40px 30px;
  }
}
body main section.carrinho {
  padding: 50px 0;
}
@media screen and (max-width: 991px) {
  body main section.carrinho {
    padding: 20px 0;
  }
}
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: 1200px;
  margin: auto;
  width: 100%;
  display: flex;
  justify-content: space-between;
  overflow: hidden;
  border-radius: 5px;
  border: 1px solid #10404B;
}
body main section.carrinho .passos a {
  display: flex;
  padding: 10px 20px;
  width: 33%;
  flex-grow: 1;
  align-items: center;
  justify-content: center;
  font-size: 20px;
  font-weight: 400;
  color: #afafaf;
  position: relative;
}
body main section.carrinho .passos a:last-child:after {
  display: none;
}
body main section.carrinho .passos a strong {
  font-weight: 300;
  border: 2px solid #afafaf;
  border-radius: 100%;
  width: 50px;
  height: 50px;
  margin-right: 15px;
  display: flex;
  align-items: center;
  justify-content: center;
}
body main section.carrinho .passos a.ativo {
  background-color: #5294a2;
  color: #fff;
}
body main section.carrinho .passos a.ativo strong {
  color: #fff;
  border-color: #fff;
}
body main section.carrinho .passos a:hover {
  color: #afafaf;
}
body main section.carrinho .passos a:hover.ativo {
  color: white;
}
@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 rgba(220, 220, 220, 0.3019607843);
}
body main section.carrinho .carrinho-mobile .produto {
  border-bottom: 1px solid rgba(220, 220, 220, 0.3019607843);
  display: flex;
  margin: 0;
  padding: 20px 0;
  align-items: center;
}
body main section.carrinho .carrinho-mobile .produto img {
  height: 100%;
  width: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
body main section.carrinho .carrinho-mobile .removerMobile {
  color: red;
  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: #565656;
}
body main section.carrinho .carrinho-mobile .quantidade {
  font-size: 14px;
  color: dimgray;
  display: inline-block;
  min-width: 80px;
  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.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 td {
  background-color: #10404B;
  color: white;
  padding: 20px 30px;
  font-size: 18px;
  font-weight: 500;
  border: 1px solid rgba(220, 220, 220, 0.3019607843);
}
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 rgba(220, 220, 220, 0.3019607843);
}
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.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: #565656;
  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 h5 {
  font-weight: 600;
  text-transform: uppercase;
  color: dimgray;
  font-size: 19px;
  margin-left: 20px;
}
body main section.carrinho .tabela-carrinho td .produto img {
  width: 100px;
}
body main section.carrinho .main-cta.bg-blue {
  border: 1px solid #10404B;
  color: #10404B;
  background-color: white;
  display: inline-block;
  transition: 0.3s all;
  max-width: 280px;
}
body main section.carrinho .main-cta.bg-blue:hover {
  background-color: #10404B;
  color: white;
}
body main section.carrinho .box {
  margin: 70px auto 0 auto;
  width: 100%;
  max-width: 1000px;
  border-radius: 7px;
}
body main section.carrinho .box .endereco {
  font-size: 18px;
  color: #ffffff;
  line-height: 20px;
  display: none;
}
body main section.carrinho .box .endereco strong {
  font-size: 20px;
  display: block;
  margin-bottom: 8px;
  font-weight: 600;
}
@media (max-width: 991px) {
  body main section.carrinho .box {
    margin-top: 20px;
    padding: 20px;
  }
  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: #ffffff;
  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: #10404B;
  padding: 30px 70px;
  border-radius: 7px;
  font-weight: 300;
  margin-top: 30px;
}
body main section.carrinho .enviado h1 {
  color: #10404B;
  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: 15px 60px 0 60px;
}
body main section.carrinho .form .main-cta {
  margin-top: 20px;
  background-color: #10404B;
}
body main section.carrinho .form h1 {
  font-size: 30px;
  color: #10404B;
  font-weight: 600;
  text-align: center;
}
body main section.carrinho .form h5 {
  text-align: center;
  color: gray;
  margin-bottom: 5px;
}
body main section.carrinho .form h6 {
  text-align: center;
  margin-bottom: 20px;
  font-weight: 300;
  font-size: 18px;
}
body main section.carrinho .form label {
  font-weight: 500;
  display: block;
  font-size: 18px;
  margin: 0;
  margin-bottom: 5px;
}
body main section.carrinho .form label {
  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%;
  border: 1px solid gainsboro;
  padding: 10px 25px;
  font-size: 18px;
  outline: none;
}
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 footer {
  /* Acessibilidade: helper para labels visuais ocultas */
}
body footer section.barra-fixa {
  position: fixed;
  bottom: -1px;
  background: #fff;
  border-top: 2px solid #599aa8;
  width: 100%;
  padding: 10px 80px 15px 80px;
  z-index: 600;
  transition: all 0.5s;
}
@media (max-width: 991px) {
  body footer section.barra-fixa {
    display: none;
  }
}
body footer section.barra-fixa.oculta {
  bottom: -100px;
}
@media (max-width: 576px) {
  body footer section.barra-fixa {
    display: none;
  }
}
body footer section.barra-fixa .main-phone:not(.zap) .icon {
  border-color: #10404b;
  background-color: #10404b;
}
body footer section.barra-fixa-mobile {
  position: fixed;
  bottom: 0px;
  left: 0px;
  width: 100%;
  z-index: 999;
  padding: 5px 0;
  border-top: 2px solid #f6911d;
  transition: 0.3s all;
}
@media (max-width: 991px) {
  body footer section.barra-fixa-mobile {
    background: #f2f2f2;
  }
}
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 .row-ctas a .icon {
  width: 38px;
  height: 38px;
}
body footer section.barra-fixa-mobile .list-itens a {
  color: #023766;
}
body footer section.barra-fixa-mobile .list-itens a i {
  color: #023766;
}
@media screen and (min-width: 992px) {
  body footer section.barra-fixa-mobile {
    display: none;
  }
}
body footer section.footer {
  /* Responsivo */
  /* Barra de direitos (copy) */
}
body footer section.footer .maps {
  height: 302px;
}
body footer section.footer .maps iframe {
  width: 100%;
  height: 302px;
}
body footer section.footer .footer-in {
  /* navy com leve gradiente como no layout */
  background-image: url("../image/bg-footer.png");
  background-size: cover;
  background-repeat: no-repeat;
  color: #fff;
  padding: 48px 0 10px;
  /* Respeita usuários que preferem menos movimento */
}
body footer section.footer .footer-in .footer-grid {
  align-items: flex-start;
}
@media (max-width: 576px) {
  body footer section.footer .footer-in .footer-grid {
    padding: 20px 30px;
  }
}
body footer section.footer .footer-in .logo-rodape {
  width: 100%;
  max-width: 230px;
  -o-object-fit: contain;
     object-fit: contain;
  margin-bottom: 18px;
}
body footer section.footer .footer-in .footer-brand {
  text-align: left;
}
body footer section.footer .footer-in .footer-brand .short_description {
  padding-right: 2.5rem !important;
}
body footer section.footer .footer-in .footer-brand .short_description p {
  color: #fff;
  font-family: "DM Sans", sans-serif;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 120%;
}
body footer section.footer .footer-in .footer-brand .footer-social {
  justify-content: center;
  margin-top: 2rem;
}
body footer section.footer .footer-in .footer-brand .logo-rodape {
  margin-left: auto;
  margin-right: auto;
  max-width: 180px;
}
@media (max-width: 576px) {
  body footer section.footer .footer-in .blockFooter .footer-title {
    cursor: pointer;
    letter-spacing: 0;
  }
  body footer section.footer .footer-in .blockFooter .footer-title:after {
    content: "+";
    font-size: 18px;
    font-family: "DM Sans", sans-serif;
    padding-left: 5px;
  }
  body footer section.footer .footer-in .blockFooter .footer-title.open:after {
    content: "-";
    font-size: 18px;
    font-family: "DM Sans", sans-serif;
  }
}
body footer section.footer .footer-in .footer-title {
  font-weight: 700;
  font-size: 18px;
  padding-bottom: 20px;
  margin-bottom: 10px;
  color: #ffffff;
  position: relative;
}
body footer section.footer .footer-in .footer-title strong {
  color: #fff;
  font-family: "DM Sans", sans-serif;
  font-size: 25px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  position: relative;
}
body footer section.footer .footer-in .footer-title strong::after {
  content: "";
  display: block;
  width: 38px;
  height: 4px;
  background-color: #ebb632;
  position: absolute;
  bottom: -10px;
}
body footer section.footer .footer-in .footer-links {
  list-style: none;
  padding: 0;
  margin: 10px 0 0 0;
}
body footer section.footer .footer-in .footer-links li {
  margin: 0 0 8px 0;
}
@media (max-width: 576px) {
  body footer section.footer .footer-in .footer-links li {
    display: none;
  }
}
body footer section.footer .footer-in .footer-links.zap {
  background-color: red;
}
body footer section.footer .footer-in .footer-links.zap::after {
  display: none;
}
body footer section.footer .footer-in .footer-links.text-links a {
  color: #fff;
  font-family: "DM Sans", sans-serif;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 190%; /* 30.4px */
  transition: color 0.2s ease;
  position: relative;
}
body footer section.footer .footer-in .footer-links.text-links a:after {
  content: "";
  position: absolute;
  left: 50%;
  right: 50%;
  bottom: 0;
  background: #f6911d;
  height: 0;
  transition: all 300ms ease;
}
body footer section.footer .footer-in .footer-links.text-links a:hover:after {
  left: 0;
  right: 0;
  height: 1px;
}
body footer section.footer .footer-in .footer-links.text-links a:hover,
body footer section.footer .footer-in .footer-links.text-links a.active {
  color: #f6911d;
}
body footer section.footer .footer-in .footer-links.text-links .muted {
  color: rgba(255, 255, 255, 0.55);
  font-size: 14px;
}
body footer section.footer .footer-in .footer-links.social-links a {
  cursor: pointer;
}
body footer section.footer .footer-in .footer-links.social-links a .label,
body footer section.footer .footer-in .footer-links.social-links a .number {
  color: #fff;
  font-family: "DM Sans", sans-serif;
  font-size: 16px;
  font-style: normal;
  font-weight: 700;
  line-height: 190%; /* 30.4px */
}
body footer section.footer .footer-in .footer-links.social-links a .number {
  font-weight: 400;
  transition: color 0.2s ease;
  position: relative;
}
body footer section.footer .footer-in .footer-links.social-links a .number:after {
  content: "";
  position: absolute;
  left: 50%;
  right: 50%;
  bottom: 0;
  background: #f6911d;
  height: 0;
  transition: all 300ms ease;
}
body footer section.footer .footer-in .footer-links.social-links a .number:hover:after {
  left: 0;
  right: 0;
  height: 1px;
}
body footer section.footer .footer-in .footer-links.social-links a .info {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
}
body footer section.footer .footer-in .footer-links.social-links a:hover,
body footer section.footer .footer-in .footer-links.social-links a.active {
  color: #f6911d;
  text-decoration: none;
}
body footer section.footer .footer-in .footer-links.social-links .muted {
  color: rgba(255, 255, 255, 0.55);
  font-size: 14px;
}
@media (max-width: 576px) {
  body footer section.footer .footer-in .blockFooter {
    width: 100%;
  }
}
body footer section.footer .footer-in .footer-contact {
  list-style: none;
  padding: 0;
  margin: 0;
}
body footer section.footer .footer-in .footer-contact li {
  margin: 0 0 10px 0;
}
body footer section.footer .footer-in .footer-contact .label {
  display: block;
  font-size: 13px;
  color: #cfe0ee;
  margin-bottom: 2px;
}
body footer section.footer .footer-in .footer-contact a {
  color: #fff;
  text-decoration: none;
  font-weight: 600;
}
body footer section.footer .footer-in .footer-contact a:hover {
  text-decoration: underline;
}
body footer section.footer .footer-in .footer-news {
  --acc: #ebb632;
  --bgA: rgba(255, 255, 255, 0.1);
  --bgB: rgba(255, 255, 255, 0.14);
  --bdA: rgba(255, 255, 255, 0.15);
  --bdB: rgba(255, 255, 255, 0.35);
  --dur: 0.28s;
  --eas: cubic-bezier(0.4, 0, 0.2, 1);
}
body footer section.footer .footer-in .footer-news .label {
  color: #fff;
  font-family: "DM Sans", sans-serif;
  font-size: 16px;
  font-weight: 700;
  line-height: 190%;
}
body footer section.footer .footer-in .footer-news .news-input {
  position: relative;
  display: flex;
  align-items: center;
  overflow: hidden;
  border-radius: 6px;
  border: 1px solid var(--bdA);
  background: var(--bgA);
  transition: border-color var(--dur) var(--eas), background-color var(--dur) var(--eas), box-shadow var(--dur) var(--eas);
}
body footer section.footer .footer-in .footer-news .news-input::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 2px;
  width: 0%;
  margin: 0 auto 0 0;
  background: var(--acc);
  transition: width var(--dur) var(--eas);
}
body footer section.footer .footer-in .footer-news .news-input:hover {
  border-color: var(--bdB);
  background: rgba(255, 255, 255, 0.12);
}
body footer section.footer .footer-in .footer-news .news-input:focus-within {
  border-color: var(--acc);
  background: var(--bgB);
  box-shadow: 0 0 0 3px rgba(235, 182, 50, 0.22);
}
body footer section.footer .footer-in .footer-news .news-input:focus-within::after {
  width: 100%;
}
body footer section.footer .footer-in .footer-news input {
  flex: 1;
  height: 40px;
  padding: 0 48px 0 12px;
  background: transparent;
  border: 0;
  color: #f6911d;
  font-size: 14px;
  outline: none;
}
body footer section.footer .footer-in .footer-news input::-moz-placeholder {
  color: #cfe0ee;
  opacity: 0.85;
  -moz-transition: opacity var(--dur) ease, transform var(--dur) var(--eas);
  transition: opacity var(--dur) ease, transform var(--dur) var(--eas);
}
body footer section.footer .footer-in .footer-news input::placeholder {
  color: #cfe0ee;
  opacity: 0.85;
  transition: opacity var(--dur) ease, transform var(--dur) var(--eas);
}
body footer section.footer .footer-in .footer-news input:focus::-moz-placeholder {
  opacity: 0.45;
  transform: translateX(2px);
}
body footer section.footer .footer-in .footer-news input:focus::placeholder {
  opacity: 0.45;
  transform: translateX(2px);
}
body footer section.footer .footer-in .footer-news .send-btn {
  position: absolute;
  right: 0;
  width: 44px;
  height: 40px;
  display: grid;
  place-items: center;
  border: 0;
  background: transparent;
  cursor: pointer;
  color: #0b3559;
  transition: transform var(--dur) var(--eas), filter var(--dur) ease;
}
.news-input:hover body footer section.footer .footer-in .footer-news .send-btn, .news-input:focus-within body footer section.footer .footer-in .footer-news .send-btn {
  transform: translateX(2px) scale(1.03);
}
body footer section.footer .footer-in .footer-news .send-btn:hover {
  filter: brightness(0.95);
}
body footer section.footer .footer-in .footer-news .send-btn:focus-visible {
  outline: 2px solid var(--acc);
  outline-offset: 2px;
}
body footer section.footer .footer-in .footer-news .news-input input:invalid:not(:-moz-placeholder) {
  /* realce mínimo — evite poluição visual enquanto digita */
  box-shadow: none;
}
body footer section.footer .footer-in .footer-news .news-input input:invalid:not(:placeholder-shown) {
  /* realce mínimo — evite poluição visual enquanto digita */
  box-shadow: none;
}
@media (prefers-reduced-motion: reduce) {
  body footer section.footer .footer-in .footer-news * {
    transition: none !important;
    animation: none !important;
  }
}
body footer section.footer .footer-in .line-separator {
  height: 1px;
  width: 100%;
  background: rgba(255, 255, 255, 0.25);
  margin: 18px 0 0 0;
}
@media (max-width: 991px) {
  body footer section.footer .footer-in {
    padding: 32px 0 56px;
  }
  body footer section.footer .footer-title {
    margin-top: 0;
  }
  body footer section.footer .footer-brand {
    text-align: center;
  }
  body footer section.footer .footer-brand .short_description {
    padding-right: 2.5rem !important;
  }
  body footer section.footer .footer-brand .short_description p {
    color: #fff;
    font-family: "DM Sans", sans-serif;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 120%;
  }
  body footer section.footer .footer-brand .footer-social {
    justify-content: center;
  }
  body footer section.footer .footer-brand .logo-rodape {
    margin-left: auto;
    margin-right: auto;
    max-width: 180px;
  }
}
body footer section.footer section.copy {
  color: #fff;
}
body footer section.footer section.copy a {
  color: #ffb12b;
}
@media (max-width: 991px) {
  body footer section.footer section.copy .txt-site {
    text-align: center;
    margin-bottom: 12px;
  }
  body footer section.footer section.copy .logo-raddar {
    text-align: center;
  }
}
body footer .sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
body footer section.botao_whatsapp {
  background-color: #25d366;
  width: 70px;
  height: 70px;
  position: fixed;
  z-index: 900;
  bottom: 40px;
  padding: 5px;
  align-items: center;
  justify-content: center;
  display: flex;
  text-align: center;
  right: 30px;
  border-radius: 75px;
  transition: all 0.5s;
}
@media (max-width: 576px) {
  body footer section.botao_whatsapp {
    width: 40px;
    height: 40px;
  }
}
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: 10px;
    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("../../default/image/bg-whatsapp-min.jpg");
  width: 100%;
  height: 100%;
  box-shadow: 2px 2px 7px 0px #373737;
  max-width: 320px;
  max-height: 360px;
  border-radius: 5px;
  overflow: hidden;
  z-index: 9999;
  transform-origin: 100% 100%;
  transform: scale(0);
  transition: all 0.3s;
}
body footer section.modal-whatsapp.exibir {
  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 .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: 13.4px;
  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: rgba(255, 255, 255, 0.9);
  backdrop-filter: blur(10px);
  box-shadow: -10px 0 10px rgba(0, 0, 0, 0.1);
  position: fixed;
  top: 0px;
  left: -100%;
  width: 100%;
  height: 100%;
  overflow: auto;
  z-index: 1001;
  padding-bottom: 65px;
  transition: all 0.5s;
  display: flex;
  justify-content: center;
}
body footer .menu-mobile.aberto {
  left: 0px;
}
body footer .menu-mobile .fechar {
  position: absolute;
  top: 5px;
  right: 5px;
  font-size: 25px;
  font-weight: 700;
  color: #023766;
}
body footer .menu-mobile .logo {
  width: 100%;
  padding: 10px;
  text-align: center;
  margin-bottom: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 70px;
  -o-object-fit: contain;
     object-fit: contain;
  max-height: 70px;
}
body footer .menu-mobile .logo img {
  height: 70px;
  -o-object-fit: contain;
     object-fit: contain;
  max-height: 70px;
}
body footer .menu-mobile ul {
  padding: 0px;
}
body footer .menu-mobile ul li {
  list-style: none;
  position: relative;
  vertical-align: middle;
  overflow: hidden;
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  line-height: 40px;
  text-align: left;
  position: relative;
}
body footer .menu-mobile ul li:last-child {
  border-bottom: none;
}
body footer .menu-mobile ul li a {
  color: #023766;
  font-family: "DM Sans", sans-serif;
  font-size: 18px;
  padding: 2px 10px;
  font-weight: 500;
  display: inline-block;
  width: 100%;
  background-color: rgba(255, 255, 255, 0.1);
  transition: 0.3s ease;
  border-top: 1px solid rgba(0, 0, 0, 0.2);
  text-decoration: none;
  padding: 0 15px;
}
body footer .menu-mobile ul li a::after {
  display: none;
}
body footer .menu-mobile ul li .nav-click {
  position: absolute;
  right: 0;
  top: 0;
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  z-index: 2;
}
body footer .menu-mobile ul li .nav-click .caret {
  border-top: 6px solid #023766;
  border-right: 6px solid transparent;
  border-left: 6px solid transparent;
  transition: transform 0.3s ease;
}
body footer .menu-mobile ul li .dropdown-menu {
  position: relative;
  max-height: 0;
  overflow: hidden;
  padding-top: 0;
  padding-bottom: 0;
  margin: 0;
  border: 0;
  transition: max-height 0.4s ease-in-out, padding 0.4s ease-in-out;
}
body footer .menu-mobile ul li .dropdown-menu li {
  border-top: 1px solid rgba(255, 255, 255, 0.1);
}
body footer .menu-mobile ul li .dropdown-menu li a {
  padding: 5px 15px 5px 30px;
  font-size: 16px;
  line-height: 30px;
  border: none;
}
body footer .menu-mobile ul li.submenu-aberto .nav-click .caret {
  transform: rotate(180deg);
}
body footer .menu-mobile ul li.submenu-aberto .dropdown-menu {
  display: block !important;
  max-height: 500px;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}
body footer .menu-mobile ul li.menu-social {
  transition: 0.3s ease;
  border-top: 1px solid rgba(0, 0, 0, 0.2);
  text-decoration: none;
  padding: 20px 15px;
}
body footer .menu-mobile ul li.menu-social li a {
  background-color: transparent;
  border-top: none;
}

/*# sourceMappingURL=custom.css.map*/