*{
margin:0;
padding:0;
box-sizing:border-box;
font-family:Arial;
}

.hero{
height:100vh;
background:url(images/hero.jpg) center/cover;
position:relative;
color:white;
}

.overlay{
position:absolute;
top:0;
left:0;
width:100%;
height:100%;
background:rgba(0,0,0,.45);
}

.center-title{
position:absolute;
top:45%;
left:50%;
transform:translate(-50%,-50%);
text-align:center;
z-index:2;
background:rgba(0,0,0,.55);
padding:30px 60px;
border-radius:15px;
animation:fadeUp 1.5s ease forwards;
}

.center-title h1{
font-size:60px;
letter-spacing:4px;
}

.center-title p{
margin-top:10px;
letter-spacing:3px;
}

.middle-bar{
position:absolute;
bottom:80px;
left:50%;
transform:translateX(-50%);
display:flex;
gap:20px;
z-index:2;
opacity:0;
animation:fadeBottom 1.5s ease forwards;
animation-delay:.5s;
}

.box{
background:rgba(0,0,0,.6);
padding:20px 40px;
border-radius:10px;
cursor:pointer;
transition:.3s;
color:white;
text-decoration:none;
}

.box:hover{
background:#bfa15a;
color:black;
}

.rooms-section{
background:#111;
padding:80px 40px;
text-align:center;
color:white;
}

.rooms-section h2{
margin-bottom:40px;
font-size:40px;
letter-spacing:2px;
}

.room-block{
margin-bottom:70px;
}

.room-block h3{
margin-bottom:20px;
font-size:22px;
letter-spacing:1px;
}

.gallery{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(150px,1fr));
gap:15px;
}

.gallery img{
width:100%;
height:120px;
object-fit:cover;
border-radius:10px;
cursor:pointer;
transition:.3s;
}

.gallery img:hover{
transform:scale(1.05);
}

@keyframes fadeUp{
from{
opacity:0;
transform:translate(-50%,-40%);
}
to{
opacity:1;
transform:translate(-50%,-50%);
}
}

@keyframes fadeBottom{
from{
opacity:0;
transform:translateX(-50%) translateY(30px);
}
to{
opacity:1;
transform:translateX(-50%) translateY(0);
}
}

#lightbox{
position:fixed;
top:0;
left:0;
width:100%;
height:100%;
background:rgba(0,0,0,.85);
display:none;
align-items:center;
justify-content:center;
z-index:999;
}

#lightbox img{
max-width:90%;
max-height:90%;
border-radius:15px;
box-shadow:0 0 30px black;
}
