:root {
  --blue1: #0092C8;
  --blue2: #1A3D5B;
  --blue3: #3BB8FF;
}
html {
  scroll-behavior: smooth;
}
body {
  margin: 0;
  padding: 0;
  font-family: 'Roboto', sans-serif;
  font-size: 16px;
  font-weight: 300;
  color: #141414;
}
body main.navbar-stick {margin-top: 80px;}

body header {
  position: fixed;
  width: 100%;
  top: 0;
  z-index: 10;
}
body.sidebar-open {
  overflow-y: hidden;
  height: 100vh;
}

/* ---- Geral ---- */

.titulo {color: var(--blue1)}

.titulo strong {
    font-weight: 600;
}

.dropdown-menu:focus-visible { outline: none }

.btn:focus, .btn.focus {
  box-shadow: none!important;
  outline: none!important;
  color: inherit;
  background-color: var(--blue1);
  color: #fff;
}
.btn-primary:focus, .btn-primary.focus {
  background-color: var(--blue1);
  color: #fff;
}

.wt {color: #fff!important;}
.bk {color: #000!important;}
.bl {color: var(--blue1)!important}

.bg-bl1 {background-color: var(--blue1);}
.bg-bk {background-color: #000;}
.bg-wt {background-color: #fff;}

.fs-small {font-size: 14px;}
.fs-medium {font-size: 18px;}
.fs-large {font-size: 24px;}

.btn-primary {
  display: inline-block;
  background-color: #fff;
  border: 1px solid #fff;
  font-size: 18px;
  color: var(--blue1);
  border-radius: 40px;
  font-weight: 400;
  text-transform: uppercase;
  padding: 15px 30px;
}
.btn-primary:hover {
  background-color: transparent;
  border: 1px solid #fff;
  color: #fff;
}

.btn-secundary {
  display: inline-block;
  background-color: var(--blue1);
  border: 1px solid var(--blue1);
  font-size: 18px;
  color: #fff;
  border-radius: 40px;
  font-weight: 400;
  text-transform: uppercase;
  padding: 15px 30px;
}
.btn-secundary:hover {
  background-color: transparent;
  border: 1px solid var(--blue1);
  color: var(--blue1);
}


/*--- Navbar ---*/

.navbar-custom {
  background-color: #fff;
}
.navbar-custom .navbar-collapse {
  justify-content: flex-end;
}
.navbar-light .navbar-nav .nav-link {
  color: #141414;
  font-size: 16px;
  font-weight: 400;
  text-transform: uppercase;
  letter-spacing: .5px;
}
.navbar-light .navbar-nav .nav-link:focus {
  color: #fff;
}
.dropdown:hover .dropdown-menu {
  display: block;
}
.dropdown .dropdown-menu {
  background-color: #007AC0;
  padding: 20px;
  top: 34px;
  border: 0;
  border-radius: 20px;
  border-top-left-radius: 0;
}
.dropdown .dropdown-menu .dropdown-item {
  color: #fff;
  background-color: transparent;
  font-weight: 300;
}
.dropdown .dropdown-menu .dropdown-item:hover {
  color: #fff;
  opacity: 0.9;
  background-color: transparent;
}
.navbar-custom.fixed-top{
  box-shadow: 3px 3px 10px rgb(0,0,0,0.1);
}
.navbar-custom .navbar-brand .logo {
  width: 220px;
  transition: .5s ease;
}
.fixed-top .navbar-brand .logo {
  width: 160px;
  transition: .5s ease;
}
.fixed-top #menu-principal {
  margin-top: 0;
}
#menu-principal > .menu-item {
  margin: 0 20px;
}
#menu-principal .menu-item a.nav-link {
  position: relative;
}
#menu-principal .menu-item a.nav-link:hover {
  color: var(--blue2);
}
#menu-principal .menu-item a.nav-link::before {
  content: '';
  position: absolute;
  width: 100%;
  height: 4px;
  background: var(--blue2);
  bottom: 0;
  left: 0;
  transform-origin: bottom;
  transform: scaley(0);
  transition: transform .3s ease-in-out;
}
#menu-principal .menu-item a.nav-link:hover::before {
  transform-origin: top;
  transform: scaley(1);
}


/* ---- Footer ---- */

.footer {
  font-size: 16px;
}
.footer .logo .wrapper-texto {
  font-size: 14px;
}
.footer .menu a {
  color: #131313;
  display: inline-block;
  text-decoration: none;
  transition: .3s ease;
  font-weight: 300;
}
.footer .menu a:hover {
  opacity: .9;
  transition: .3s ease;
}
footer .base {
  background-color: #000;
  line-height: 1;
}
footer .base .logo-ad {
  width: 110px;
}
.footer .wd-title {
  color: #131313;
  font-size: 16px;
  font-weight: 500;
  margin-bottom: 15px;
  text-transform: uppercase;
}
.footer ul.menu {
  list-style: none;
  padding-inline-start: 0;
  margin: 0;
}
.footer ul.menu li {
  margin-bottom: 8px;
}
.footer ul.menu li:last-child {
  margin-bottom: 0;
}
.footer .logo .img-logo {
  width: 140px;
  display: block;
}
.footer .social a {
  display: flex;
  margin-right: 20px;
}
.footer .contato {
  background-color: var(--blue1);
}
.footer .contato .titulo {
  font-size: 20px;
}
.footer .contato .btn-fale {
  background-color: transparent;
  border: 1px solid #fff;
  border-radius: 70px;
  height: 50px;
  color: #fff;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 14px;
  letter-spacing: 1px;
  text-transform: uppercase;
}
.footer .fale a {
  position: relative;
}
.footer .fale .tel a:before {
  content: url('../img/i-whats.svg');
  position: absolute;
  top: 1px;
  left: -24px;
}
.footer .fale .email a:before {
  content: url('../img/i-mail.svg');
  position: absolute;
  top: 1px;
  left: -24px;
}
.footer .fale .endereco a:before {
  content: url('../img/i-local.svg');
  position: absolute;
  top: 1px;
  left: -22px;
}
.footer .base small {
  font-size: 12px;
}


/* ---- Form ---- */

.wpcf7-form .form-control {
  border: 1px solid #EDEDED;
  background-color: #EDEDED;
  color: #505050;
  padding: 15px;
  resize: none;
}

.formulario .form-select {
  color: #606060;
}


/* ---- Home ---- */

#home {
  padding-top: 66px;
}
.topo-slider .banner-wrapper {
  position: relative;
}
.topo-slider .slick-dots {
  bottom: 10px;
}
.topo-slider.slick-dotted.slick-slider {
  margin-bottom: 0;
}
.topo-slider .slick-dots button {
  background-color: var(--blue1);
  border-radius: 50%;
  width: 15px;
  height: 15px;
}
.topo-slider .slick-dots li button:before {
  display: none;
}
.banner-wrapper .texto-wrapper {
  position: absolute;
  top: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  height: 100%;
  width: 40%;
  padding: 5%;
  color: #fff;
  background-color: rgba(26, 61, 91, 0.8);
}
.banner-wrapper .texto-wrapper .titulo {
  color: #fff;
}
.banner-wrapper .texto-wrapper .subtitulo {
  font-size: 20px;
  font-weight: 300;
}
.banner-wrapper .texto-wrapper .link {
  color: #fff;
  font-weight: 400;
  text-decoration: none;
}
.banner-wrapper .texto-wrapper .link:after {
  content: url("data:image/svg+xml; utf8, <svg width='17' height='14' viewBox='0 0 17 14' fill='none' xmlns='http://www.w3.org/2000/svg'><path d='M9.32033 0L8.13347 1.24939L13.4918 6.14425H0V7.85575H13.5092L8.13347 12.7506L9.32033 14L17 7L9.32033 0Z' fill='white'/></svg>");
  display: inline-block;
  margin-left: 7px;
}
#home .bloco-2 {
  background-color: #f1f1f1;
}
#home .bloco-2 .box-slider .slick-arrow {
  position: absolute;
  top: 45%;
  width: 30px;
  height: 30px;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #fff;
  border-radius: 50%;
  cursor: pointer;
  opacity: 0.8;
}
#home .bloco-2 .box-slider .btn-prev {
  left: 10px;
}
#home .bloco-2 .box-slider .btn-next {
  right: 10px;
}
#home .bloco-2 .box-slider .slick-arrow.slick-disabled {
    opacity: 0;
}
#home .bloco-2 .box-slider .slick-arrow svg {
    width: 20px;
    height: auto;
}
#home .bloco-2 .box-wrapper {
  position: relative;
  background: #000;
}
#home .bloco-2 .box-wrapper img {
  opacity: 0.5;
  transition: .4s ease;
}
#home .bloco-2 .box-wrapper:hover img {
  opacity: 0.9;
  transition: .4s ease;
}
#home .bloco-2 .box-wrapper .frame-text {
  position: absolute;
  bottom: 0;
  padding: 15px;
}
#home .bloco-2 .box-wrapper .frame-text h3 {
  font-size: 24px;
  color: #fff;
  text-shadow: 1px 1px 6px rgb(0,0,0,0.7);
}
#home .bloco-2 .box-wrapper .frame-text .link {
  color: #fff;
  text-decoration: none;
  text-transform: uppercase;
  font-size: 14px;
  text-shadow: 1px 1px 6px rgb(0,0,0,0.7);
}
#home .bloco-3 {
  background-color: var(--blue2);
  color: #fff;
}
#home .bloco-3 .subtitulo {
  font-size: 24px;
}
#home .bloco-3 .frame-wrapper {
  font-size: 18px;
}

/* Quem Somos */

#quem .topo {
  background-image: url('../img/topo-quem-w-v3.png');
  background-repeat: no-repeat;
  background-position: top center;
  background-size: cover;
  aspect-ratio: 1920/600;
  margin-top: 70px;
}
#quem .bloco-1 {
  background-color: #f1f1f1;
}
.list li {
  margin-bottom: 15px;
}
#quem .bloco-1 .wrapper-texto {
  color: var(--blue2);
}
#quem .bloco-2 .row-dois {
  background-color: var(--blue2);
  color: #fff;
}
#quem .bloco-2 .imagem {
  height: 100%;
  overflow: hidden;
}
#quem .bloco-2 .imagem .img-full {
  height: 100%;
}
#quem .bloco-2 .texto {
  font-size: 18px;
}
#quem .bloco-2 .texto .titulo {
    font-size: 42px;
}

/* Empreendimentos */

#empreendimentos {
  background-color: #eee;
}
#empreendimentos .topo {
  background-image: url('../img/topo-empreendimentos.jpg');
  background-repeat: no-repeat;
  background-position: top center;
  background-size: cover;
  aspect-ratio: 1920/600;
  margin-top: 55px;
}
.wrapper-row {
  display: flex;
  align-items: center;
  background-color: var(--blue2);
  color: #fff;
  border-radius: 7px;
  overflow: hidden;
  margin-bottom: 15px;
}
.wrapper-row .icon {
  background-color: var(--blue1);
  padding: 10px;
}
.wrapper-row .texto {
  margin-left: 15px;
}
.col-wrapper {
  background-color: #fff;
  border-radius: 10px;
  height: 100%;
}
#empreendimentos .imagem-col img {
  border-radius: 10px;
}
#empreendimentos .bloco-1 .link {
  color: var(--blue2);
  font-weight: 400;
  text-decoration: none;
}
#empreendimentos .bloco-1 .link:after {
  content: url("data:image/svg+xml; utf8, <svg width='17' height='14' viewBox='0 0 17 14' fill='none' xmlns='http://www.w3.org/2000/svg'><path d='M9.32033 0L8.13347 1.24939L13.4918 6.14425H0V7.85575H13.5092L8.13347 12.7506L9.32033 14L17 7L9.32033 0Z' fill='%231a3d5b'/></svg>");
  display: inline-block;
  margin-left: 7px;
}
#empreendimentos .texto-col .titulo {
  font-size: 30px;
}

/* Contato */

#contato .bloco-1 {
  background-image: url('../img/contato-bg.jpg');
  background-repeat: no-repeat;
  background-position: top center;
  background-size: cover;
  height: 100vh;
}
#contato .bloco-1 .btn {
  width: 220px;
  height: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
}
#contato .bloco-1 .form-wrapper {
  background-color: #fff;
  border-radius: 12px;
  padding: 40px;
}
#contato .bloco-1 .form-wrapper .wpcf7-spinner {
  position: absolute;
  top: 10px;
  right: 10px;
}
.btn-fale {
  background-color: #fff;
}
.btn-fale:hover {
  background-color: #fff;
  opacity: 0.8;
}
.btn-whats {
  background-color: #28A63C;
  color: #fff;
}
.btn-whats:hover {
  background-color: #28A63C;
  color: #fff;
  opacity: 0.8;
}
#contato .wpcf7-form .btn-primary {
  background: var(--blue2);
  color: #fff;
  border: 0;
}
#contato .wpcf7-form .wpcf7-textarea {
  height: 200px;
}
.grecaptcha-badge {
  background-color: inherit;
  visibility: hidden;
}
.page-template-page-contato .footer .contato {
  display: none;
}

/* ---- Hamburguer Menu Mobile ---- */

.navbar-custom .sidebarBtn{
  border: 0;
}
.navbar-custom .sidebarBtn span{
  display: block;
  width: 100%;
  height: 4px;
  background: var(--blue2);
  position: absolute;
  top: 0;
  left: 0;
  transition: .3s;
  border-radius: 2px;
}
.navbar-custom .sidebarBtn span::before{
  content: '';
  position: absolute;
  top: -12px;
  background: var(--blue2);
  left: 0;
  width: 100%;
  height: 4px;
  border-radius: 2px;
}
.navbar-custom .sidebarBtn span::after{
  content: '';
  position: absolute;
  top: 12px;
  background: var(--blue2);
  left: 0;
  width: 100%;
  height: 4px;
  border-radius: 2px;
}
.sidebarBtn.toggle span{
  background: transparent;
  transition: .3s;
}
.sidebarBtn.toggle span::before{
  top: 0;
  transform: rotate(45deg);
  transition: .3s;
}
.sidebarBtn.toggle span::after{
  top: 0;
  transform: rotate(-45deg);
  transition: .3s;
}
.navbar-custom button:focus{
  outline: none;
  box-shadow: none;
}

@media (min-width: 1200px){

  .topo .titulo {
    font-size: 30px;
  }

}

/* ---- Mobile ---- */

@media (max-width: 1023px){

  .navbar-custom {
    height: 56px;
  }
  .fs-large {
    font-size: 20px;
  }
  body main.navbar-stick {
    margin-top: 64px;
  }
  .navbar-custom .navbar-brand {
    margin: 0;
    padding: 0;
  }
  .navbar-custom .nav-brand {
    margin: 0;
  }
  .navbar-custom .navbar-brand .logo {
    width: 160px;
  }
  .navbar-custom .container {
    justify-content: center;
  }
  .navbar-custom .navbar-toggler {
    position: absolute;
    top: 25px;
    left: 15px;
    width: 35px;
    height: 15px;
  }
  .navbar-collapse {
    position: absolute;
    background-color: rgb(64 83 103 / 97%);
    top: 56px;
    left: 0;
    width: 100%;
    height: calc(100vh - 56px);
    z-index: 2;
    overflow-y: scroll;
    backdrop-filter: blur(12px);
  }
  .navbar-collapse.collapsing {
    left: -100%;
    transition: height 0s ease;
  }
  .navbar-collapse.show {
    left: 0;
    padding: 0;
    transition: left 300ms ease-in-out;
  }
  .navbar-toggler.collapsed ~ .navbar-collapse {
    transition: left 500ms ease-in-out;
  }
  #menu-principal .menu-item a.nav-link::before {
    display: none;
  }
  #menu-principal {
    width: 100%;
    align-items: center;
  }
  #menu-principal .menu-item {
    width: 100%;
    margin: 0;
  }
  #menu-principal .menu-item a.nav-link:hover {
    color: #fff;
  }
  #menu-principal .dropdown-menu .menu-item {
    margin-bottom: 10px!important;
    height: auto;
  }
  #menu-principal .menu-item .dropdown-item {
    color: #fff;
    text-transform: uppercase;
  }
  #menu-principal .nav-link:hover {
    color: #fff;
  }
  #menu-principal .menu-item .dropdown-menu.show {
    display: block;
  }
  #menu-principal .menu-item .dropdown-menu {
    display: block;
    box-shadow: none;
    background-color: #3a3a3a4f;
    margin: 0;
    padding: 15px;
    border-radius: 0;
    position: static;
    min-width: unset;
  }
  #menu-principal .menu-item.dropdown:hover::after {
    display: none;
  }
  .nav-link.show {
    background-color: #3a3a3a4f;
    border-bottom: 0!important;
  }
  .navbar-light .navbar-nav .nav-link {
    color: #fff;
    font-size: 18px;
    border-bottom: 1px solid #7491b2;
    padding: 10px;
    transition: none;
  }
  .navbar-light .navbar-nav .nav-link:focus {
    color: #fff;
  }
  #menu-principal .menu-item::after {
      display: none;
  }
  .footer .contato {
    text-align: center;
  }
  .footer .main {
    text-align: center;
  }
  .footer .img-logo {
    margin: auto;
  }
  .footer .logo .wrapper-texto {
    padding: 0 35px;
  }
  .footer .main .social {
    justify-content: center;
    margin-bottom: 25px;
  }
  .footer .social a {
    margin-right: 0;
    margin: 0 15px;
  }
  .footer .main .links {
    margin-bottom: 25px;
  }
  .footer .base small {
    text-align: center;
    margin-bottom: 10px;
    line-height: 1.4;
  }
  #home {
    padding-top: 56px;
  }
  .banner-wrapper .texto-wrapper .titulo {
    font-size: 14px;
  }
  .banner-wrapper .texto-wrapper .subtitulo {
    font-size: 12px;
  }
  .banner-wrapper .texto-wrapper .link {
    font-size: 12px;
  }
  #home .bloco-2 .box-wrapper .frame-text h3 {
    font-size: 22px;
  }
  #home .bloco-3 .titulo {
    font-size: 32px;
  }
  .frame-wrapper {
    text-align: center;
    padding: 20px 40px;
  }
  #home .bloco-2 .box-wrapper .frame-text .link {
    font-size: 12px;
  }
  #quem .topo,
  #empreendimentos .topo {
    aspect-ratio: auto;
    height: 290px;
    margin-top: 56px;
  }
  #quem .bloco-1 .wrapper-texto {
    text-align: center;
    padding: 15px;
  }
  #quem .bloco-2 .wrapper-texto {
    padding: 25px;
  }
  #quem .bloco-2 .wrapper-texto .titulo {
    text-align: center;
  }
  #quem .bloco-2 .wrapper-texto .list {
    padding-left: 1rem;
  }
  #empreendimentos .bloco-1 .imagem-col {
    margin-bottom: 15px;
  }
  #contato .bloco-1 {
    height: auto;
  }
  #contato .col-left {
    padding: 40px;
  }
  #contato .btn-wrapper {
    justify-content: center;
  }
  #contato .btn-wrapper .btn-fale {
    margin-bottom: 25px;
  }
  #contato .bloco-1 .form-wrapper {
    padding: 20px;
  }
  #contato .bloco-1 .btn {
    width: 100%;
  }

}


