@import url('https://fonts.googleapis.com/css2?family=Roboto+Slab:wght@200;300;400;500;600;700;800;900&display=swap');

* {
  padding: 0;
  margin: 0;
  box-sizing: border-box;
}

html,
body {
    
  
    font-family: 'Roboto Slab', serif;
    scroll-behavior:smooth;
  }
  
li {
    list-style: none;
  }

a {
    text-decoration: none;
  }

.container {
  max-width: 90%;
  margin: auto;
}

.head_container {
  
  max-width: 90%;
  margin: auto;
}

/*--------------header--------*/
header {/*--
    position:fixed;
    width: 100%;----*/
  height: 8vh;
}

.logo img {
  width: 120px;
}

header nav {
  display:flex;
  justify-content: space-between;
  align-items: center;
  padding-top: 20px;
}

.hambuger { 
    /* aquelas 3 barras do menu */
  display:none;
}

.bar {
    /* aquelas 3 barras do menu */
  display: block;
  width: 25px;
  height: 3px;
  margin: 5px auto;
  transition: all 0.3s ease-in-out;
  background-color: #fff;
}

header ul {
  display:flex;
  justify-content: space-between;
  align-items: center;
}

header ul li {
    /*entire box do header da pagina inicial ate contacte*/
  margin-left: 3rem;
  
  
}

header ul li a { /* box background de cada elemento do header apenas page inicial ate contacte*/
  font-size: 1.2rem;
  font-weight: 400;
  color: white;
  transition: 0.5s;
  
  
}

header ul li a:hover {
  color: #C1B086;
  border-bottom: 2px solid rosybrown;
  

}

@media only screen and (max-width: 768px) {
  header ul {
    display: block;
    position:fixed;
    left: -100%;
    top: 5rem;
    flex-direction: column;
    background-color: #f3f1f1;
    width: 100%;
    border-radius: 10px;
    text-align: center;
    transition: 0.5s;
    box-shadow: 0 10px 27px rgba(0, 0, 0, 0.05);
    z-index: 20;

    
  }
 /*mobile */
  header ul.active {
    left: 0%;
  }

  header ul li {
    margin: 2.5rem 0;
  }

  header ul li a {
    color: black;
  }

  .hambuger {
    display: block;
    cursor: pointer;
  }

  .hambuger.active .bar:nth-child(2) {
    opacity: 0;
    
  }

  .hambuger.active .bar:nth-child(1) {
    transform: translateY(8px) rotate(45deg);
    
  }

  .hambuger.active .bar:nth-child(3) {
    transform: translateY(-8px) rotate(-45deg);
  }

 


}

/*--------------header--------*/
/*--------------home--------*/
.home .image img {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
}

.home .text {
  max-width: 50%;
  color: white;
  margin: 5% 0 0 10%;

 /*o seu lar perfeito completo*/
}

.home h1 {
  font-size: 80px;
  font-weight: 400;
 /*o seu lar perfeito metade*/
}

.home p {
  font-weight: 400;
  line-height: 25px;
  font-family: sans-serif;
  font-size: 17px;
  margin: 50px 0 0 50px;
}
/*--------------gallary------
button {
  padding: 1px 20px;
  background: none;
  outline: none;
  border: 2px solid white;
  border-radius: 50px;
  color: white;
  margin-top: 20px;
}

.home button {
  margin-left: 50px;
}

.home .image_item {
  position: absolute;
  top: 20%;
  right: 20%;
  display: flex;
  flex-direction: column;
  cursor: pointer;
}

.home .image_item img {
  width: 140px;
  height: 94px;
  margin: 10px;
  transition: 0.5s;
}

.home .image_item img.active {
  border: 2px solid white;
}

.home .box .text {
  position: relative;
}

.home .box .text::after {
  position: absolute;
  content: 'H';
  font-size: 500px;
  top: -120%;
  font-weight: bold;
  opacity: 0.1;
}

/*--------------home--------*/
/*--------------book--------*/
.flex {
  display: flex;
}

.grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  grid-gap: 30px;
}

.book {
  margin-top: 5%;
  width: 100%;
  height: 20vh;
  color: white;
}

.book .input {
  background: #242e5a;
  padding: 20px 20px 40px 20px;
}

.book .search {
  background: #3f9cc1;
  padding: 20px;
}
.search:hover{
    border: 2px solid whitesmoke;
}



footer h3 {
    margin-bottom: 20px;
  }
  
  footer li {
    margin-bottom: 15px;
    transition: 0.5s;
  }
  
  footer li:hover {
    color: #C1B086;
    cursor: pointer;
  }
  

/*--------------footer--------*/
@media only screen and (max-width:768px) {
    .home .box .text {
      max-width: 100%;
    }
  
    .home .box .text::after,
    .home .image_item {
      display: none;
    }
  
    .restaurant .container,
    .about .container,
    .book .container {
      flex-direction: column;
    }
  
    .grid {
      grid-template-columns: repeat(2, 1fr);
    }
  
    .book {
      margin-top: 10%;
      height: auto;
    }
  
    .book .search {
      width: 100%;
    }
  
    .book .search input {
      margin-top: 0;
    }
  
    .left, .right {
      width: 100%;
    }
  
    .wrapper .text {
      width: 80%;
    }
  
    .room {
      margin-bottom: 100px;
    }
  
    .room .grid {
      grid-template-columns: repeat(1, 1fr);
    }
  
    .restaurant .right {
      padding: 0;
      margin-top: 50px;
    }
  
    footer .payment {
      grid-template-columns: repeat(4, 1fr);
    }
  }
  
  @media only screen and (max-width:768px) {
    .grid {
      grid-template-columns: repeat(1, 1fr);
    }
  
    .home .text {
      margin: 10% 0 0 0;
      
    }
  
    .home h1 {
      font-size: 40px;
      
    }
  
    .about p,
    .home p {
      margin: 50px 0 0 0;
    }
  
    .wrapper .text {
      padding: 10px;
      height: 600px;
    }
  
    .heading_top {
      margin-top: 100px;
    }
  
    .heading_top button {
      display: none;
    }
  
    .restaurant .flex {
      flex-direction: column-reverse;
    }
  
    .center{
      text-align: center;
    }
  
    .decoracao{
      text-decoration: none;
      color: black;
  
    }
  
  
  
   
  }