*{
margin:0;
padding:0;
box-sizing:border-box;
}

body{
font-family:Poppins,sans-serif;
color:#333;
line-height:1.8;
}

img{
max-width:100%;
display:block;
}

.container{
width:min(1200px,92%);
margin:auto;
}

.hero{
height:100vh;
background:url(images/banner.jpg) center/cover;
position:relative;
display:flex;
align-items:center;
justify-content:center;
text-align:center;
color:#fff;
}

.overlay{
position:absolute;
inset:0;
background:rgba(0,0,0,.55);
}

.hero-content{
position:relative;
z-index:2;
max-width:900px;
padding:20px;
}

.hero h1{
font-size:clamp(2.2rem,5vw,4.5rem);
font-weight:800;
}

.hero h2{
margin:15px 0;
font-size:clamp(1.2rem,3vw,2rem);
}

.hero p{
font-size:1.1rem;
margin-bottom:30px;
}

.btn{
display:inline-block;
background:#d4af37;
padding:16px 36px;
color:#000;
font-weight:700;
border-radius:50px;
text-decoration:none;
transition:.3s;
}

.btn:hover{
transform:translateY(-4px);
}

section{
padding:80px 0;
}

.grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
gap:25px;
}

.card{
padding:35px;
background:#fff;
border-radius:15px;
box-shadow:0 10px 30px rgba(0,0,0,.08);
transition:.3s;
}

.card:hover{
transform:translateY(-10px);
}

.gallery-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
gap:15px;
}

.gallery img{
border-radius:10px;
}

.timeline{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(150px,1fr));
gap:20px;
text-align:center;
}

.review{
background:#f8f8f8;
padding:25px;
margin:20px 0;
border-radius:10px;
}

.cta{
background:#111;
color:#fff;
text-align:center;
}

.cta a{
display:inline-block;
margin-top:20px;
padding:16px 35px;
background:#25D366;
color:#fff;
border-radius:50px;
text-decoration:none;
font-weight:700;
}

footer{
padding:30px;
text-align:center;
background:#000;
color:#fff;
}

@media(max-width:768px){

.hero{
height:85vh;
}

section{
padding:60px 0;
}

}