*{
  margin:0;
  padding:0;
  box-sizing:border-box;
}

body{
  font-family:'Poppins', sans-serif;
  background:#111;
  color:white;
}

/* Navbar */
.navbar{
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:20px 8%;
  background:#1c1c1c;
  position:sticky;
  top:0;
  z-index:1000;
}

.logo{
  color:#ff4c60;
}

.nav-links a{
  color:white;
  text-decoration:none;
  margin-left:20px;
  transition:0.3s;
}

.nav-links a:hover{
  color:#ff4c60;
}

/* Section */
.reservation-section{
  min-height:100vh;
  display:flex;
  justify-content:center;
  align-items:center;
  padding:40px 20px;
}

/* Reservation Box */
.reservation-box{
  width:100%;
  max-width:500px;
  background:#1c1c1c;
  padding:40px;
  border-radius:20px;
  box-shadow:0 5px 20px rgba(0,0,0,0.5);
  text-align:center;
}

.reservation-box h1{
  margin-bottom:15px;
  font-size:2.5rem;
}

.reservation-box p{
  color:#ccc;
  margin-bottom:30px;
}

/* Form */
form{
  display:flex;
  flex-direction:column;
}

form input{
  margin-bottom:15px;
  padding:14px;
  border:none;
  outline:none;
  border-radius:10px;
  background:#2a2a2a;
  color:white;
  font-size:1rem;
}

form input::placeholder{
  color:#aaa;
}

/* Button */
form button{
  padding:14px;
  border:none;
  border-radius:30px;
  background:#ff4c60;
  color:white;
  font-size:1rem;
  cursor:pointer;
  transition:0.3s;
}

form button:hover{
  background:#ff2e44;
  transform:scale(1.03);
}

/* Popup */
#popup{
  position:fixed;
  bottom:-100px;
  left:50%;
  transform:translateX(-50%);
  background:#25D366;
  color:white;
  padding:15px 25px;
  border-radius:10px;
  transition:0.5s;
  font-weight:500;
}

#popup.show{
  bottom:30px;
}

/* Animation */
.fade-up{
  opacity:0;
  transform:translateY(40px);
  transition:1s;
}

.fade-up.show{
  opacity:1;
  transform:translateY(0);
}

/* Responsive */
@media(max-width:600px){

  .navbar{
    flex-direction:column;
    gap:15px;
  }

  .nav-links{
    display:flex;
    flex-wrap:wrap;
    justify-content:center;
  }

  .reservation-box{
    padding:30px 20px;
  }

  .reservation-box h1{
    font-size:2rem;
  }

}