:root {
   --primary: rgba(9, 57, 105, 1);
   --secondary: #f6ff00;
   --YellowLight: rgba(253, 255, 203, 1);
   --text: rgba(9, 57, 105, 0.6);
   --fontTitles: "eurostile",sans-serif;
}

html, body{margin:0; padding:0; box-sizing: border-box;}

body {
   margin: 0;
   color: var(--text);
   min-height: 100vh;
   font-family: "Poppins", sans-serif;
   font-weight: 400;
   font-style: normal;
}

/* NAVBAR
---------------*/
@media (max-width: 650px) {
   .navbar-brand img {
      width: 200px !important;
   }
}
/* end ---*/

/* HOME
---------------*/
.homeBannerImg {
   width: 100%;
   height: 75vh !important;
}

@media (max-width: 650px) {
   .homeBannerImg {
      height: 50vh !important;
   }
}

.homeBanner .gradientOverlay {
   background: linear-gradient(180deg, rgba(42, 43, 49, 0) 53.1%, #2A2B31 100%);
   background-blend-mode: multiply;
}

.homeBannerTitle{
   font-size: clamp(1.6rem, 4.2vw, 3rem) !important;
}

.solucoesSection .w-75{
   width: 100% !important;
}
@media (min-width: 768px){

   .solucoesSection .col1{
      width:60%;
   }
   .solucoesSection .col2{
      width:40%;
   }

   .solucoesSection .w-75{
      width: 75% !important;
   }
}
@media (min-width: 992px){

   .solucoesSection .col1{
      width:70%;
   }
   .solucoesSection .col2{
      width:30%;
   }

   .solucoesSection .w-75{
      width: 75% !important;
   }
}

.homeCta{
   margin-top:-120px;
   padding-top:120px;
   position: relative;
   z-index: 0;
   overflow: visible;
}

.homeCta .row{
   align-items: center;
}

.homeCtaImageWrap{
   margin-bottom: -100px;
   z-index: 2;
}

.homeCtaImage{
   height: 400px;
}

.homeCtaBtn{
   bottom: -20px;
}

#servicos .bg-light:hover, #servicos .bg-YellowLight:hover{
   transition:ease all .3s !important;
   box-shadow: var(--bs-box-shadow) !important;
}


@media (max-width: 991.98px){
   .homeCta{
      margin-top: -80px;
      padding-top: 100px;
      padding-bottom: 56px;
   }

   .homeCtaImageWrap{
      margin-top: 24px;
      margin-bottom: 0;
   }

   .homeCtaImage{
      height: 340px;
   }
}

@media (max-width: 575.98px){
   .homeCta{
      margin-top: 10px;
      padding-top: 20px;
      padding-bottom: 20px;
   }

   .homeCtaImage{
      height: 250px;
   }

   .homeCtaBtn{
      left: 50%;
      right: auto;
      margin-right: 0 !important;
      transform: translateX(-50%);
   }
}
/* end ---*/



/* SERVIÇOS
---------------*/
.faqServicos .accordion-item {
   border: 0 !important;
   overflow: hidden;
}

.faqServicos .accordion-button {
   background: transparent !important;
   color: var(--primary);
   box-shadow: none !important;
   padding: 1.15rem 1.4rem;
   display: flex;
   align-items: center;
   justify-content: space-between;
   gap: 1rem;
   transition: background-color 0.25s ease, padding 0.25s ease;
}

.faqServicos .accordion-button::after {
   display: none;
}

.faqServicos .accordion-button:not(.collapsed) {
   background: rgba(9, 57, 105, 0.04) !important;
}

.faqServicos .accordion-body {
   padding: 0 1.4rem 1.25rem;
}

.faqServicos .heading-icon {
   width: 28px;
   height: 28px;
   min-width: 28px;
   border-radius: 50%;
   background: transparent !important;
   border: 2px solid var(--primary);
   position: relative;
   transition: transform 0.25s ease, background-color 0.25s ease;
}

.faqServicos .heading-icon::before,
.faqServicos .heading-icon::after {
   content: "";
   position: absolute;
   left: 50%;
   top: 50%;
   width: 10px;
   height: 2px;
   background: var(--primary);
   transform: translate(-50%, -50%);
   transition: transform 0.25s ease;
}

.faqServicos .heading-icon::after {
   transform: translate(-50%, -50%) rotate(90deg);
}

.faqServicos .accordion-button:not(.collapsed) .heading-icon::after {
   transform: translate(-50%, -50%) rotate(90deg) scaleY(0);
}

.faqServicos .accordion-button:not(.collapsed) .heading-icon {
   transform: rotate(180deg);
}

.faqServicos .accordion-collapse {
   transition: height 0.35s ease;
}

@media (max-width: 767.98px) {
   .faqServicos .accordion-button {
      font-size: 1.05rem !important;
      padding: 1rem 1rem;
   }

   .faqServicos .accordion-body {
      padding: 0 1rem 1rem;
      font-size: 0.95rem;
   }

   .faqServicos .heading-icon {
      width: 30px;
      height: 30px;
      min-width: 30px;
   }
}
/* end ---*/



/* Colors,  Styles && Fonts
----------------------------*/

.imgMobile{
   height: 300px !important;
}

.nav-link:hover{
   color:var(--secondary) !important;
   background-color: var(--primary) !important;
   transition: ease all 0.3s;
}
.nav-item .active::after{
   content:'';
   position: absolute;
   bottom: 4px;
   left: 40%;
   width: 20%; height:2px;
   background-color: var(--text) !important;
   opacity:0.5;
}

.text-primary{
   color: var(--primary) !important;
}
.text-text{
   color: var(--text) !important;
}

.fontTitles, .nav-link{
   font-family: var(--fontTitles) !important;
   letter-spacing: 0.01em;
}

.bg-primary{
   background-color: var(--primary) !important;
}
.bg-secondary{
   background-color: var(--secondary) !important;
}
.bg-light{
   background: rgba(248, 248, 248, 1) !important;
}
.bg-YellowLight{
   background: var(--YellowLight) !important;
}

.fs-7{font-size:0.9rem;}
.fs-8{font-size:0.8rem;}

.transition-03{transition:ease all .3s !important;}

/* end ---*/
