@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@300;400;500;600;700&display=swap');
@import url(css/bootstrap.min.css);
@import url(css/animate.css);
@import url(css/default-assets/classy-nav.css);
@import url(css/owl.carousel.min.css);
@import url(css/magnific-popup.css);
@import url(css/font-awesome.min.css);
@import url(css/style.css);

:root {
  --native-dark-visited-link-color: #CB0B1E !important;
}

* {
  margin: 0;
  padding: 0;
}

body {
  font-family: "Montserrat";
  font-weight: 400;
  font-size: 14px;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: "Montserrat";
  color: #303030;
  line-height: 1.2;
  font-weight: 600;
}

a,
a:active,
a:focus,
a:hover {
  font-family: "Montserrat";
  color: #303030;
  text-decoration: none;
  -webkit-transition-duration: 500ms;
  -o-transition-duration: 500ms;
  transition-duration: 500ms;
  outline: none;
  font-weight: 600;
}

/* Estilo para btn-sel-categoria sem hover */
.btn-sel-categoria {
  line-height: 2;
  color: #707070 !important;
  text-align: justify;
  font-size: 16px;
  font-weight: normal !important;
  position: relative;
  display: inline-block;
  cursor: pointer;
}


.btn-sel-categoria.active::after {
  content: "";
  position: absolute;
  width: 100%;
  height: 1.8px;
  bottom: 0;
  left: 0;
  background-color: #CB0B1E;
}

/* Estilo específico para links com underline animado */
.case-underline-link {
  position: relative;
  display: inline-block;
}

.case-underline-link::after {
  content: "";
  position: absolute;
  width: 0;
  height: 1.8px;
  bottom: 0;
  left: 0;
  background-color: #CB0B1E;
  transition: all 0.3s ease-in-out;
}

.case-underline-link:hover::after {
  width: 100%;
}

@media only screen and (max-width: 991px) {
  .case-underline-link::after {
    width: 100%;
  }

  @media(hover: hover) and (pointer: fine) {
    .case-underline-link:hover {
      color: white;
      z-index: 2;
    }

    .case-underline-link:hover::after {
      height: 100%;
      z-index: -1;
    }
  }

  .case-underline-link:active {
    color: white;
    z-index: 2;
  }

  .case-underline-link:active::after {
    height: 100%;
    z-index: -1;
  }
}

li {
  list-style: none;
}

p {
  line-height: 2;
  color: #707070;
  text-align: justify;
  font-size: 16px;
  font-weight: normal;
}

img {
  max-width: 100%;
  height: auto;
}

ul {
  margin: 0;
  padding: 0;
}

ul li {
  margin: 0;
  padding: 0;
}

.img-post {
  display: block;
  max-width: 100%;
  height: 240px;
  background: #fff;
  object-fit: cover;
  object-position: center;
}

.whatsapp-float {
  margin: 0 !important;
  padding: 0 !important;
  max-width: 60% !important; /* ajuste conforme tamanho desejado */
  display: block !important;
  object-fit: contain;
}


.img-fluid {
  margin-top: 60px;
  margin-left: 40px;
  max-width: 70% !important;
  align-items: left;
}

.cookieConsentContainer {
  z-index: 2147485019;
  min-height: 20px;
  box-sizing: border-box;
  padding: 30px 30px 30px 30px;
  background: #FFFFFFE3;
  border-radius: 13px;
  border: 1.53px solid rgba(151, 174, 207, 1);
  overflow: hidden;
  position: fixed;
  bottom: 20px;
  left: 20px;
  display: none;
  color: #8598B4;
  box-shadow: 0px 0px 14.34px 2.3px rgba(151, 174, 207, 0.72);
  margin: 0 auto;
  gap: 1.5vw;
}

.cookieConsentContainer .cookieTitle a {
  font-family: OpenSans, arial, sans-serif;
  color: #8598B4;
  font-size: 22px;
  line-height: 20px;
  display: block
}

.cookieConsentContainer .cookieDesc p {
  margin: 0;
  padding: 0;
  font-family: OpenSans, arial, sans-serif;
  font-weight: 500;
  color: #8598B4;
  font-size: 1vw;
  line-height: 20px;
  display: block;
}

.cookieBtn {
  justify-content: center;
  align-items: center;
  position: relative;
  z-index: 1;
  min-width: 140px;
  line-height: 35px;
  font-size: 0.7vw;
  font-weight: 600;
  display: inline-block;
  padding: 0 30px;
  text-transform: initial;
  color: #FFFFFF !important;
  border: 2.32px solid #D3DCEA;
  border-radius: 5px;
  background-color: #97AECF;
  transition-duration: 500ms;
  box-shadow: 1px 4px 5px 2px #b2b2b266;
  cursor: pointer;
}

.cookieBtn:hover,
.cookieBtn:active {
  background: #0055A9;
  border: 2.32px solid #71A0E4;
}

.cookieConsentContainer .cookieDesc a {
  font-family: OpenSans, arial, sans-serif;
  color: #fff;
  text-decoration: underline
}

.cookieConsentContainer .cookieButton a {
  display: inline-block;
  font-family: OpenSans, arial, sans-serif;
  color: #fff;
  font-size: 14px;
  font-weight: 700;
  margin-top: 14px;
  background: #000;
  box-sizing: border-box;
  padding: 15px 24px;
  text-align: center;
  transition: background .3s
}

.cookieConsentContainer .cookieButton a:hover {
  cursor: pointer;
  background: #e73369
}

@media (max-width:980px) {
  .cookieConsentContainer {
    bottom: 0 !important;
    left: 0 !important;
    width: 100% !important
  }
}

.grecaptcha-badge {
  display: none !important;
}

.cardadaptado {
  padding: 0px !important;
  margin-top: 12px;
  border: none;
}

.bg-overlay {
  position: relative;
  z-index: 1;
}

.bg-overlay::after {
  position: absolute;
  content: "";
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
  z-index: -1;
  background-color: rgba(0, 0, 0, 0.5);
}

.bg-img {
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
}

.jarallax {
  position: relative;
  z-index: 0;
}

.jarallax>.jarallax-img {
  position: absolute;
  object-fit: cover;
  font-family: 'object-fit: cover';
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
}

.mfp-iframe-holder .mfp-close {
  top: 0;
  width: 30px;
  height: 30px;
  background-color: #CB0B1E;
  text-align: center;
  right: 0;
  padding-right: 0;
  line-height: 32px;
}

.color-tc {
  color: #cb0b1e;
}

.bg-transparent {
  background-color: transparent !important;
}

.bg-gray {
  background-color: #f8f8f8 !important;
}

textarea:focus,
input:focus {
  outline: none;
}

/* :: 2.0 Spacing CSS */
.h-85 {
  height: 85% !important;
}

.mt-15 {
  margin-top: 15px;
}

.mt-30 {
  margin-top: 30px;
}

.mt-40 {
  margin-top: 40px;
}

.mt-50 {
  margin-top: 50px;
}

.mt-70 {
  margin-top: 70px;
}

.mt-80 {
  margin-top: 80px;
}

.mt-100 {
  margin-top: 100px;
}

.mt-150 {
  margin-top: 150px;
}

.mr-15 {
  margin-right: 15px;
}

.mr-30 {
  margin-right: 30px;
}

.mr-50 {
  margin-right: 50px;
}

.mr-100 {
  margin-right: 100px;
}

.mb-15 {
  margin-bottom: 15px;
}

.mb-30 {
  margin-bottom: 30px;
}

.mb-40 {
  margin-bottom: 40px;
}

.mb-50 {
  margin-bottom: 50px;
}

.mb-60 {
  margin-bottom: 60px;
}

.mb-70 {
  margin-bottom: 70px;
}

.mb-80 {
  margin-bottom: 80px;
}

.mb-100 {
  margin-bottom: 100px;
}

.ml-15 {
  margin-left: 15px;
}

.ml-30 {
  margin-left: 30px;
}

.ml-50 {
  margin-left: 50px;
}

.ml-100 {
  margin-left: 100px;
}

.pt-50 {
  padding-top: 50px !important;
}

.img-zoom {
  transition: transform 0.4s ease-in-out;
}

.img-zoom:hover {
  transform: scale(1.05);
}

.case-underline-title {
  position: relative;
  display: inline-block;
}

.case-underline-title::after {
  content: "";
  position: absolute;
  width: 100%;
  /* O underline cobre 100% da largura do texto */
  height: 2px;
  /* Espessura da linha */
  bottom: -5px;
  /* Espaçamento entre o texto e o underline */
  left: 0;
  /* Alinha o underline à esquerda */
  background-color: #CB0B1E;
  /* Cor do underline */
}


.section-padding-80 {
  padding-top: 80px;
  padding-bottom: 80px;
}

.section-padding-40 {
  padding-top: 40px;
  padding-bottom: 40px;
}

.section-padding-0-80 {
  padding-top: 0;
  padding-bottom: 80px;
}

.section-padding-80-0 {
  padding-top: 80px;
  padding-bottom: 0;
}

.section-padding-40-0 {
  padding-top: 40px;
  padding-bottom: 0;
}

.section-padding-25-0 {
  padding-top: 25px;
  padding-bottom: 0;
}

.section-padding-50-0 {
  padding-top: 50px;
  padding-bottom: 0;
}

.ajustewhats {
  width: 100px;
}

.ajustewhatsfooter {
  width: 80px;
}

/* :: 3.0 Preloader CSS */
#preloader {
  position: fixed;
  width: 100%;
  height: 100%;
  z-index: 99999;
  top: 0;
  left: 0;
  background-color: #CB0B1E;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.wrapper {
  margin: auto;
  display: block;
}

.cssload-loader {
  width: 49px;
  height: 49px;
  border-radius: 50%;
  display: inline-block;
  position: relative;
  vertical-align: middle;
  background: #ffffff;
}

.cssload-loader,
.cssload-loader:after,
.cssload-loader:before {
  animation: 1.15s infinite ease-in-out;
  -o-animation: 1.15s infinite ease-in-out;
  -ms-animation: 1.15s infinite ease-in-out;
  -webkit-animation: 1.15s infinite ease-in-out;
  -moz-animation: 1.15s infinite ease-in-out;
}

.cssload-loader:after,
.cssload-loader:before {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  position: absolute;
  top: 0;
  left: 0;
}

.cssload-loader {
  animation-name: cssload-loader;
  -o-animation-name: cssload-loader;
  -ms-animation-name: cssload-loader;
  -webkit-animation-name: cssload-loader;
  -moz-animation-name: cssload-loader;
}

@keyframes cssload-loader {
  from {
    transform: scale(0);
    opacity: 1;
  }

  to {
    transform: scale(1);
    opacity: 0;
  }
}

@-o-keyframes cssload-loader {
  from {
    -o-transform: scale(0);
    opacity: 1;
  }

  to {
    -o-transform: scale(1);
    opacity: 0;
  }
}

@-ms-keyframes cssload-loader {
  from {
    -ms-transform: scale(0);
    opacity: 1;
  }

  to {
    -ms-transform: scale(1);
    opacity: 0;
  }
}

@-webkit-keyframes cssload-loader {
  from {
    -webkit-transform: scale(0);
    opacity: 1;
  }

  to {
    -webkit-transform: scale(1);
    opacity: 0;
  }
}

@-moz-keyframes cssload-loader {
  from {
    -moz-transform: scale(0);
    opacity: 1;
  }

  to {
    -moz-transform: scale(1);
    opacity: 0;
  }
}

/* :: 4.0 Heading CSS */
.section-heading {
  position: relative;
  z-index: 1;
  margin-bottom: 70px;
  align-items: center;
}

.section-heading h2 {
  font-size: 38px;
  font-weight: normal;
  text-align: center;
  text-transform: initial;
  margin-bottom: 45px;
  line-height: 1.30;
}

.fonte48 {
  font-size: 40px !important;
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .section-heading h2 {
    font-size: 36px !important;
  }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
  .section-heading h2 {
    font-size: 42px !important;
  }
}

@media only screen and (max-width: 1100px) {
  .servicosicon h5 {
    font-size: 18px !important;
  }
}

@media only screen and (max-width: 767px) {
  .mt-mobile {
    margin-top: 30px;
  }

  .mb-mobile {
    margin-bottom: 50px;
  }

  .mb-30-mobile {
    margin-bottom: 30px;
  }

  .post-catagories {
    margin: 30px 0px !important;
  }

  .post-catagories ul li a {
    margin: 0px !important
  }

  .d-flex.align-items-center.justify-content-between.alinhamentoblogmobile {
    display: initial !important;
  }

  .section-heading h2 {
    font-size: 30px !important;
  }
}

@media only screen and (max-width: 1150px) {
  .hidden1150 {
    display: none !important;
  }

  .visible1150 {
    display: block !important;
  }
}

@media only screen and (min-width: 1151px) {
  .hidden1150 {
    display: block !important;
  }

  .visible1150 {
    display: none !important;
  }
}

@media only screen and (min-width: 1550px) and (max-width: 1800px) {
  .single-welcome-slide {
    height: 800px !important;
  }
}

@media only screen and (min-width: 1801px) and (max-width: 2000px) {
  .single-welcome-slide {
    height: 900px !important;
  }
}

@media only screen and (min-width: 2001px) and (max-width: 2300px) {
  .single-welcome-slide {
    height: 1000px !important;
  }
}

@media only screen and (min-width: 2301px) and (max-width: 2500px) {
  .single-welcome-slide {
    height: 1100px !important;
  }
}

@media only screen and (min-width: 2501px) {
  .single-welcome-slide {
    height: 1200px !important;
  }
}

.section-heading p {
  margin-top: 15px;
  font-size: 18px;
  margin-bottom: 0;
  color: #a6a6a6;
}


/* :: 5.0 Backtotop CSS */


/* :: 6.0 Buttons CSS */
.testing-btn {
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  z-index: 1;
  min-width: 140px;
  height: 35px;
  line-height: 35px;
  font-size: 12px;
  font-weight: 600;
  display: inline-block;
  padding: 0 30px;
  text-transform: initial;
  color: #CB0B1E;
  border: none;
  border-radius: 35px;
  background-color: #ffffff;
  transition-duration: 500ms;
  box-shadow: 0 6px 50px 0px rgba(203, 11, 30, 0.15);
}

.testing-btn:focus,
.testing-btn:hover {
  box-shadow: 0 6px 50px 0px rgba(203, 11, 30, 0.15);
  background-color: #CB0B1E;
  color: #ffffff !important;
}

/* Botão com variação de opacidade e correção de alinhamento */
.testing-btn--alt {
  position: relative;
  z-index: 1;
  min-width: 140px;
  height: 39px;
  line-height: 35px;
  font-size: 12px;
  font-weight: 600;
  display: inline-block;
  padding: 0 30px;
  text-align: center;
  text-transform: initial;
  color: white;
  border-radius: 35px;
  background-color: #8fb2ed;
  transition: opacity 500ms ease, box-shadow 500ms ease;
  box-shadow: 0 2px 10px 0px #8fb2ed;
  opacity: 1;
}

.testing-btn--alt:focus,
.testing-btn--alt:hover {
  color: white;
  background-color: #0055A9;
  box-shadow: 0 2px 20px 0px #0055A9;
  transition-duration: 1s;
  opacity: 0.7;
}

.testing-btn.btn-2 {
  background-color: #CB0B1E;
  color: #ffffff !important;
}

.testing-btn.btn-2:focus,
.testing-btn.btn-2:hover {
  background-color: #ffffff;
  color: #CB0B1E !important;
}

.testing-btn.btn-3 {
  border: 2px solid #CB0B1E;
  line-height: 46px;
}

.testing-btn.border-red {
  border: 2px solid #CB0B1E;
  line-height: 30px;
}

.login-register-btn a {
  display: inline-block;
}

.login-register-btn a span {
  -webkit-transition-duration: 500ms;
  -o-transition-duration: 500ms;
  transition-duration: 500ms;
  color: #a6a6a6;
}

.login-register-btn a span:focus,
.login-register-btn a span:hover {
  color: #CB0B1E;
}

.login-register-btn a:focus,
.login-register-btn a:hover {
  color: #CB0B1E;
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .login-register-btn a {
    font-size: 14px;
  }
}

/* :: 7.0 Header CSS */
.header-area {
  position: relative;
  z-index: 600;
  width: 100%;
  left: 0;
  top: 0;
  -webkit-transition-duration: 500ms;
  -o-transition-duration: 500ms;
  transition-duration: 500ms;
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
  .header-area .main-header-area {
    padding: 10px 0px
  }
}

@media only screen and (max-width: 767px) {
  .header-area .main-header-area {
    padding: 10px 0px
  }
}

.header-area .main-header-area.sticky {
  -webkit-transition-duration: 500ms;
  -o-transition-duration: 500ms;
  transition-duration: 500ms;
  top: 0;
  width: 100%;
  position: fixed;
  background-color: #f8f8f8;
  -webkit-box-shadow: 0 1px 6px 0 rgba(0, 0, 0, 0.1);
  box-shadow: 0 1px 6px 0 rgba(0, 0, 0, 0.1);
  border-bottom: none;
  left: 0;
  z-index: 650;
}

.header-area .search-icon {
  position: relative;
  z-index: 1;
  margin-left: 14px;
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
  .header-area .search-icon {
    margin-left: 15px;
    margin-top: 20px;
  }
}

@media only screen and (max-width: 767px) {
  .header-area .search-icon {
    margin-left: 15px;
    margin-top: 20px;
  }
}

.header-area .search-icon i {
  font-size: 20px;
  color: #303030;
  cursor: pointer;
}

.classy-nav-container {
  background-color: transparent;
  padding: 0;
}

@media only screen and (max-width: 767px) {
  .classy-nav-container {
    padding: 0 15px;
  }
}

.classy-nav-container .classy-navbar {
  height: 100px;
  padding: 0 3%;
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
  .classy-nav-container .classy-navbar {
    height: 70px;
    padding: 0 5%;
  }
}

@media only screen and (max-width: 767px) {
  .classy-nav-container .classy-navbar {
    height: 70px;
    padding: 0 5%;
  }
}

@media only screen and (max-width: 767px) {
  .classy-nav-container .classy-navbar .nav-brand {
    max-width: 90px;
    margin-right: 15px;
  }
}

.classy-nav-container .classy-navbar .classynav ul li a {
  position: relative;
  z-index: 1;
  font-weight: normal;
  font-size: 16px;
  text-transform: initial;
  color: #303030;
}

.classy-nav-container .classy-navbar .classynav ul li a:focus,
.classy-nav-container .classy-navbar .classynav ul li a:hover {
  color: #CB0B1E;
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .classy-nav-container .classy-navbar .classynav ul li a {
    font-size: 10px;
    padding: 0 10px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
  .classy-nav-container .classy-navbar .classynav ul li a {
    font-size: 14px;
  }
}

@media only screen and (max-width: 767px) {
  .classy-nav-container .classy-navbar .classynav ul li a {
    font-size: 14px;
  }
}

.classynav ul li.cn-dropdown-item ul li {
  padding: 0;
}

.classynav ul li .dropdown li a {
  border: none;
}

.classy-nav-container .classy-navbar .classynav ul li.cn-dropdown-item ul li a {
  font-size: 16px;
  text-transform: initial;
  height: 42px;
  line-height: 42px;
  padding: 0 30px;
  font-weight: 600;
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .classy-nav-container .classy-navbar .classynav ul li.cn-dropdown-item ul li a {
    font-size: 14px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
  .classy-nav-container .classy-navbar .classynav ul li.cn-dropdown-item ul li a {
    font-size: 14px;
  }
}

@media only screen and (max-width: 767px) {
  .classy-nav-container .classy-navbar .classynav ul li.cn-dropdown-item ul li a {
    font-size: 14px;
  }
}

.classy-nav-container .classy-navbar .classynav ul li.current-item a::after {
  content: '';
  position: absolute;
  width: 70%;
  height: 2px;
  background-color: #CB0B1E;
  bottom: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  z-index: 1;
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
  .classy-nav-container .classy-navbar .classynav ul li.current-item a::after {
    width: 100%;
    height: 1px;
  }
}

@media only screen and (max-width: 767px) {
  .classy-nav-container .classy-navbar .classynav ul li.current-item a::after {
    width: 100%;
    height: 1px;
  }
}

.classynav ul li.has-down>a::after,
.classynav ul li.has-down.active>a::after,
.classynav ul li.megamenu-item>a::after {
  color: #303030;
}

.breakpoint-off .classynav ul li .dropdown {
  width: 290px;
  -webkit-box-shadow: 0px 3.52px 3.52px 0px #00000040;
  box-shadow: 0px 3.52px 3.52px 0px #00000040;
  border-radius: 13px;
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
  .top-search-area {
    margin-top: 40px;
  }
}

.top-search-area form textarea {
  width: 100%;
  /* height: 50px; */
  border: none;
  box-shadow: 0 0 20px 0px rgb(0 0 0 / 8%);
  border-radius: 6px;
  font-size: 12px;
  font-style: italic;
  padding: 10px 20px 0px;
}

.top-search-area .modal-content {
  border: none;
}

.top-search-area .modal-content .modal-body {
  padding: 50px;
}

@media only screen and (max-width: 767px) {
  .top-search-area .modal-content .modal-body {
    padding: 50px 15px;
  }
}

@media only screen and (min-width: 576px) and (max-width: 767px) {
  .top-search-area .modal-content .modal-body {
    padding: 50px;
  }
}

.top-search-area .modal-content .modal-body button.close-btn {
  position: absolute;
  top: 15px;
  right: 15px;
  z-index: 10;
  font-size: 14px;
}

.top-search-area .modal-content .modal-body button.close-btn.btn {
  padding: 0;
  background-color: transparent;
}

.top-search-area .modal-content .modal-body button.close-btn.btn:focus,
.top-search-area .modal-content .modal-body button.close-btn.btn:hover {
  box-shadow: none;
  color: #CB0B1E;
}

.top-search-area form {
  width: 100%;
  position: relative;
  z-index: 1;
}

.top-search-area form input {
  width: 100%;
  height: 50px;
  border: none;
  box-shadow: 0 0 20px 0px rgb(0 0 0 / 8%);
  border-radius: 6px;
  font-size: 12px;
  font-style: italic;
  padding: 0 20px;
}

.top-search-area form input:focus {
  box-shadow: 0 0 30px 15px rgba(0, 0, 0, 0.08);
}

.top-search-area form button {
  position: absolute;
  width: 100px;
  height: 50px;
  top: 0;
  right: 0;
  z-index: 10;
  border-radius: 6px;
  border: none;
  background-color: #CB0B1E;
  font-weight: 600;
  font-size: 14px;
  text-transform: uppercase;
  text-align: center;
  color: #ffffff;
  cursor: pointer;
}

@media only screen and (max-width: 767px) {
  .top-search-area form button {
    width: 80px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
  .get-a-quote {
    margin: 30px 15px !important;
  }
}

@media only screen and (max-width: 767px) {
  .get-a-quote {
    margin: 30px 15px !important;
  }
}

/* :: 8.0 Hero CSS */
/* Alinhamento e layout */
.banner-flex {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
}

.custom-welcome-area .container {
  width: 100%;
  max-width: 100%;
  padding-top: 1.5vw;
  padding-left: 10vw;
  padding-right: 10vw;
}

.banner-left,
.banner-right {
  flex: 0 0 50%;
  max-width: 50%;
}

.welcome-text {
  text-align: left !important;
  position: relative;
  z-index: 10;
}

.banner-right {
  display: flex;
  justify-content: flex-end;
}

ome-slides a.btn {
  pointer-events: auto !important;
}

.welcome-slides {
  position: relative;
  z-index: 2;
  overflow: hidden;
  margin-top: 2vw;
}

.single-welcome-slide {
  position: relative;
  z-index: 2;
  width: 100%;
  height: auto !important;
  background-color: #ffffff;
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .single-welcome-slide {
    height: 650px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
  .single-welcome-slide {
    height: 600px;
  }
}

@media only screen and (max-width: 767px) {
  .single-welcome-slide {
    height: 900px;
  }
}

@media only screen and (min-width: 576px) and (max-width: 767px) {
  .single-welcome-slide {
    height: 1000px;
  }
}

.btn-welcome {
  border-radius: 1.92vw;
  color: #FFFFFF;
  box-shadow: -3px 1px 13px 3px #97AECFEB;
  border: none;
  cursor: pointer;
  text-align: center;
  background: #001F49;
  width: 12vw;
  height: 3vw;
  font-size: 0.85vw;
  font-weight: 600;
  padding: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 14px;
}

.btn-welcome:hover,
.btn-welcome:active {
  color: #FFFFFF !important;
  background-color: #0055A9;
  box-shadow: -3px 1px 13px 3px #528FE5EB;
}

.btn-welcome,
.btn-welcome:link,
.btn-welcome:visited,
.btn-welcome:hover,
.btn-welcome:active,
.btn-welcome:focus {
  color: #FFFFFF !important;
}

.single-welcome-slide .background-curve {
  position: absolute;
  width: 70%;
  top: 0;
  height: 100%;
  right: 0;
  z-index: -1;
}

.single-welcome-slide .background-curve img {
  width: 100%;
  height: auto;
  background-repeat: no-repeat;
}

.single-welcome-slide .welcome-text {
  position: relative;
  z-index: 1;
  padding-left: 70px;
  text-align: left !important;
}

@media only screen and (max-width: 767px) {
  .single-welcome-slide .welcome-text {
    padding-top: 50px;
  }

  .single-welcome-slide .welcome-text {
    padding-left: 70px;
    text-align: left !important;
  }
}

.single-welcome-slide .welcome-text h2 {
  font-size: 35px;
  font-weight: 500;
  display: block;
  margin-bottom: 23px;
  z-index: 10
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .single-welcome-slide .welcome-text h2 {
    font-size: 38px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
  .single-welcome-slide .welcome-text h2 {
    font-size: 36px;
  }
}

@media only screen and (max-width: 767px) {
  .single-welcome-slide .welcome-text h2 {
    font-size: 36px !important;
  }

  footer a {
    font-size: 13px !important;
  }
}

@media only screen and (min-width: 576px) and (max-width: 767px) {
  .single-welcome-slide .welcome-text h2 {
    font-size: 36px !important;
  }
}

.single-welcome-slide .welcome-text h2 span {
  color: #CB0B1E;
}

.single-welcome-slide .welcome-text h5 {
  font-size: 18px;
  font-weight: 400;
  color: #001F49;
  margin-bottom: 30px;
  display: block;
  z-index: 10
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .single-welcome-slide .welcome-text h5 {
    font-size: 18px;
    margin-bottom: 40px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
  .single-welcome-slide .welcome-text h5 {
    font-size: 14px;
    margin-bottom: 40px;
  }
}

@media only screen and (max-width: 767px) {
  .single-welcome-slide .welcome-thumbnail {
    margin-top: -200px;
  }
}

@media screen and (min-width: 1280px) and (min-height: 720px) {
  .single-welcome-slide .welcome-thumbnail {
    margin-top: -80px;
    width: 90% !important;
  }
}

.welcome-thumbnail {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  margin-top: 2vw;
  margin-right: 7vw;
}

.circle-welcome-area {
  position: relative;
  z-index: 4;
  overflow: hidden;
}

.circle-welcome-area::before {
  content: "";
  position: absolute;
  width: 40vw;
  height: 50vw;
  background: radial-gradient(circle,
      rgba(60, 141, 247, 0.15) 0%,
      rgba(60, 141, 247, 0.07) 50%,
      rgba(60, 141, 247, 0) 100%);
  border-radius: 50%;
  filter: blur(50px);
  top: 40%;
  right: -80px;
  transform: translateY(-50%);
  z-index: 4;
}

.circle-welcome {
  position: relative;
  z-index: 3;
  overflow: hidden;
}

.circle-welcome::before {
  content: "";
  position: absolute;
  width: 20vw;
  height: 20vw;
  background: radial-gradient(circle,
      rgba(60, 141, 247, 0.25) 0%,
      rgba(60, 141, 247, 0.12) 50%,
      rgba(60, 141, 247, 0) 100%);
  border-radius: 50%;
  filter: blur(50px);
  top: 30%;
  left: -60px;
  transform: translateY(-50%);
  z-index: 3;
}

.welcome-thumbnail img {
  width: 19vw !important;
  filter: drop-shadow(0px 4.14px 23.19px rgba(0, 0, 0, 0.25));
  position: relative;
  z-index: 2;
}

@media only screen and (min-width: 1400px) {
  .welcome-thumbnail img {
    width: 15vw !important;
    align-items: end;
  }

  .single-welcome-slide .welcome-text h2 {
    font-size: 1.8vw !important;
  }

  .single-welcome-slide .welcome-text h5 {
    font-size: 0.9vw !important;
  }

  .custom-welcome-area .container {
    padding-top: 4vw;
  }
}


/* Welcome Counter */

.welcome-counter {
  display: flex;
  justify-content: space-around;
  align-items: center;
  background: #FFFFFF29;
  backdrop-filter: blur(12.514389038085938px);
  box-shadow: 0px 3.34px 33.37px 0px #0000001F;
  border-radius: 3vw;
  padding: 1vw 0.3vw;
  margin: 1.5vw auto;
  max-width: 82vw;
  text-align: center;
  color: #001F49;
  font-family: "Montserrat" !important;
}

.welcome-counter>div {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.welcome-counter .counter {
  font-size: 3vw;
  font-weight: 700;
  color: #001F49;
  position: relative;
  display: inline-block;
}

.welcome-counter p {
  font-size: 0.85vw;
  font-weight: 600;
  letter-spacing: 0.05em;
  margin-top: 0.5vw;
  color: #001F49;
  text-transform: uppercase;
}

.projetos-number {
    margin-left: -3vw;
}

.cases-number {
  margin-right: -3vw;
}

/* Sufixos */
.projetos-number .counter::before {
  content: "+";
  margin-right: 0.1vw;
  font-weight: 700;
}

.anos-number .counter::after {
  content: "%";
  margin-right: 0.1vw;
  font-weight: 700;
}

.cases-number .counter::after {
  content: "%";
  margin-right: 0.1vw;
  font-weight: 700;
}


.rating-wrapper {
    display: flex;
    align-items: baseline;
    gap: 5px;
}

.stars {
    display: flex;
    gap: 3px;
}

.star {
    width: 1.2vw;
    height: 20px;
    display: block;
}



/* Responsivo */
@media (max-width: 992px) {
  .welcome-counter {
    flex-wrap: wrap;
    gap: 2rem;
    max-width: 80%;
    padding: 4vw 2vw;
  }

  .welcome-counter .counter {
    font-size: 5vw;
  }

  .welcome-counter p {
    font-size: 2.5vw;
  }
}


/* :: 09.0 Portfolio CSS */
.testing-portfolio-area {
  position: relative;
  z-index: 1;
  padding-left: 3%;
  padding-right: 3%;
}

.testing-portfolio-area .portfolio-bg-curve {
  position: absolute;
  bottom: 0;
  right: 0;
  z-index: -1;
  height: auto;
  width: auto;
}

.carrossel-title {
  font-size: 1.42vw;
  /* tamanho relativo em desktop */
  font-weight: 700;
  color: #001F49;
  text-align: center;
  margin: 0 auto 1rem auto;
}

/* Ajuste para tablets */
@media (max-width: 992px) {
  .carrossel-title {
    font-size: 1.5rem;
    /* tamanho fixo maior */
  }
}

/* Ajuste para celulares */
@media (max-width: 576px) {
  .carrossel-title {
    font-size: 1rem;
    /* ainda maior para mobile */
  }
}

.single-portfolio-slide {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  border-radius: 1vw;
  max-width: 300px;
  height: 120px;
  overflow: hidden;
  margin: 1.6vw auto !important;
}

.single-portfolio-slide:focus {
  -webkit-box-shadow: none;
  box-shadow: none;
}

.single-portfolio-slide:hover {
  -webkit-box-shadow: 0 0 25px 0px rgb(32 136 241 / 30%);
  box-shadow: 0 0 25px 0px rgb(32 136 241 / 30%);
}

.single-portfolio-slide img {
  max-height: 100%;
  max-width: 80%;
  object-fit: contain;
}

/* Em telas médias */
@media (min-width: 768px) {
  .single-portfolio-slide {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    overflow: hidden;
    margin: 1.6vw auto !important;
  }

  .single-portfolio-slide img {
    max-height: 100%;
    max-width: 80%;
    object-fit: contain;
  }
}

/* Em telas grandes */
@media (min-width: 1200px) {
  .single-portfolio-slide {
    height: 140px;
  }
}


.portfolio-sildes {
  position: relative;
  z-index: 1;
}



.portfolio-menu {
  position: relative;
  z-index: 1;
}

.portfolio-menu button {
  background-color: transparent;
  padding: 0;
  font-weight: 600;
  color: #a6a6a6;
  font-size: 22px;
  margin: 0 20px;
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .portfolio-menu button {
    font-size: 20px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
  .portfolio-menu button {
    font-size: 18px;
  }
}

@media only screen and (max-width: 767px) {
  .portfolio-menu button {
    font-size: 16px;
    margin: 0 10px;
  }
}

@media only screen and (min-width: 480px) and (max-width: 767px) {
  .portfolio-menu button {
    font-size: 14px;
    margin: 0 5px;
  }
}

.portfolio-menu button.active,
.portfolio-menu button:hover {
  color: #303030;
}

.portfolio-menu button:focus {
  box-shadow: none;
}



.portfolio-details-text {
  position: relative;
  z-index: 1;
}

.portfolio-details-text h2 {
  font-size: 36px;
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .portfolio-details-text h2 {
    font-size: 30px;
  }
}

@media only screen and (max-width: 767px) {
  .portfolio-details-text h2 {
    font-size: 24px;
  }
}

.portfolio-details-text h6 {
  font-size: 14px;
  text-transform: uppercase;
  color: #CB0B1E;
  letter-spacing: 1px;
  margin-bottom: 20px;
  font-weight: 400;
}

.portfolio-details-text p {
  margin-bottom: 0;
}

.portfolio-meta h6 {
  color: #707070;
  margin-bottom: 10px;
  font-weight: 400;
}

@media only screen and (max-width: 767px) {
  .portfolio-meta {
    margin-top: 50px;
  }
}

.portfolio-social-info p {
  margin-bottom: 0;
  margin-right: 15px;
}

.portfolio-social-info a {
  display: inline-block;
  margin-right: 15px;
  font-size: 16px;
}

.portfolio-social-info a:last-child {
  margin-right: 0;
}

.portfolio-social-info a:hover,
.portfolio-social-info a:focus {
  color: #CB0B1E;
}

.portfolio-pager {
  position: relative;
  z-index: 1;
}

.portfolio-pager a {
  display: inline-block;
  color: #707070;
}

.portfolio-pager a:nth-child(2) {
  color: #a6a6a6;
}

.portfolio-pager a:hover,
.portfolio-pager a:focus {
  color: #CB0B1E;
}

@media only screen and (max-width: 767px) {
  .portfolio-pager a {
    font-size: 12px;
  }
}

@media only screen and (min-width: 480px) and (max-width: 767px) {
  .portfolio-pager a {
    font-size: 16px;
  }
}

/* :: 10.0 Testimonial CSS */
.testimonial-slides {
  position: relative;
  z-index: 1;
  padding-left: 10%;
  padding-right: 10%;
}

.testimonial-slides .owl-next,
.testimonial-slides .owl-prev {
  position: absolute;
  top: 50%;
  width: 50px;
  height: auto;
  margin-top: -25px;
  left: 0;
  z-index: 10;
  line-height: 50px;
}

.testimonial-slides .owl-next i,
.testimonial-slides .owl-prev i {
  font-size: 50px;
  color: #b7b7b7;
}

.testimonial-slides .owl-next i:hover,
.testimonial-slides .owl-next i:focus,
.testimonial-slides .owl-prev i:hover,
.testimonial-slides .owl-prev i:focus {
  color: #CB0B1E;
}

.testimonial-slides .owl-next {
  left: auto;
  right: 0;
}

.border-line {
  position: relative;
  z-index: 1;
  width: 100%;
  height: 1px;
  background-color: #f8f8f8;
}

.single-testimonial-slide {
  position: relative;
  z-index: 1;
}

@media only screen and (max-width: 767px) {
  .single-testimonial-slide {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
}

.single-testimonial-slide .testimonial-thumbnail {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 170px;
  flex: 0 0 170px;
  max-width: 170px;
  width: 170px;
  height: 170px;
  border-radius: 50%;
  margin-right: 60px;
}

.single-testimonial-slide .testimonial-thumbnail img {
  border-radius: 50%;
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .single-testimonial-slide .testimonial-thumbnail {
    margin-right: 30px;
  }
}

@media only screen and (max-width: 767px) {
  .single-testimonial-slide .testimonial-thumbnail {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 120px;
    flex: 0 0 120px;
    max-width: 120px;
    width: 120px;
    height: 120px;
    margin-right: 0;
    margin-bottom: 50px;
  }
}

.single-testimonial-slide .testimonial-content {
  position: relative;
  z-index: 1;
}

.single-testimonial-slide .testimonial-content h4 {
  font-weight: normal;
  font-style: italic;
  margin-bottom: 30px;
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .single-testimonial-slide .testimonial-content h4 {
    font-size: 20px;
  }
}

@media only screen and (max-width: 767px) {
  .single-testimonial-slide .testimonial-content h4 {
    font-size: 18px;
  }
}

.single-testimonial-slide .testimonial-content .ratings {
  position: relative;
  z-index: 1;
  display: block;
  margin-bottom: 10px;
}

.single-testimonial-slide .testimonial-content .ratings i {
  font-size: 16px;
  color: #f3c612;
}

.single-testimonial-slide .testimonial-content .author-info h5 {
  font-size: 22px;
  font-weight: 400;
  margin-bottom: 0;
}

@media only screen and (max-width: 767px) {
  .single-testimonial-slide .testimonial-content .author-info h5 {
    font-size: 14px;
  }
}

.single-testimonial-slide .testimonial-content .author-info h5 span {
  font-size: 14px;
  text-transform: uppercase;
  color: #b7b7b7;
}

@media only screen and (max-width: 767px) {
  .single-testimonial-slide .testimonial-content .author-info h5 span {
    font-size: 12px;
  }
}

.single-testimonial-slide .testimonial-content .quote-icon {
  position: absolute;
  right: 0;
  bottom: 0;
  z-index: -1;
}

/* :: 11.0 Newsletter CSS */
.testing-newsletter-area {
  position: relative;
  z-index: 1;
}

.nl-content h3 span {
  color: white;
  border: 1px solid #19448f;
  border-radius: 20px;
  padding: 3px 10px;
}

.testing-newsletter-area .border-line {
  width: 100%;
  height: 1px;
  background-color: #f8f8f8;
}

.testing-newsletter-area .nl-content {
  position: relative;
  z-index: 1;
}

.testing-newsletter-area .nl-content h2 {
  font-size: 36px;
  display: block;
  margin-bottom: 0;
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .testing-newsletter-area .nl-content h2 {
    font-size: 30px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
  .testing-newsletter-area .nl-content h2 {
    font-size: 24px;
  }
}

@media only screen and (max-width: 767px) {
  .testing-newsletter-area .nl-content h2 {
    font-size: 24px;
  }
}

.testing-newsletter-area .nl-content p {
  margin-bottom: 0;
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .testing-newsletter-area .nl-content p {
    font-size: 14px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
  .testing-newsletter-area .nl-content p {
    font-size: 12px;
  }
}

.testing-newsletter-area .nl-form form {
  position: relative;
  z-index: 1;
}

.testing-newsletter-area .nl-form form input {
  width: 100%;
  height: 50px;
  border-radius: 50px;
  background-color: #f8f8f8;
  border: none;
  font-size: 16px;
  padding: 0 30px;
}

.testing-newsletter-area .nl-form form button {
  -webkit-transition-duration: 500ms;
  -o-transition-duration: 500ms;
  transition-duration: 500ms;
  position: absolute;
  padding: 0 30px;
  border-radius: 0 50px 50px 0;
  background-color: #CB0B1E;
  font-size: 16px;
  color: #ffffff;
  height: 50px;
  top: 0;
  right: 0;
  border: none;
  cursor: pointer;
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
  .testing-newsletter-area .nl-form form button {
    padding: 0 20px;
  }
}

@media only screen and (max-width: 767px) {
  .testing-newsletter-area .nl-form form button {
    padding: 0 20px;
  }
}

.testing-newsletter-area .nl-form form button:hover,
.testing-newsletter-area .nl-form form button:focus {
  background-color: #303030;
}

/* :: 12.0 About CSS */
.about-us-content {
  position: relative;
  z-index: 1;
}

.about-us-content h2 {
  font-size: 41px;
  display: block;
  margin-bottom: 25px;
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .about-us-content h2 {
    font-size: 36px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
  .about-us-content h2 {
    font-size: 30px;
  }
}

@media only screen and (max-width: 767px) {
  .about-us-content h2 {
    font-size: 30px;
  }
}

.about-us-thumbnail {
  position: relative;
  z-index: 1;
  width: 100%;
  padding-right: 100px;
}

.about-us-thumbnail img {
  width: 100%;
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
  .about-us-thumbnail {
    padding-right: 0;
  }
}

@media only screen and (max-width: 767px) {
  .about-us-thumbnail {
    padding-right: 0;
  }
}

.testing-video-area {
  position: absolute;
  top: 50%;
  right: 65px;
  z-index: 99;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
  .testing-video-area {
    right: auto;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
  }
}

@media only screen and (max-width: 767px) {
  .testing-video-area {
    right: auto;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
  }
}

.testing-video-area .video-play-btn {
  display: inline-block;
  border-radius: 50%;
  width: 70px;
  height: 70px;
  background-color: #CB0B1E;
  color: #ffffff;
  line-height: 70px;
  text-align: center;
  font-size: 24px;
}

.testing-video-area .video-play-btn i {
  padding-left: 5px;
}

.testing-video-area .video-play-btn:focus,
.testing-video-area .video-play-btn:hover {
  box-shadow: none;
  background-color: #CB0B1E;
}

.testing-about-us-area {
  position: relative;
  z-index: 1;
}

.testing-about-us-area .about-bg-pattern {
  position: absolute;
  width: 40%;
  left: 0;
  bottom: 0;
  z-index: -1;
  height: 100%;
}

.testing-about-us-area .about-bg-pattern img {
  height: 100%;
  width: auto;
}

.testing-video-area .video-play-btn {
  -webkit-transform: scale(0.93);
  -ms-transform: scale(0.93);
  transform: scale(0.93);
}

.testing-video-area .video-play-btn:after {
  position: absolute;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  content: '';
  -webkit-box-sizing: content-box;
  -moz-box-sizing: content-box;
  box-sizing: content-box;
  top: 0;
  left: 0;
  padding: 0;
  z-index: -1;
  box-shadow: 0 0 0 2px #CB0B1E;
  opacity: 1;
  -webkit-transform: scale(0.9);
  -ms-transform: scale(0.9);
  transform: scale(0.9);
  -webkit-animation: sonarEffect 1.3s ease-out 75ms infinite;
  animation: sonarEffect 1.3s ease-out 75ms infinite;
}

@-webkit-keyframes sonarEffect {
  0% {
    opacity: 0.3;
  }

  40% {
    opacity: 0.5;
    box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.1), 0 0 10px 10px #3851bc, 0 0 0 10px rgba(255, 255, 255, 0.5);
  }

  100% {
    box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.1), 0 0 10px 10px #3851bc, 0 0 0 10px rgba(255, 255, 255, 0.5);
    transform: scale(1.5);
    opacity: 0;
  }
}

@-moz-keyframes sonarEffect {
  0% {
    opacity: 0.3;
  }

  40% {
    opacity: 0.5;
    box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.1), 0 0 10px 10px #3851bc, 0 0 0 10px rgba(255, 255, 255, 0.5);
  }

  100% {
    box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.1), 0 0 10px 10px #3851bc, 0 0 0 10px rgba(255, 255, 255, 0.5);
    transform: scale(1.5);
    opacity: 0;
  }
}

@keyframes sonarEffect {
  0% {
    opacity: 0.3;
  }

  40% {
    opacity: 0.5;
    box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.1), 0 0 10px 10px #3851bc, 0 0 0 10px rgba(255, 255, 255, 0.5);
  }

  100% {
    box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.1), 0 0 10px 10px #3851bc, 0 0 0 10px rgba(255, 255, 255, 0.5);
    transform: scale(1.5);
    opacity: 0;
  }
}

.testing-why-choose-us-area {
  position: relative;
  z-index: 1;
}

.testing-why-choose-us-area .section-heading h2 {
  font-size: 32px;
}


.choose-us-content {
  text-align: center;
}

.traco {
  font-size: 32px;
  position: relative;
  display: inline-block;
  padding-bottom: 8px;
}

/* pseudo-elemento com a imagem por baixo do texto */
.traco::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -6px;
  height: 36px;
  background-image: url('../img/tc/traco.jpg');
  background-repeat: no-repeat;
  background-size: 90% auto;
  background-position: center bottom;
  pointer-events: none;
  z-index: -1;
}

.sucesso {
  border: 2px solid #94accc;
  border-radius: 100px;
  padding: 1px 1px;
}

.why-container {
  max-width: 100%;
}

/* Afasta o conteúdo das laterais */
.testing-why-choose-us-area {
  padding-left: 60px;
  padding-right: 60px;
}

.lista-beneficios {
  text-align: center;
  font-weight: bold;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 35px 150px;
  max-width: 750px;
  margin: auto;
}

.lista-beneficios .item {
  position: relative;
  padding-left: 50px;
  padding-right: 50px;
  padding-bottom: 5px;
  line-height: 1.3;
  font-size: 1.1vw;
  z-index: 1;
}

.lista-beneficios .item::before {
  content: "✔";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-size: 60px;
  color: rgba(36, 194, 102, 0.3);
  color: rgba(36, 194, 102, 0.3);
  font-weight: bold;
  z-index: -1;
  z-index: -1;
  pointer-events: none;
  filter: blur(3px);
}

.about-tab-area {
  position: relative;
  z-index: 1;
}

.about-tab-area .nav-tabs .nav-item {
  margin-bottom: 0;
}

.about-tab-area .nav-tabs .nav-link {
  position: relative;
  z-index: 1;
  letter-spacing: 2px;
  text-transform: uppercase;
  padding: 0 0 15px 0;
  border: none;
  margin-right: 30px;
  background-color: transparent;
}

@media only screen and (max-width: 767px) {
  .about-tab-area .nav-tabs .nav-link {
    letter-spacing: 1px;
    margin-right: 15px;
    font-size: 14px;
  }
}

.about-tab-area .nav-tabs .nav-link.active:after {
  content: '';
  position: absolute;
  bottom: -1px;
  left: 0;
  background-color: #CB0B1E;
  width: 100%;
  height: 2px;
}

/*Responsividade da secton */
@media only screen and (min-width: 1480px) {
  .testing-why-choose-us-area .section-heading h2 {
    font-size: 1.6vw;
  }

  .traco {
    font-size: 1.6vw;
  }

  .lista-beneficios {
    max-width: 70%;
    gap: 2vw 5vw;
  }

  .lista-beneficios .item {
    font-size: 1.1vw;
  }
}

@media only screen and (min-width: 1800px) {
  .lista-beneficios {
    max-width: 50%;
    padding: 1vw;
    gap: 2vw 5vw;
  }

  .lista-beneficios .item {
    line-height: 1.4;
    font-size: 0.9vw;
  }

  .lista-beneficios .item::before {
    font-size: 80px;
  }


}

/* 13.0 Service CSS */
.single-service-area {
  position: relative;
  z-index: 1;
  text-align: center;
}

.single-service-area .service-icon {
  background-color: #f8f8f8;
  width: 145px;
  height: 110px;
  font-size: 42px;
  color: #303030;
  text-align: center;
  line-height: 110px;
  border-radius: 80px 200px 200px 362px;
  margin: 0 auto 30px;
  -webkit-transition-duration: 500ms;
  -o-transition-duration: 500ms;
  transition-duration: 500ms;
}

.single-service-area h5 {
  font-size: 22px;
  display: block;
  margin-bottom: 15px;
  -webkit-transition-duration: 300ms;
  -o-transition-duration: 300ms;
  transition-duration: 300ms;
  font-weight: 600;
}

.single-service-area:focus .service-icon,
.single-service-area:hover .service-icon {
  background-color: #CB0B1E;
  color: #ffffff;
  -webkit-box-shadow: 0 6px 50px 0px rgba(203, 11, 30, 0.15);
  box-shadow: 0 6px 50px 0px rgba(203, 11, 30, 0.15);
}

.single-service-area:focus h5,
.single-service-area:hover h5 {
  color: #CB0B1E;
}

.cta-testimonial-cfa-area {
  position: relative;
  z-index: 1;
}

.cta-testimonial-cfa-area .cta-testimonial-cfa-bg-curve {
  position: absolute;
  left: 0;
  top: 0;
  width: auto;
  height: 100%;
  z-index: -1;
}

/* :: 14.0 Breadcrumb CSS */
.breadcrumb-area {
  position: relative;
  z-index: 1;
  height: 290px;
  margin-bottom: 40px;
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
  .breadcrumb-area {
    height: 220px;
  }
}

@media only screen and (max-width: 767px) {
  .breadcrumb-area {
    height: 200px;
    margin-bottom: 0;
  }
}

.breadcrumb-area .breadcrumb-bg-curve {
  position: absolute;
  width: 80%;
  height: 100%;
  top: 0;
  right: 0;
  z-index: -1;
  background-size: cover;
  text-align: right !important;
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .breadcrumb-area .breadcrumb-bg-curve {
    width: 90%;
  }
}

.breadcrumb-area .title {
  font-size: 60px;
  margin-bottom: 0;
  text-transform: initial;
}

@media (orientation: landscape) {
  .breadcrumb-area .title {
    margin-top: 2.5rem;
  }
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .breadcrumb-area .title {
    font-size: 42px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
  .breadcrumb-area .title {
    font-size: 36px;
  }
}

@media only screen and (max-width: 767px) {
  .breadcrumb-area .title {
    font-size: 30px;
  }
}

.breadcrumb-area .breadcumb--con .breadcrumb {
  padding: 0;
  margin-bottom: 0;
  list-style: none;
  background-color: transparent;
  border-radius: 0;
}

.breadcrumb-area .breadcumb--con .breadcrumb .breadcrumb-item,
.breadcrumb-area .breadcumb--con .breadcrumb .breadcrumb-item>a,
.breadcrumb-area .breadcumb--con .breadcrumb .breadcrumb-item.active {
  font-size: 18px;
  text-transform: initial;
  color: #303030;
  font-weight: normal;
  letter-spacing: normal;
}

@media only screen and (max-width: 767px) {

  .breadcrumb-area .breadcumb--con .breadcrumb .breadcrumb-item,
  .breadcrumb-area .breadcumb--con .breadcrumb .breadcrumb-item>a,
  .breadcrumb-area .breadcumb--con .breadcrumb .breadcrumb-item.active {
    font-size: 14px;
  }
}

.breadcrumb-area .breadcumb--con .breadcrumb .breadcrumb-item:focus,
.breadcrumb-area .breadcumb--con .breadcrumb .breadcrumb-item:hover,
.breadcrumb-area .breadcumb--con .breadcrumb .breadcrumb-item>a:focus,
.breadcrumb-area .breadcumb--con .breadcrumb .breadcrumb-item>a:hover,
.breadcrumb-area .breadcumb--con .breadcrumb .breadcrumb-item.active:focus,
.breadcrumb-area .breadcumb--con .breadcrumb .breadcrumb-item.active:hover {
  color: #CB0B1E;
}

.breadcrumb-area .breadcumb--con .breadcrumb .breadcrumb-item.active {
  color: #a6a6a6;
}

.breadcrumb-area .breadcumb--con .breadcrumb .breadcrumb-item.active:focus,
.breadcrumb-area .breadcumb--con .breadcrumb .breadcrumb-item.active:hover {
  color: #a6a6a6;
}

.breadcrumb-area .breadcumb--con .breadcrumb .page-item:first-child .page-link {
  margin-left: 0;
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.breadcrumb-area .breadcumb--con .breadcrumb .page-item:last-child .page-link {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.breadcrumb-area .breadcumb--con .breadcrumb .breadcrumb-item+.breadcrumb-item::before {
  content: "\f105";
  font-family: 'FontAwesome';
}

/* :: 15.0 Blog CSS */
.post_item h6 {
  margin-top: 10px;
  color: #707070;
  line-height: 1.5;
  font-weight: 400;
  font-size: 0.9rem;
}

.post_item p {
  font-size: 0.9rem;
}

.post-details-text li {
  font-size: 18px;
  color: #707070;
  font-weight: 400;
  margin-bottom: 10px;
  list-style: circle !important;
  margin-left: 20px !important;
}

.post-catagories li {
  list-style: none !important;
  margin-left: 0px !important;
}

.miniatura {
  width: 100px;
  height: 60px;
  object-fit: contain;
  object-position: center;
}

.media {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: start;
  align-items: flex-start;
}

.section-heading strong {
  color: #CB0B1E;
}

.cat-list p {
  font-size: 0.9rem;
}

ul.list.cat-list li {
  display: inline-flex;
}

.testing-cases-area {
  position: relative;
  z-index: 1;
  background-color: #f8fcfc;
}

.testing-cases-area h2 {
  font-size: 30px;
}




@media only screen and (max-width: 767px) {
  .testing-cases-area iframe {
    min-width: 280px !important;
  }
}

.single-blog-post {
  position: relative;
  z-index: 1;
  -webkit-transition-duration: 500ms;
  -o-transition-duration: 500ms;
  transition-duration: 500ms;
  box-shadow: 0 8px 22px 0 rgba(0, 0, 0, 0.1);
}

.single-blog-post .post-content {
  position: relative;
  z-index: 10;
  padding: 40px;
  background-color: #ffffff;
  -webkit-transition-duration: 500ms;
  -o-transition-duration: 500ms;
  transition-duration: 500ms;
}

.single-blog-post .post-content .post-date {
  font-size: 16px;
  text-transform: initial;
  color: #a6a6a6;
  display: block;
  margin-bottom: 10px;
}

.single-blog-post .post-content .post-date span {
  font-size: 36px;
  color: #CB0B1E;
  margin-right: 5px;
}

.single-blog-post .post-content .post-title {
  font-size: 21px;
  font-weight: 600;
  word-break: break-word;
  margin-bottom: 15px;
  display: block;
}

.single-blog-post .post-content p {
  word-break: break-word;
}

.single-blog-post .post-content .post-title:focus,
.single-blog-post .post-content .post-title:hover {
  color: #CB0B1E;
}

@media(hover: hover) and (pointer: fine) {
  .single-blog-post .post-content .post-title:hover {
    color: #CB0B1E;
  }
}

.single-blog-post .post-content .post-title:active {
  color: #CB0B1E;
}

@media(hover: hover) and (pointer: fine) {
  .single-blog-post:hover {
    -webkit-box-shadow: 0 6px 50px 0px rgba(203, 11, 30, 0.15);
    box-shadow: 0 6px 50px 0px rgba(203, 11, 30, 0.15);
  }

  .single-blog-post .post-content .post-title:hover {
    color: #CB0B1E;
  }
}

.single-blog-post:hover {
  -webkit-box-shadow: 0 6px 50px 0px rgba(203, 11, 30, 0.15);
  box-shadow: 0 6px 50px 0px rgba(203, 11, 30, 0.15);
}

.single-blog-post:active {
  -webkit-box-shadow: 0 6px 50px 0px rgba(203, 11, 30, 0.15);
  box-shadow: 0 6px 50px 0px rgba(203, 11, 30, 0.15);
}

@media(hover: hover) and (pointer: fine) {
  .single-blog-post:hover .post-content {
    background-color: rgba(255, 255, 255, 0.9);
  }
}

.single-blog-post:active .post-content {
  background-color: rgba(255, 255, 255, 0.9);
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .single-blog-post .post-content .post-title {
    font-size: 18px;
  }
}

@media only screen and (max-width: 767px) {
  .single-blog-post .post-content .post-title {
    font-size: 20px;
  }
}

.single-blog-post .post-content .read-more-btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.single-blog-post .post-content .read-more-btn i {
  color: #CB0B1E;
  font-size: 20px;
}

.single-blog-post:focus,
.single-blog-post:hover {
  -webkit-box-shadow: 0 6px 50px 0px rgba(203, 11, 30, 0.15);
  box-shadow: 0 6px 50px 0px rgba(203, 11, 30, 0.15);
}

.single-blog-post:focus .post-content,
.single-blog-post:hover .post-content {
  background-color: rgba(255, 255, 255, 0.9);
}

.blog-details-content {
  position: relative;
  z-index: 1;
}

.blog-details-content .post-content .post-date {
  font-size: 16px;
  text-transform: initial;
  color: #a6a6a6;
  display: block;
  font-weight: 600;
}

.blog-details-content .post-content .post-date span {
  font-size: 36px;
  color: #CB0B1E;
}

.blog-details-content .post-content h2 {
  color: #303030;
  font-size: 60px;
  display: block;
  margin-bottom: 15px;
}

.blog-details-content .post-content h1 {
  color: #303030;
  font-size: 60px;
  display: block;
  margin-bottom: 15px;
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .blog-details-content .post-content h2 {
    font-size: 42px;
  }

  .blog-details-content .post-content h1 {
    font-size: 42px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
  .blog-details-content .post-content h2 {
    font-size: 36px;
  }

  .blog-details-content .post-content h1 {
    font-size: 36px;
  }
}

@media only screen and (max-width: 767px) {
  .blog-details-content .post-content h2 {
    font-size: 24px;
  }

  .blog-details-content .post-content h1 {
    font-size: 24px;
  }
}

.blog-details-content h1,
.blog-details-content h2,
.blog-details-content h3,
.blog-details-content h4,
.blog-details-content h5,
.blog-details-content h6 {
  margin-bottom: 15px;
}

@media only screen and (max-width: 767px) {
  .blog-details-content h2 {
    font-size: 24px;
  }
}

.blog-details-content p {
  font-size: 18px;
  color: #707070;
  font-weight: 400;
}

@media only screen and (max-width: 767px) {
  .blog-details-content p {
    font-size: 16px;
  }
}

.testing-pagination {
  position: relative;
  z-index: 1;
}

.testing-pagination .pagination .page-item .page-link {
  width: 40px;
  height: 40px;
  border-radius: 3px;
  padding: 0;
  line-height: 38px;
  margin: 0 5px;
  text-align: center;
  background-color: transparent;
  color: #707070;
  font-size: 16px;
}

.testing-pagination .pagination .page-item .page-link:focus,
.testing-pagination .pagination .page-item .page-link:hover {
  background-color: #CB0B1E;
  border-color: #CB0B1E;
  color: #ffffff;
}

.testing-pagination .pagination .page-item.active .page-link {
  background-color: #CB0B1E;
  border-color: #CB0B1E;
  color: #ffffff;
}

.comment_area {
  border-top: 1px solid #ebebeb;
  border-bottom: 1px solid #ebebeb;
  padding-top: 50px;
  padding-bottom: 50px;
}

.comment_area .title {
  margin-bottom: 30px;
  font-size: 30px;
}

@media only screen and (max-width: 767px) {
  .comment_area .title {
    font-size: 24px;
  }
}

.comment_area .comment-content {
  position: relative;
  z-index: 1;
  margin-bottom: 30px;
}

.comment_area .comment-content .comment-author {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 70px;
  flex: 0 0 70px;
  width: 70px;
  max-width: 70px;
  margin-right: 20px;
  border-radius: 50%;
}

@media only screen and (max-width: 767px) {
  .comment_area .comment-content .comment-author {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 50px;
    flex: 0 0 50px;
    width: 50px;
    max-width: 50px;
    margin-right: 10px;
  }
}

.comment_area .comment-content .comment-author img {
  border-radius: 50%;
}

.comment_area .comment-content .comment-meta .post-date {
  color: #CB0B1E;
  font-size: 12px;
  text-transform: uppercase;
  display: block;
  margin-bottom: 5px;
  font-weight: 600;
}

.comment_area .comment-content .comment-meta h5 {
  margin-bottom: 5px;
}

@media only screen and (max-width: 767px) {
  .comment_area .comment-content .comment-meta h5 {
    font-size: 16px;
  }
}

.comment_area .comment-content .comment-meta p {
  color: #303030;
  font-size: 16px;
  font-weight: 500;
}

@media only screen and (max-width: 767px) {
  .comment_area .comment-content .comment-meta p {
    font-size: 14px;
  }
}

.comment_area .comment-content .comment-meta a.like,
.comment_area .comment-content .comment-meta a.reply {
  display: inline-block;
  padding: 5px 15px 3px;
  font-size: 12px;
  font-weight: 600;
  border: 1px solid #ebebeb;
  text-transform: uppercase;
}

.comment_area .comment-content .comment-meta a.like:focus,
.comment_area .comment-content .comment-meta a.like:hover,
.comment_area .comment-content .comment-meta a.reply:focus,
.comment_area .comment-content .comment-meta a.reply:hover {
  border-color: #CB0B1E;
  background-color: #CB0B1E;
  color: #ffffff;
}

.comment_area .children {
  margin-left: 50px;
}

@media only screen and (max-width: 767px) {
  .comment_area .children {
    margin-left: 20px;
  }
}

.comment_area .children .single_comment_area:last-of-type {
  margin-bottom: 0;
}

.testing-blockquote {
  position: relative;
  z-index: 1;
  margin-bottom: 30px;
  margin-top: 30px;
  overflow: hidden;
}

.testing-blockquote .icon {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 70px;
  flex: 0 0 70px;
  max-width: 70px;
  width: 70px;
}

@media only screen and (max-width: 767px) {
  .testing-blockquote .icon {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 50px;
    flex: 0 0 50px;
    max-width: 50px;
    width: 50px;
  }
}

.testing-blockquote .icon i {
  font-size: 60px;
  color: #CB0B1E;
}

@media only screen and (max-width: 767px) {
  .testing-blockquote .icon i {
    font-size: 30px;
  }
}

.testing-blockquote .text h5 {
  font-size: 30px;
  font-style: italic;
  margin-bottom: 15px;
  line-height: 1.6;
  font-weight: 400;
}

@media only screen and (max-width: 767px) {
  .testing-blockquote .text h5 {
    font-size: 20px;
  }
}

.testing-blockquote .text h6 {
  font-size: 30px;
  margin-bottom: 0;
}

@media only screen and (max-width: 767px) {
  .testing-blockquote .text h6 {
    font-size: 20px;
  }
}

.testing-post-share {
  position: relative;
  z-index: 1;
}

@media only screen and (max-width: 767px) {
  .testing-post-share h6 {
    font-size: 12px;
    margin-right: 10px !important;
  }
}

.testing-post-share .social-info- a {
  display: inline-block;
  color: #303030;
  font-size: 16px;
  margin-right: 15px;
}

.testing-post-share .social-info- a:last-child {
  margin-right: 0;
}

.testing-post-share .social-info- a:focus,
.testing-post-share .social-info- a:hover {
  color: #CB0B1E;
}

@media only screen and (max-width: 767px) {
  .testing-post-share .social-info- a {
    font-size: 18px;
    margin-left: 8px !important;
  }
}

.post-catagories {
  position: relative;
  z-index: 1;
  margin: 50px 0;
}

.post-catagories ul li a {
  display: inline-block;
  padding: 8px 20px;
  border: 1px solid #ebebeb;
  background-color: #ffffff;
  color: #303030;
  text-transform: uppercase;
  font-size: 13px;
  font-weight: 600;
  margin: 3px;
}




.post-catagories ul li a:focus,
.post-catagories ul li a:hover {
  background-color: #CB0B1E;
  color: #ffffff;
}

@media only screen and (max-width: 767px) {
  .post-catagories ul li a {
    font-size: 10px;
    padding: 5px 10px;
  }
}

.related-news-area {
  position: relative;
  z-index: 1;
  padding-top: 50px;
  border-top: 1px solid #ebebeb;
  margin-bottom: 20px;
}

/* :: 16.0 CTA CSS */
.testing-cta-area {
  position: relative;
  z-index: 1;
}

.cta-content {
  position: relative;
  z-index: 1;
}

.cta-content h2 {
  font-size: 48px;
  margin-bottom: 10px;
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .cta-content h2 {
    font-size: 36px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
  .cta-content h2 {
    font-size: 42px;
  }
}

@media only screen and (max-width: 767px) {
  .cta-content h2 {
    font-size: 30px;
  }
}

.cta-content h6 {
  font-size: 18px;
  margin-bottom: 0;
  color: #a6a6a6;
}

.cta-content .call-now-btn a {
  display: inline-block;
  font-size: 30px;
  color: #CB0B1E;
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .cta-content .call-now-btn a {
    font-size: 22px;
  }
}

@media only screen and (max-width: 767px) {
  .cta-content .call-now-btn a {
    font-size: 24px;
  }
}

.cta-content .call-now-btn a span {
  font-size: 18px;
  color: #a6a6a6;
}

@media only screen and (max-width: 767px) {
  .cta-content .call-now-btn a span {
    font-size: 14px;
  }
}

/* :: 17.0 CFA CSS */
.single-cf-area {
  position: relative;
  z-index: 1;
}

.single-cf-area h2 {
  margin-bottom: 0;
  font-size: 60px;
  color: #CB0B1E;
  margin-right: 20px;
}

.single-cf-area .cf-text h6 {
  margin-bottom: 0;
  text-transform: uppercase;
  font-weight: 600;
}

.single-cf-area .bg-icon {

  bottom: 0;
  right: 0;
  z-index: -1;
  font-size: 60px;
  color: #eaeaea;
}

/* :: 18.0 Team CSS */
.single-team-slide {
  position: relative;
  z-index: 1;
  margin-bottom: 50px;
}

.single-team-slide img {
  position: relative;
  z-index: 1;
  width: 100%;
}

.single-team-slide .overlay-effect {
  -webkit-transition-duration: 500ms;
  -o-transition-duration: 500ms;
  transition-duration: 500ms;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 20;
  background-color: rgba(203, 11, 30, 0.9);
  padding: 40px 30px;
  opacity: 0;
  visibility: hidden;
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .single-team-slide .overlay-effect {
    padding: 30px;
  }
}

@media only screen and (max-width: 767px) {
  .single-team-slide .overlay-effect {
    padding: 30px;
  }
}

.single-team-slide .overlay-effect h6 {
  font-size: 14px;
  color: #CB0B1E;
  margin-bottom: 5px;
  text-transform: uppercase;
}

.single-team-slide .overlay-effect h4 {
  display: block;
  margin-bottom: 10px;
  font-weight: 600;
}

@media only screen and (max-width: 767px) {
  .single-team-slide .overlay-effect h4 {
    margin-bottom: 5px;
    font-size: 20px;
  }
}

.single-team-slide .overlay-effect p {
  margin-bottom: 0;
  line-height: 1.6;
}

@media only screen and (max-width: 767px) {
  .single-team-slide .overlay-effect p {
    font-size: 14px;
  }
}

.single-team-slide .team-social-info {
  -webkit-transition-duration: 500ms;
  -o-transition-duration: 500ms;
  transition-duration: 500ms;
  position: absolute;
  bottom: 40px;
  left: 80px;
  z-index: 100;
  visibility: hidden;
  opacity: 0;
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .single-team-slide .team-social-info {
    bottom: 30px;
  }
}

@media only screen and (max-width: 767px) {
  .single-team-slide .team-social-info {
    bottom: 30px;
  }
}

.single-team-slide .team-social-info a {
  display: inline-block;
  color: #ffffff;
  margin-right: 5px;
  background-color: #CB0B1E;
  width: 40px;
  height: 40px;
  border-radius: 20px;
  text-align: center;
  line-height: 40px;
}

.single-team-slide .team-social-info a.facebook {
  background-color: #4c60ac;
}

.single-team-slide .team-social-info a.twitter {
  background-color: #00bae3;
}

.single-team-slide .team-social-info a.pinterest {
  background-color: #d91a18;
}

.single-team-slide .team-social-info a.instagram {
  background-color: #0085d7;
}

.single-team-slide .team-social-info a.youtube {
  background-color: #e20000;
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .single-team-slide .team-social-info a {
    width: 30px;
    height: 30px;
    line-height: 30px;
    font-size: 14px;
  }
}

@media only screen and (max-width: 767px) {
  .single-team-slide .team-social-info a {
    width: 30px;
    height: 30px;
    line-height: 30px;
    font-size: 14px;
  }
}

.single-team-slide:focus,
.single-team-slide:hover {
  -webkit-box-shadow: 0 6px 50px 0px rgba(203, 11, 30, 0.15);
  box-shadow: 0 6px 50px 0px rgba(203, 11, 30, 0.15);
}

.single-team-slide:focus .overlay-effect,
.single-team-slide:hover .overlay-effect {
  opacity: 1;
  visibility: visible;
}

.single-team-slide:focus .team-social-info,
.single-team-slide:hover .team-social-info {
  visibility: visible;
  opacity: 1;
  left: 30px;
}

.team-sildes {
  position: relative;
  z-index: 1;
}

.team-sildes .owl-dots {
  position: relative;
  z-index: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.team-sildes .owl-dots .owl-dot {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 8px;
  flex: 0 0 8px;
  max-width: 8px;
  margin: 0 5px;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background-color: #f8f8f8;
}

.team-sildes .owl-dots .owl-dot.active {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 38px;
  flex: 0 0 38px;
  max-width: 38px;
  width: 38px;
  border-radius: 15px;
  background-color: #CB0B1E;
}


/* ============================================
   LAYOUT DOS SLIDES
============================================ */
.cases-carousel .owl-stage {
  overflow: hidden;
}

.cases-carousel .owl-item {
  overflow: hidden;
}

.cases-carousel .slide {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 60px;
  padding: 40px 0;
  box-sizing: border-box;
  max-width: 100%;
}

.text-box {
  font-size: 18px;
  line-height: 1.4em;
  text-align: justify;
  width: 550px;
  padding-left: 80px;
}


/* ============================================
   VÍDEO E THUMB
============================================ */
.video-box {
  width: 500px;
  height: auto;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
}

.video-box .owl-prev,
.video-box .owl-next {
  top: 50%;
  transform: translateY(-50%);
}

.thumb-wrapper {
  position: relative;
  width: 100%;
  border-radius: 15px;
  overflow: hidden;
  cursor: pointer;
  aspect-ratio: 16/9;
}

.thumb-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  position: relative;
  z-index: 1;
}

.thumb-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(to right, rgba(0, 0, 0, 0.05), rgba(200, 0, 40, 0.1));
  display: flex;
  justify-content: flex-start;
  align-items: center;
  pointer-events: none;
  padding-left: 80px;
}

.play-btn {
  width: 75px;
  height: 75px;
  background: red;
  color: white;
  font-size: 28px;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 10;
}

.play-btn {
  -webkit-transform: scale(0.93);
  -ms-transform: scale(0.93);
  transform: scale(0.93);
}

.play-btn:after {
  position: absolute;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  content: '';
  -webkit-box-sizing: content-box;
  -moz-box-sizing: content-box;
  box-sizing: content-box;
  top: 0;
  left: 0;
  padding: 0;
  z-index: -1;
  box-shadow: 0 0 0 2px #CB0B1E;
  opacity: 1;
  -webkit-transform: scale(0.9);
  -ms-transform: scale(0.9);
  transform: scale(0.9);
  -webkit-animation: sonarEffect 1.3s ease-out 75ms infinite;
  animation: sonarEffect 1.3s ease-out 75ms infinite;
}

iframe {
  width: 100%;
  border-radius: 15px;
  aspect-ratio: 16/9;
}

/* evita que vídeo fique acima das setas */
.video-box,
.thumb-wrapper,
.thumb-img,
iframe {
  position: relative;
  z-index: 10;
}

/* ============================================
   OWL NAV + DOTS
============================================ */
.cases-wrapper {
  position: relative;
  max-width: 1200px;
  margin: 0 auto;
}

/* container das setas */
.cases-wrapper .owl-nav {
  position: absolute;
  top: calc(50% - 25px);
  width: 100%;
  transform: translateY(-50%);
  pointer-events: none;
  z-index: 50;
}

/* botões clicáveis */
.cases-wrapper .owl-nav .owl-prev,
.cases-wrapper .owl-nav .owl-next {
  position: absolute;
  pointer-events: auto;
  background: none !important;
  border: none !important;
}

/* seta esquerda */
.cases-wrapper .owl-prev {
  left: -30px;
}

/* seta direita */
.cases-wrapper .owl-next {
  right: -30px;
}

/* ÍCONES DAS SETAS */
.carousel-arrow {
  width: 60px;
  height: 60px;
  display: block;
}

/* gira seta da direita */
.arrow-right {
  transform: rotate(180deg);
}

/* DOTS */
.cases-carousel .owl-dots {
  display: flex;
  justify-content: center;
  margin-top: 0;
  margin-bottom: 35px;
  gap: 10px;
}

.cases-carousel .owl-dots .owl-dot {
  width: 12px;
  height: 12px;
  background: #bbb !important;
  border-radius: 50%;
}

.cases-carousel .owl-dots .owl-dot.active {
  background: #444 !important;
}

/*Responsividade dos cases*/
@media (max-width: 768px) {
  .slide {
    grid-template-columns: 1fr;
    text-align: center;
    gap: 20px;
  }

  .video-box {
    width: 100%;
    height: auto;
  }

  .thumb-wrapper,
  iframe {
    width: 100%;
  }

  /* setas menores e acima */
  .cases-wrapper .owl-nav {
    transform: none;
    z-index: 999999 !important;
  }

  .cases-wrapper .owl-prev,
  .cases-wrapper .owl-next {
    position: absolute;
    top: 0;
  }

  .cases-wrapper .owl-prev {
    left: 10px;
  }

  .cases-wrapper .owl-next {
    right: 10px;
  }

  .carousel-arrow {
    width: 36px;
  }
}

@media only screen and (min-width: 1600px) {

  .testing-cases-area h2 {
    font-size: 1.6vw;
  }

  /* O slide DEVE ocupar a área total */
  .cases-carousel .slide {
    gap: 60px;
    padding: 40px 0;
    overflow: hidden;
  }

  .cases-wrapper {
    max-width: 1300px;
    margin: 0 auto;
  }

  /* Texto */
  .text-box {
    max-width: 900px !important;
    font-size: 19px;
    line-height: 1.5;
    text-align: justify;
    padding-left: 60px;
  }

  /* Vídeo */
  .video-box {
    width: 600px !important;
    flex-shrink: 0;
  }
}



.cases-wrapper,
.cases-wrapper .owl-nav,
.cases-wrapper .owl-prev,
.cases-wrapper .owl-next {
  z-index: 99999 !important;
}


/* :: 19.0 Footer CSS */
.footer-title {
  color: #fff !important;
  font-size: 0.9vw;
  text-decoration: underline;
  text-decoration-color: #fff;
  text-decoration-thickness: 1px;
  text-underline-offset: 8px;
}

.btn-footer {
  color: white;
  display: block;
  margin-bottom: 12px;
  text-decoration: none;
}

.footer-grid {
  margin-top: 60px;
  display: flex;
  justify-content: space-between;
  gap: 40px;
  width: 100%;
}

.footer-grid-contato {
  gap: 50px;
  margin-top: 23px !important;
}

.footer-grid-contato .footer-col {
  margin-left: 3vw;
  min-width: 28vw;
}

.contato-esq {
  min-width: 21vw !important;
}

.footer-col {
  flex: 1;
}

.footer-col a {
  color: #ffffffec;
  font-size: 0.9vw !important;
}

.subli {
  text-decoration: underline;
  text-decoration-color: #ffffffe8;
  text-decoration-thickness: 1px;
}

.whats-flutuante {
  position: absolute;
  margin-right: 50px;
  top: -45px;
  right: 20px;
  width: 80px;
  z-index: 10;
  box-shadow: 0 4px 10px rgba(255, 255, 255, 0.8);
  border-radius: 50%;
}

.social {
  margin-left: 3vw;
}

.footer-area {
  position: relative;
  background-color: #9c0404;
  z-index: 1;
}

.nl-content.mb-30.text-center span {
  color: #cb0b1e;
}

footer p {
  color: #fff;
  font-size: 0.8vw !important;
}

footer i,
svg {
  width: 25px;
  text-align: center;
  font-size: 21px;
}

footer svg {
  width: 30%;
}


footer a {
  color: #fff;
  font-size: 1.0vw !important;
  font-weight: 500;
}

.container-footer {
  max-width: 100% !important;
}


.text-right p,
.text-right a {
  color: #303030;
  font-size: 0.9vw !important;
}

.footer-bar {
  background: #ffffff !important;
  border-top: 1px solid #e5e5e5;
  width: 100%;
  align-items: center;
}



.iconecontato {
  display: inline-block;
  color: #ffffff;
  margin-left: 5px;
  background-color: #CB0B1E;
  width: 40px;
  height: 40px;
  border-radius: 20px;
  text-align: center;
  line-height: 40px;
}

.servicosicon {
  width: 100% !important;
  height: auto !important;
  border-radius: 20px !important;
  padding: 20px 20px 5px;
}

.servicosicon h5 {
  font-size: 20px;
}

.single-service-area:focus h5,
.single-service-area .servicosicon:hover h5 {
  color: #fff !important;
}

.destaqueright {
  display: flex !important;
  justify-content: flex-end !important;
}

.destaqueleft {
  display: flex !important;
  justify-content: flex-start !important;
}

.destaquecenter {
  display: flex !important;
  justify-content: center !important;
}

.design-process-section .text-align-center {
  line-height: 25px;
  margin-bottom: 12px;
}

.design-process-content {
  border: 1px solid #e9e9e9;
  position: relative;

}

.design-process-content img {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  z-index: 0;
  max-height: 100%;
}

.design-process-content h3 {
  margin-bottom: 16px;
}

.design-process-content p {
  line-height: 26px;
  margin-bottom: 12px;
}

.process-model {
  list-style: none;
  padding: 0;
  position: relative;
  width: 100%;
  margin: 20px auto 26px;
  border: none;
  z-index: 0;
}

.etapas {
  border-bottom: 10px solid #e5e5e5;
  width: 16.66%;
  float: left;
}

div.visited {
  border-bottom: 10px solid #CB0B1E;
}


.process-model li:last-child::before {
  width: 0;
}

.process-model li {
  display: inline-block;
  width: 16.66%;
  text-align: center;
  float: none;
}

.nav-tabs.process-model>li.active>a,
.nav-tabs.process-model>li.active>a:hover,
.nav-tabs.process-model>li.active>a:focus,
.process-model li a:hover,
.process-model li a:focus {
  border: none;
  background: transparent;

}

.process-model li a {
  padding: 0;
  border: none;
  color: #606060;
}

.process-model li.active,
.process-model li.visited {
  color: #CB0B1E;
}

.process-model li.active a,
.process-model li.active a:hover,
.process-model li.active a:focus,
.process-model li.visited a,
.process-model li.visited a:hover,
.process-model li.visited a:focus {
  color: #CB0B1E;
}

.process-model li.active p,
.process-model li.visited p {
  font-weight: 600;
}

.process-model li i {
  display: block;
  height: 68px;
  width: 68px;
  text-align: center;
  margin: 0 auto;
  background: #f5f6f7;
  border: 2px solid #e5e5e5;
  line-height: 65px;
  font-size: 30px;
  border-radius: 50%;
}

.process-model li.active i,
.process-model li.visited i {
  background: #fff;
  border-color: #CB0B1E;
}

.process-model li p {
  font-size: 14px;
  margin-top: 11px;
}

.process-model.contact-us-tab li.visited a,
.process-model.contact-us-tab li.visited p {
  color: #606060 !important;
  font-weight: normal
}

.process-model.contact-us-tab li::after {
  display: none;
}

.process-model.contact-us-tab li.visited i {
  border-color: #e5e5e5;
}




@media screen and (max-width: 560px) {
  .more-icon-preocess.process-model li span {
    font-size: 23px;
    height: 50px;
    line-height: 46px;
    width: 50px;
  }

  .more-icon-preocess.process-model li::after {
    top: 24px;
  }
}

@media screen and (max-width: 380px) {

  .more-icon-preocess.process-model li span {
    font-size: 16px;
    height: 35px;
    line-height: 32px;
    width: 35px;
  }

  .more-icon-preocess.process-model li p {
    font-size: 8px;
  }

  .more-icon-preocess.process-model li::after {
    top: 18px;
  }

  .process-model.more-icon-preocess {
    text-align: center;
    padding: 0px 10px
  }


  .mb-20-mobile {
    margin-bottom: 20px !important;
  }

  .mb-0-mobile {
    margin-bottom: 0px !important;
  }
}

.logo-footer-col {
  display: flex;
  justify-content: center;
  align-items: center;
}

.logo-footer-img {
  max-height: 45px;
  margin: 25px auto;
}

.single-footer-widget {
  position: relative;
  z-index: 1;
}

.footer-row {
  margin: 0 !important;
}

.single-footer-widget .widget-title {
  color: #fff;
  margin-bottom: 25px;
  display: block;
  font-weight: 700;
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .single-footer-widget p {
    font-size: 14px;
  }
}

.single-footer-widget .footer-social-info a {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  margin-left: 20px;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background-color: #fff !important;
  color: #CB0B1E !important;
  font-weight: 700;
  line-height: normal !important;
}

.single-footer-widget .footer-social-info a:first-of-type {
  margin-left: 0 !important;
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .single-footer-widget .footer-social-info a {
    width: 30px;
    height: 30px;
    line-height: 30px;
    font-size: 14px;
  }
}

.single-footer-widget .our-link {
  position: relative;
  z-index: 1;
}

.single-footer-widget .our-link li a {
  position: relative;
  z-index: 1;
  font-size: 16px;
  color: #707070;
  margin-bottom: 15px;
  display: block;
  font-weight: normal;
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .single-footer-widget .our-link li a {
    font-size: 14px;
  }
}

.single-footer-widget .our-link li a::after {
  -webkit-transition-duration: 500ms;
  -o-transition-duration: 500ms;
  transition-duration: 500ms;
  position: absolute;
  top: 50%;
  left: 0;
  width: 0;
  height: 3px;
  background-color: #CB0B1E;
  content: '';
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}

.single-footer-widget .our-link li a:focus,
.single-footer-widget .our-link li a:hover {
  color: #CB0B1E;
  padding-left: 25px;
}

.single-footer-widget .our-link li a:focus::after,
.single-footer-widget .our-link li a:hover::after {
  width: 15px;
}

.single-footer-widget .our-link li:last-child a {
  margin-bottom: 0;
}

.single-footer-widget .footer-content {
  position: relative;
  z-index: 1;
}

.footer-content i {
  font-size: 0.7vw;
}

.single-footer-widget .footer-content h3 {
  color: #CB0B1E;
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .single-footer-widget .footer-content h3 {
    font-size: 20px;
  }
}

@media (min-width: 992px) {
  .col-lg-3 {
    -ms-flex: 0 0 25%;
    flex: 0 0 18%;
    max-width: 25%;
  }
}

.copywrite-text {
  position: relative;
  z-index: 1;
  margin-top: 20px;
}

.copywrite-text p {
  font-size: 16px;
  color: #a6a6a6;
  margin-bottom: 0;
}

.copywrite-text p a {
  color: #a6a6a6;
}

.copywrite-text p a:focus,
.copywrite-text p a:hover {
  color: #CB0B1E;
}

/*Responsividade Footer*/
@media only screen and (min-width: 1400px) {
  .whats-flutuante {
    width: 100px;
    margin-right: 3vw;
  }

  .footer-grid {
    margin-top: 4vw;
    gap: 40px;
  }

  .img-fluid {
    margin-top: 4vw;
  }

  .footer-col a {
    color: #ffffffec;
    font-size: 0.7vw !important;
  }

  .contato-esq {
    min-width: 16vw !important;
  }

  .text-right p,
  .text-right a {
    font-size: 0.5vw !important;
  }

  
}


/* :: 20.0 Contact Area */
.testing-contact-area {
  position: relative;
  z-index: 1;
}

.testing-contact-area .google-maps {
  position: relative;
  z-index: 1;
  width: 100%;
  height: 500px;
}

@media only screen and (max-width: 767px) {
  .process-model.more-icon-preocess li {
    width: 33.33%;
  }

  .testing-contact-area .google-maps {
    height: 280px;
  }
}

.testing-contact-area .google-maps iframe {
  width: 100%;
  height: 100%;
  border: none;
}

.single-contact-card {
  position: relative;
  z-index: 1;
}

.single-contact-card h4 {
  margin-bottom: 15px;
}

.single-contact-card h6 a {
  margin-top: 10px;
  color: #707070;
  line-height: 1.5;
  font-weight: 400;
  font-size: 0.9rem;
}

.single-contact-card h3 {
  color: #CB0B1E;
  font-size: 1.55rem;
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .single-contact-card h3 {
    font-size: 20px;
  }
}

.single-contact-card h6 {
  margin-top: 10px;
  color: #707070;
  line-height: 1.5;
  font-weight: 400;
  font-size: 0.9rem;
}

.single-contact-card h6 i {
  width: 20px;
  text-align: center;
}

@media only screen and (max-width: 767px) {
  .single-contact-card h6 {
    font-size: 14px;
  }
}

.testing-contact-form {
  position: relative;
  z-index: 1;
}

.testing-contact-form .form-control {
  width: 100%;
  height: 50px;
  padding: 0 20px;
  border-radius: 30px;
  color: #a6a6a6;
  font-size: 14px;
}

.testing-contact-form .form-control:focus {
  box-shadow: none;
  border-color: #CB0B1E;
}

.testing-contact-form textarea.form-control {
  height: 110px;
  padding: 20px;
}

.botaowhatsapp {
  position: fixed;
  width: 60px;
  height: 60px;
  bottom: 20px;
  left: 20px;
  background-color: #25d366;
  color: #FFF;
  border-radius: 50px;
  text-align: center;
  font-size: 30px;
  box-shadow: 1px 1px 2px #888;
  z-index: 1000;
}

.mt-16 {
  margin-top: 16px;
}

.logo {
  max-width: none;
  width: 7.8vw;
}

.btnconsultor {
  position: initial !important;
  width: 100% !important;
}

.hoververmelho:hover {
  color: #cb0b1e;
}

@media (max-width: 991px) {
  /* .centermobile {
    text-align: center !important;
  } */

  .leftmobile {
    text-align: left !important;
  }

  .rodapemobile {
    margin-bottom: 100px;
  }

  #snackbar {
    visibility: hidden;
    min-width: 250px;
    margin-left: -125px;
    background-color: #4CAF50;
    color: #fff;
    text-align: center;
    border-radius: 2px;
    padding: 16px;
    position: fixed;
    z-index: 1;
    left: 50%;
    bottom: 30px;
    font-size: 17px;
  }

  #snackbar.showSnackBar {
    visibility: visible;
    -webkit-animation: fadein 0.5s, fadeout 0.5s 2.5s;
    animation: fadein 0.5s, fadeout 0.5s 2.5s;
  }

  @-webkit-keyframes fadein {
    from {
      bottom: 0;
      opacity: 0;
    }

    to {
      bottom: 30px;
      opacity: 1;
    }
  }

  @keyframes fadein {
    from {
      bottom: 0;
      opacity: 0;
    }

    to {
      bottom: 30px;
      opacity: 1;
    }
  }

  @-webkit-keyframes fadeout {
    from {
      bottom: 30px;
      opacity: 1;
    }

    to {
      bottom: 0;
      opacity: 0;
    }
  }

  @keyframes fadeout {
    from {
      bottom: 30px;
      opacity: 1;
    }

    to {
      bottom: 0;
      opacity: 0;
    }
  }
}

/* INICIO HEADER */

.header-area {
  border-bottom: 2px solid #F3F5F9;
}

.header-area,
.header-area .main-header-area.sticky {
  position: relative;
}

.classy-nav-container {
  background-color: #FFFFFF;
  padding: 0;
}

.navbarToggler {
  width: 4vw;
  height: 2.5vw;
  display: flex !important;
  flex-direction: column;
  justify-content: space-between;
}

.navbarToggler span {
  height: 0.5vw !important;
  margin: 0 !important;
  width: auto !important;
}

.classy-nav-container .classy-navbar {
  height: 5.21vw;
  padding: 0 calc(9.5% - 0.8vw) 0 9.5%;
}

.breakpoint-on .classy-navbar .classy-menu {
  background-color: #ffffff;
  position: fixed;
  top: 0;
  left: -16.15vw;
  z-index: 1000;
  width: 15.63vw;
  height: 100%;
  -webkit-transition-duration: 500ms;
  transition-duration: 500ms;
  padding: 0;
  box-shadow: 0 5px 20px rgba(0, 0, 0, 0.1);
  display: block;
  overflow-x: hidden;
  overflow-y: scroll;
}

.classy-nav-container .classy-navbar .classynav ul li a {
  position: relative;
  z-index: 1;
  font-weight: normal;
  font-size: 0.8vw;
  text-transform: initial;
  color: #032a74;
}

.classy-nav-container .classy-navbar .classynav ul li a:focus,
.classy-nav-container .classy-navbar .classynav ul li a:hover {
  color: #001949;
}

.classy-nav-container .classy-navbar .classynav ul li.cn-dropdown-item ul li a {
  font-size: 0.7vw;
  text-transform: initial;
  height: 2.19vw;
  line-height: 2.19vw;
}

.classynav ul li ul li.has-down>a::after {
  top: 35px;
  right: 0;
}

#nav li a {
  position: relative;
  text-decoration: none;
  padding-bottom: 0.3125rem;
  transition: all 0.3s ease-in-out;
}

#nav li a img {
  width: 13px;
  margin-left: 5px;
}

#nav li a:focus-visible {
  outline: 2px solid #001949;
  outline-offset: 2px;
  border-radius: 1.15vw;
}

#nav li a.active {
  font-weight: 500;
}

#nav li a::after {
  content: "";
  display: block;
  width: 80%;
  height: 0.05vw;
  background-color: #001949;
  position: absolute;
  bottom: 0.10vw;
  left: 50%;
  transform: translateX(-50%);
  opacity: 0;
  transition: opacity 0.3s ease-in-out;
}

#nav li a:hover::after,
#nav li a.active::after {
  opacity: 1;
}

ul#nav li {
  padding: 0 0 0 0.52vw;
}

a.testing-btn.btn-2 {
  border-radius: 1.92vw;
  color: #FFFFFF;
  box-shadow: 0px 4px 4px 0px #00000040;
  border: none;
  cursor: pointer;
  text-align: center;
  background: #C40109;
  height: 1.7vw;
  width: 12vw;
  padding: 0;
  display: flex;
}

.testing-btn.btn-2 {
  background-color: #001949;
  color: #ffffff !important;
  border-radius: 20px;
  font-size: 0.75vw;
  cursor: pointer;
}

.testing-btn.btn-2:focus,
.testing-btn.btn-2:hover {
  background-color: #002E6C;
  color: #ffffff !important;
  box-shadow: 0px 0px 28.6px 0px #0462C1B8;
}

.dropdown ul.submenu {
  list-style-type: disc !important;
}

.dropdown .submenu li::before {
  color: #001949;
  font-size: 16px;
  content: "";
  position: absolute;
  left: 20px;
  top: 50%;
  transform: translateY(-50%);
  width: 3px;
  height: 3px;
  background-color: #001949;
  border-radius: 50%;
}

/*Services-Area*/
.solucoes-container {
  max-width: 100%;
}

.solucoes {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 50px;
  gap: 80px;
  border-radius: 10px;
  background: none;
  display: flex;
  padding: 40px;
  border-radius: 10px;
  background: none;
}

/* texto da esquerda */
.service-area h2 {
  font-size: 25px;
  font-weight: 800;
  line-height: 1.25;
  color: #111;
  width: 400px;
  margin-left: 8vw;
}

.service-area-btn {
  display: flex;
  flex-wrap: wrap;
  gap: 16px 20px;
  max-width: 550px;
  z-index: 4;
  margin-right: 8vw;
}

.chip {
  display: inline-block;
  text-decoration: none;
  border: 1px solid #c6d3e6;
  padding: 9px 24px;
  border-radius: 25px;
  font-size: 16px;
  color: #1a1a1a;
  background: #ffffff;
  cursor: pointer;
  transition: 0.2s ease;
   font-weight: 400;
}

.chip:hover {
  background-color: #001F49;
  color: white;
  transform: translateY(-2px);
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.12);
}

.tc-icon {
  width: 42px;
  height: 42px;
  border-radius: 50%;
  object-fit: cover;
  border: 2px solid #ddd;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.15);
  z-index: 4;
}

/*Responsividade*/
@media only screen and (min-width: 1400px) {
  .chip {
    font-size: 1.3vw;
    border-radius: 1.1vw;
  }

  .tc-icon {
    width: 2.5vw;
    height: 2.5vw;
  }

  .service-area-btn {
    max-width: 36vw;
    margin-right: 11vw;
    gap: 23px 20px;
  }

  .service-area h2 {
    font-size: 1.5vw;
    width: 22vw;
    margin-left: 11vw;
  }
}

/*Cards*/
.tc-card {
  background: #ffffff;
  border-radius: 50px;
  padding: 20px;
  text-align: center;
  border: 2px solid rgba(37, 83, 177, 0.35);
  box-shadow: 5px 8px 22px rgba(19, 104, 250, 0.12);
  position: relative;
  height: 400px;
  width: 280px;
  margin: 0 auto;
  margin-bottom: 90px;
  flex: 0 0 auto;
  box-sizing: border-box;
}

.tc-card-icon {
  width: 45px;
  height: 45px;
  object-fit: contain;
  margin: 0 auto 15px auto;
  display: block;
}

.tc-card-title {
  font-size: 18px;
  font-weight: 700;
  margin-bottom: 15px;
  color: #000000;
}

.tc-card p {
  color: #000000;
  font-size: 16px;
  line-height: 1.30;
  text-align: center;
}

.tc-btn {
  position: absolute;
  left: 50%;
  bottom: -18px;
  transform: translateX(-50%);
  background: #8fb2ed;
  color: white;
  border-radius: 7px;
  padding: 10px 25px;
  font-size: 14px;
  text-decoration: none;
  font-weight: 600;
  box-shadow: 0 6px 15px rgba(37, 83, 177, 0.35);
}

.tc-btn:hover {
  background: #0055A9;
  color: white;
}

.services-carousel {
  position: relative;
  width: 100%;
  overflow: hidden;
  box-sizing: border-box;
  padding: 10px 0;
  user-select: none;
  z-index: 4;
  /* evita seleção durante drag */
}

.marquee-track {
  display: flex;
  align-items: center;
  gap: 5vw;
  will-change: transform;
  touch-action: pan-y;
}

/* RESPONSIVIDADE DOS CARDS */
@media only screen and (min-width: 2100px) {
  .tc-card {
    padding: 25px 18px 70px;
    height: 20vw;
    width: 13vw;
  }

  .tc-card-title {
    font-size: 0.9vw;
  }

  .tc-card-text {
    font-size: 0.8vw;
  }

  .tc-card-icon {
    width: 3vw;
    height: 3vw;
  }

  .tc-card p {
    line-height: 1.50;
  }
}

@media only screen and (min-width: 2300px) {
  .tc-card {
    height: 18vw;
    width: 13vw;
  }

  .tc-card p {
    line-height: 1.60;
  }
}

@media (max-width: 768px) {
  .tc-card {
    padding: 25px 18px 70px;
    min-height: 380px;
  }

  .tc-card-title {
    font-size: 17px;
  }

  .tc-card-text {
    font-size: 13.5px;
  }

  .tc-card-icon {
    width: 50px;
  }
}

@media (max-width: 480px) {
  .tc-card {
    padding: 22px 15px 70px;
    min-height: 360px;
  }

  .tc-card-title {
    font-size: 16px;
  }

  .tc-card-text {
    font-size: 13px;
  }

  .tc-card-icon {
    width: 45px;
  }

  .tc-btn {
    padding: 8px 22px;
    font-size: 13px;
  }
}

.clients-carousel {
    width: 85%;
    margin-left: auto; 
    margin-right: auto; 
    overflow: hidden;
    position: relative;
    padding: 20px 0;
}

.clients-carousel .marquee-track {
    display: flex;
    align-items: center;
    gap: 130px;
    white-space: nowrap;
    justify-content: center;
}

.client-logo {
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
}

.client-logo img {
    display: block; /* ← evita o colapso do container */
    max-height: 80px;
    width: auto;
    object-fit: contain;
}

.client-logo {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    max-width: 320px;
    height: 120px;
    border-radius: 1vw;
    overflow: hidden;
    margin: 1.6vw auto !important;
    transition: box-shadow 0.25s ease;
}

.client-logo:focus {
    box-shadow: none;
}

.client-logo:hover {
    box-shadow: 0 0 25px 0px rgba(32, 136, 241, 0.30);
}

.client-logo img {
    max-height: 100%;
    max-width: 80%;
    object-fit: contain;
}

.clients-carousel img {
    user-drag: none;
    -webkit-user-drag: none;
    user-select: none;
    -webkit-user-select: none;
    pointer-events: none;
}





/* FIM HEADER */