
@import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@400;600&family=Inter:wght@300;400;500&display=swap');

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

body{
background:#0b0b0b;
color:#f1e6c8;
font-family:Inter,sans-serif;
}

.hero{
height:100vh;
background:url('hero.jpg') center/cover no-repeat;
position:relative;
display:flex;
align-items:center;
justify-content:center;
text-align:center;
}

.overlay{
position:absolute;
inset:0;
background:rgba(0,0,0,.65);
}

.hero-content{
position:relative;
z-index:2;
}

.logo{
width:180px;
margin-bottom:20px;
}

h1{
font-family:Cinzel,serif;
font-size:5rem;
letter-spacing:8px;
}

.cta-buttons{
margin-top:40px;
display:flex;
gap:15px;
justify-content:center;
flex-wrap:wrap;
}

.btn{
display:inline-block;
padding:14px 28px;
border:1px solid #c9a86a;
color:#c9a86a;
text-decoration:none;
transition:.3s;
}

.btn:hover{
background:#c9a86a;
color:#000;
}

.gallery{
max-width:1200px;
margin:100px auto;
display:grid;
grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
gap:20px;
padding:0 20px;
}

.image-card img{
width:100%;
height:320px;
object-fit:cover;
border:1px solid #2b2b2b;
}

.actions{
max-width:1200px;
margin:100px auto;
display:grid;
grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
gap:30px;
padding:0 20px;
}

.card{
border:1px solid #2d2d2d;
padding:50px 30px;
text-align:center;
background:#111;
}

.card h2{
font-family:Cinzel,serif;
margin-bottom:25px;
}

.location{
padding:120px 20px;
text-align:center;
}

.location h2{
font-family:Cinzel,serif;
font-size:3rem;
margin-bottom:30px;
}

footer{
padding:60px 20px;
text-align:center;
border-top:1px solid #222;
}

.footer-logo{
width:120px;
opacity:.8;
}

@media(max-width:768px){
h1{font-size:3rem;}
}
