.hero{
position:relative;
height:60vh;
min-height:500px;
display:flex;
align-items:center;
justify-content:center;
overflow:hidden;
}

.hero img{
position:absolute;
top:0;
left:0;
width:100%;
height:100%;
object-fit:cover;
}

.hero::after{
content:"";
position:absolute;
top:0;
left:0;
width:100%;
height:100%;
background:rgba(0,0,0,0.58);
}

.hero-overlay{
position:relative;
z-index:2;
max-width:900px;
text-align:center;
padding:60px;
background:rgba(0,0,0,0.4);
border-radius:14px;
backdrop-filter:blur(6px);
}

.hero-kicker,
.section-kicker{
margin:0 0 14px;
color:#c9a227;
font-size:13px;
letter-spacing:0.08em;
text-transform:uppercase;
}

.hero-overlay h1{
font-family:'Playfair Display', serif;
font-size:48px;
margin-bottom:20px;
}

.hero-overlay p{
color:#d0d0d0;
font-size:18px;
margin-bottom:30px;
}

.content{
max-width:1100px;
margin:100px auto;
padding:0 20px;
}

.content-intro{
display:grid;
grid-template-columns:minmax(0,0.9fr) minmax(0,1.1fr);
gap:50px;
align-items:start;
}

.content h2{
font-family:'Playfair Display', serif;
font-size:38px;
margin-bottom:25px;
}

.content p{
color:#b5b5b5;
line-height:1.7;
margin-bottom:20px;
}

.content-copy p{
font-size:17px;
}

.service-image{
max-width:1100px;
margin:60px auto;
padding:0 20px;
}

.service-image img{
width:100%;
border-radius:12px;
}

.group-uses{
padding:100px 20px;
background:#0b0b0b;
text-align:center;
}

.group-uses h2{
font-family:'Playfair Display', serif;
font-size:32px;
margin-bottom:60px;
}

.group-uses-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
gap:30px;
max-width:1100px;
margin:auto;
}

.group-use{
background:#141414;
padding:30px;
border-radius:10px;
border:1px solid #1f1f1f;
display:flex;
flex-direction:column;
gap:12px;
text-align:left;
transition:all .3s ease;
}

.group-use:hover{
border-color:#c9a227;
transform:translateY(-5px);
}

.group-use strong{
font-size:20px;
}

.group-use span{
color:#bdbdbd;
line-height:1.6;
}

.benefits{
padding:100px 20px;
text-align:center;
}

.benefits h2{
font-family:'Playfair Display', serif;
font-size:32px;
margin-bottom:60px;
}

.benefits-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(200px,1fr));
gap:30px;
max-width:1000px;
margin:auto;
}

.benefits-grid div{
background:#141414;
padding:30px;
border-radius:10px;
border:1px solid #1f1f1f;
display:flex;
flex-direction:column;
gap:10px;
text-align:left;
}

.benefits-grid strong{
font-size:20px;
}

.benefits-grid span{
color:#b7b7b7;
line-height:1.6;
}

.booking{
padding:120px 20px;
text-align:center;
background:#0b0b0b;
}

.booking h2{
font-family:'Playfair Display', serif;
font-size:32px;
margin-bottom:20px;
}

.booking-copy{
max-width:720px;
margin:0 auto 30px;
color:#bdbdbd;
font-size:17px;
line-height:1.7;
}

.map{
padding:100px 20px;
text-align:center;
}

.map h2{
font-family:'Playfair Display', serif;
margin-bottom:40px;
}

@media (max-width: 900px){
.content-intro{
grid-template-columns:1fr;
}
}
