*{margin:0;padding:0;box-sizing:border-box;}

body{
font-family:'Poppins',sans-serif;
background:#fff;
color:#333;
}

.container{
width:90%;
max-width:1200px;
margin:auto;
}

.header{
position:absolute;
width:100%;
padding:20px 0;
z-index:10;
}

.nav{
display:flex;
justify-content:space-between;
align-items:center;
}

.logo-text{
font-family:'Playfair Display',serif;
font-size:22px;
font-weight:600;
}

.hero{
height:100vh;
background-image:url("images/header.png");
background-position:center;
background-repeat:no-repeat;
background-size:contain;
background-color:#f8f6f2;
display:flex;
justify-content:center;
align-items:center;
text-align:center;
position:relative;
}

.hero-overlay{
position:absolute;
width:100%;
height:100%;
background:linear-gradient(to bottom,rgba(255,255,255,0.85),rgba(0,0,0,0.2));
}

.hero-content{
position:relative;
z-index:2;
max-width:700px;
padding:20px;
}

.hero h1{
font-family:'Playfair Display',serif;
font-size:42px;
margin-bottom:20px;
color:#111;
}

.hero p{
margin-bottom:30px;
}

.btn-primary{
background:linear-gradient(45deg,#d4af37,#bfa046);
color:#fff;
padding:12px 30px;
border:none;
border-radius:30px;
text-decoration:none;
cursor:pointer;
}

.btn-outline{
border:1px solid #111;
padding:8px 20px;
color:#111;
text-decoration:none;
border-radius:30px;
}

.contact{
padding:100px 0;
text-align:center;
}

form{
display:flex;
flex-direction:column;
gap:15px;
max-width:500px;
margin:30px auto;
}

input,textarea{
padding:12px;
border:1px solid #ddd;
border-radius:8px;
}

textarea{min-height:120px;}

.checkbox{
font-size:14px;
display:flex;
gap:10px;
align-items:flex-start;
text-align:left;
}

footer{
background:#111;
color:#fff;
text-align:center;
padding:20px 0;
}

@media(max-width:768px){
.hero h1{font-size:28px;}
}