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

body{

font-family:Inter,sans-serif;

background:#faf8f3;

color:#222;

overflow-x:hidden;

}

.hero{

position:relative;

height:85vh;

overflow:hidden;

display:flex;

align-items:center;

justify-content:center;

}

.hero img{

position:absolute;

width:100%;

height:100%;

object-fit:cover;

filter:brightness(.55);

animation:float 8s ease infinite;

}

.overlay{

position:relative;

z-index:5;

text-align:center;

color:white;

padding:40px;

}

.overlay h1{

font-size:
clamp(60px,10vw,120px);

letter-spacing:-3px;

}

.overlay p{

margin-top:20px;

font-size:20px;

}

.content{

padding:100px 10%;

}

.section{

margin-bottom:90px;

}

.section h2{

font-size:60px;

font-family:
Cormorant Garamond;

margin-bottom:30px;

}

.section p{

line-height:2.2;

font-size:19px;

max-width:900px;

}

.grid{

display:grid;

grid-template-columns:
repeat(2,1fr);

gap:30px;

margin-top:40px;

}

.box{

background:white;

padding:40px;

border-radius:30px;

box-shadow:
0 20px 50px
rgba(0,0,0,.05);

transition:.4s;

}

.box:hover{

transform:
translateY(-8px)
scale(1.02);

box-shadow:
0 25px 60px
rgba(0,0,0,.08);

}

.timeline{

display:grid;

gap:25px;

margin-top:50px;

}

.step{

background:white;

padding:35px;

border-left:
5px solid #b88638;

border-radius:20px;

}

.cta{

padding:120px;

text-align:center;

}

.cta a{

padding:18px 36px;

background:#22c55e;

color:white;

border-radius:50px;

text-decoration:none;

}

footer{

padding:40px;

text-align:center;

}

@media(max-width:900px){

.hero{

height:55vh;

}

.overlay h1{

font-size:52px;

}

.content{

padding:60px 22px;

}

.grid{

grid-template-columns:1fr;

}

.section h2{

font-size:40px;

}

.cta{

padding:60px 20px;

}

}
