body {
  width: 100vw;
  max-width: 100%;
  height: 100%;
}

#whats_btn {
  position: fixed;
  width: 60px;
  height: 60px;
  bottom: 40px;
  right: 40px;
  background-color: #25d366;
  border-radius: 50px;
  box-shadow: 2px 2px 3px #999;
  z-index: 800;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: all 0.7s ease;
}

#whats_btn img {
  width: 60%;
  height: 60%;
}

#whats_btn:hover {
  transform: translateY(-5px);
}










header {
  width: 100vw;
  max-width: 100%;
  height: 80px;
  position: fixed;
  z-index: 998;
  background-color: transparent;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: all 0.1s ease;
}

.navbar-scrolled {
  background-color: var(--black-1);
}

header nav {
  height: 100%;
  width: 1100px;
  padding: 0 20px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

header nav .logo {
  width: 150px;
  height: 30px;
}

header nav .logo img {
  width: 100%;
  height: 100%;
}

header nav .links{
  display: block;
}

header nav .links ul{
  display: flex;
  gap: 50px;
}

header nav .links ul li a{
  color: var(--white-1);
  transition: all .7s ease;
}

header nav .links ul li a:hover{
  color: #00a0ee;
}

header nav .hamburguer {
  /* display: flex; */
  display: none;
  align-items: center;
  justify-content: center;
  gap: 10px;
  color: var(--gray-1);
  cursor: pointer;
}

header nav .hamburguer A {
  font-size: 18px;
}

header nav .hamburguer svg {
  width: 16px;
  height: 16px;
  fill: var(--gray-1);
}

#menu-navbar {
  width: 100vw;
  max-width: 100%;
  position: fixed;
  z-index: 998;
  height: 0;
  background-color: var(--black-1);
  transition: all 0.5s ease;
  top: -900px;

  display: none;
  /* display: flex; */
  justify-content: center;
  align-items: center;
}

#menu-navbar .container {
  width: 1100px;
  height: 100%;
  padding: 120px 20px;
}

#menu-navbar .container ul li {
  margin: 20px 0;
}

#menu-navbar .container ul li a:hover {
  color: #00a0ee;
}

#menu-navbar .container ul li a {
  color: var(--gray-1);
  transition: all 0.5s ease;
}

#menu-navbar.menu-active {
  height: 100vh;
  top: 0;
}











#home {
  width: 100vw;
  max-width: 100%;
  min-height: 100vh;
  display: flex;
  justify-content: center;
  background-color: var(--black-1);
}

#home .container {
  width: 1100px;
  min-height: 100vh;
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  padding: 0 20px;
  z-index: 100;
}

#home .container h2 {
  color: var(--gray-1);
  font-weight: 300;
  max-width: 500px;
  margin-bottom: 20px;
}

#home .container h1 {
  color: var(--white-1);
  max-width: 700px;
  margin: 20px 0;
  font-weight: 400;
  line-height: 100%;
}

#home .container p {
  color: var(--gray-1);
  max-width: 350px;
  margin-bottom: 20px;
  line-height: 170%;
}

#home .container .link_group {
  display: flex;
  align-items: center;
  gap: 10px;
  position: relative;
}

#home .container .link_group::before{
  content: '';
  position: absolute;
  bottom: -5px;
  left: 0;
  width: 0%;
  height: 1px;
  background-color: #00a0ee;
  transition: all .6s ease;
}

#home .container .link_group:hover::before{
  width: 100%;
}

#home .container .link_group a {
  color: #00a0ee;
}

#home .container .link_group img {
  width: 16px;
  height: 16px;
}

#home .container #topography_lines {
  position: absolute;
  right: 0;
  height: 100%;
  z-index: -100;
}










#services {
  width: 100vw;
  max-width: 100%;
  height: max-content;
  background-color: var(--white-1);
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 100px 0;
}

#services .container {
  width: 1100px;
  height: 100%;
  padding: 0 20px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
}

#services .container h2:nth-child(1) {
  font-weight: 400;
  font-size: 32px;
  max-width: 700px;
  color: #000;
  margin: 0;
}

#services .container h2 {
  font-weight: 400;
  margin: 10px 0 20px 0;
  max-width: 700px;
}

#services .container .teste1{
  color: #00a0ee;

}

#services .container h2.teste{
line-height: 140%;
}

#services .container h2.teste span{
  background-color: #00a0ee;;
  color: #000;
  color: #fff;
  line-height: 150%;
}

#services .container h3 {
  color: var(--gray-1);
  margin: 20px 0;
  font-size: 1.4rem;
  font-weight: 400;
  max-width: 600px;
  line-height: 140%;
}

#services .container .itens {
  margin-top: 30px;
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  justify-content: center;
}

#services .container .itens .item {
  max-width: 300px;
  min-width: 250px;
}

#services .container .itens .item img{
  height: 50px;
}

#services .container .itens .item .item_title{
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: 80px;
  margin: 10px 0;
}

#services .container .itens .item .item_title h2 {
  align-self: center;
}

#services .container .itens .item .item_description p {
  color: var(--gray-1);
  font-size: 22px;
}










#newsletter{
  width: 100vw;
  max-width: 100%;
  height: max-content;
  padding: 100px 0;

  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #000;
  position: relative;
}

#newsletter .line_bottom {
  position: absolute;
  left: 0;
  bottom: 0;
  height: 200px;
}

#newsletter .line_top {
  position: absolute;
  right: 0;
  top: 0;
  height: 200px;
  transform: rotate(180deg);
}

#newsletter .container{
  width: 1100px;
  height: 100%;
  padding: 0 20px;
  display: grid;
  grid-template-columns: 1fr 1fr;
}

#newsletter .container .col1{
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

#newsletter .container .col1 .content{
}

#newsletter .container .col1 h2{
  font-size: 50px;
  font-family: 400;
  margin-bottom: 15px;
  color: var(--white-1);
}

#newsletter .container .col1 p{
  max-width: 300px;
  color: var(--gray-1);
  letter-spacing: 120%;
}

#newsletter .container .col2{
  display: flex;
  justify-content: center;
  align-items: center;
}

#newsletter .container .col2 .content{
  width: 300px;
}

#newsletter .container .col2 .content label{
  color: var(--white-1);
  display: block;
}

#newsletter .container .col2 .content input{
  display: block;
  margin: 10px 0;
  width: 100%;
  height: 40px;
  border-radius: 6px;
  outline: none;
  border: 1px solid #00a0ee;
  background-color: #F8F8F8;
  padding: 10px 10px;
}

#newsletter .container .col2 .content button{
  margin-top: 10px;
  width: 100%;
  height: 40px;
  border-radius: 6px;
  background-color: #00a0ee;
  outline: none;
  border: none;
  color: var(--white-1);
  font-weight: 500;
  letter-spacing: 1px;
  cursor: pointer;
  transition: all .4s ease;
}

#newsletter .container .col2 .content button:hover{
  transform: translateY(-10px);
}










#about {
  width: 100vw;
  max-width: 100%;
  height: max-content;
  background-color: var(--white-1);
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0 0 100px 0;
}

#about .container {
  width: 1100px;
  height: 100%;
  padding: 0 20px;
  border-top: 1px solid var(--gray-1);
  display: grid;
  grid-template-columns: 1fr 1fr;
}

#about .container .col1 {
  height: 100%;
  padding-top: 100px;
  max-width: 480px;
}

#about .container .col1 h2 {
  font-size: var(--H1-size);
  font-weight: 400;
  line-height: 90%;
  margin-bottom: 18px;
}

#about .container .col1 p {
  line-height: 140%;
  text-align: justify;
  color: var(--gray-1);
  font-size: 22px;
}

#about .container .col1 a {
  color: #00a0ee;
  font-weight: 500;
  margin-top: 20px;
  display: inline-block;
  padding-bottom: 10px;
  position: relative;
}

#about .container .col1 a::before {
  transition: all 0.8s ease;
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  height: 2px;
  width: 0;
  background-color: #00a0ee;
}

#about .container .col1 a:hover {
  opacity: 0.8;
}

#about .container .col1 a:hover::before {
  width: 100%;
}

#about .container .col2 {
  padding: 100px 0 0 40px;
  min-width: 500px;
}

#about .container .col2 .container_img {
  width: 400px;
  height: 550px;
  border-radius: 16px;
  background-color: var(--gray-1);
  /* background: url(../img/luz.jpg) no-repeat;
  background-size: cover; */
}
#about .container .col2 .container_img img{
  width: 100%;
  border-radius: 16px;
  height: 100%;
}










#bookAdemo {
  width: 100vw;
  max-width: 100%;
  height: max-content;
  background-color: black;

  display: flex;
  justify-content: center;
  align-items: center;
  padding: 100px 0;

  position: relative;
  z-index: 120;
}

#bookAdemo .container {
  width: 1100px;
  height: 100%;
  padding: 0 20px;
  text-align: center;
}

#bookAdemo .container h2 {
  font-size: var(--H2-size);
  font-weight: 300;
  line-height: 90%;
  margin: 10px 0 20px 0;
  color: var(--white-1);
}

#bookAdemo .container h3 {
  font-size: var(--H3-size);
  font-weight: 400;
  line-height: 140%;
  color: #00a0ee;
}

#bookAdemo .container p {
  max-width: 600px;
  margin: 0 auto;
  line-height: 140%;
  margin-bottom: 12px;
  color: var(--gray-1);
}

#bookAdemo .container #btn_show_modal {
  background-color: #00a0ee;
  color: var(--white-1);
  padding: 12px 60px;
  display: inline-block;
  border-radius: 6px;
  margin-top: 12px;
  transition: all 0.5s ease;
  cursor: pointer;
}

#bookAdemo .container #btn_show_modal:hover {
  transform: translateY(-3px);
}

#bookAdemo .line_bottom {
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: -100;
  height: 200px;
}

#bookAdemo .line_top {
  position: absolute;
  right: 0;
  top: 0;
  z-index: -100;
  height: 200px;
  transform: rotate(180deg);
}










.contact {
  width: 100vw;
  max-width: 100%;
  height: max-content;
  background-color: var(--white-1);
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 100px 0;
}

.contact .container {
  width: 1100px;
  height: 100%;
  padding: 0 20px;
}

.contact .container h2 {
  font-size: var(--H1-size);
  font-weight: 300;
}

.contact .container h2 a {
  text-align: center;
  color: var(--gray-1);
  border-bottom: 2px solid var(--gray-1);
  transition: all 0.6s ease;
}

.contact .container h2 a:hover {
  color: #00a0ee;
  border-bottom: 2px solid #00a0ee;
}










footer {
  width: 100vw;
  max-width: 100%;
  display: flex;
  height: max-content;
  justify-content: center;
  align-items: center;
}

footer .container {
  width: 1100px;
  height: 100%;
  padding: 20px 20px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  border-top: 1px solid var(--black-1);
}

footer .container .col1{
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
}

footer .container .col1 p {
  font-weight: 500;
}

footer .container .col1 p {
  font-size: 14px;
}

footer .container .col2 {
  display: flex;
  gap: 100px;
}

footer .container .col2 ul li {
  margin: 10px 0;
}

footer .container .col2 ul li a {
  color: var(--black-1);
}










#modal_overlay_confirmation {
  width: 100vw;
  max-width: 100%;
  height: 100vh;
  position: fixed;
  top: 0;
  left: 0;
  backdrop-filter: blur(16px) saturate(180%);
  -webkit-backdrop-filter: blur(16px) saturate(180%);
  background-color: rgba(17, 25, 40, 0.75);
  z-index: 999;

  display: none;
  justify-content: center;
  align-items: center;
}

/* #modal_overlay_confirmation .modal-confirmation-active{
  display: block;
} */

#modal-confirmation{
  width: 400px;
  height: max-content;
  background-color: var(--white-1);
  opacity: 1;
  border-radius: 12px;
  padding: 50px 20px;
  text-align: center;
  position: relative;

  /* display: none; */
}


#modal-confirmation .container_img {
  margin: 50px auto;
  width: 150px;
  display: flex;
  justify-content: center;
  align-items: center;
}

#modal-confirmation .container_img img {
  width: 100%;
  height: 100%;
}

#modal-confirmation p{
  margin: 50px 0;
}

#modal-confirmation button {
  width: 100%;
  height: 50px;
  border-radius: 8px;
  border: none;
  font-weight: 700;
  background-color: #00a0ee;
  cursor: pointer;
  color: #fff;
  transition: 0.8s ease;
}

#modal-confirmation  button:hover {
  opacity: 0.7;
}






@media screen and (max-width: 1050px){
  #about .container {

    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: max-content 1fr;
    padding-top: 50px;
  }

  #about .container .col1{
    max-width: none;
    width: 100%;
    padding: 0;
    text-align: center;
  }

  #about .container .col1 p{
    text-align: center;
  } 

  #about .container .col2 {
    width: 100%;
    min-width: 100%;
    padding: 40px 0 0 0;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  
  #about .container .col2 .container_img {
    width: 300px;
    height: 450px;
  }
  
}



@media screen and (max-width: 800px) {
  header nav .links{
    display: none;
  }
  
  header nav .hamburguer {
    display: flex;
  }

  #menu-navbar {
    display: flex;
  }
}

@media screen and (max-width: 740px){
  #newsletter .container{
    grid-template-columns: 1fr;
    grid-template-rows: 1fr 1fr;
  }
}

@media screen and (max-width: 410px) {
  #about .container .col2 .container_img {
    margin: 0 auto;
    margin-top: 20px;
    width: 260px;
    height: 400px;
    border-radius: 16px;
    background-color: var(--gray-1);
  }

  #about .container .col1 p{
    text-align: justify;
  } 
}
