body{
font-family: 'Open Sans', Arial, sans-serif;
margin:0;
background:#fafafa;
color:#222;
line-height:1.6;
position:relative;
}

body::before{
content:"";
position:fixed;
top:0;
left:0;
width:100%;
height:100%;
background-image:
linear-gradient(rgba(247, 222, 226, 0.67), rgba(247, 222, 226, 0.45)),
url("lace.jpg");
background-repeat:repeat;
background-size:400px;
z-index:-1;
}

header{
background:
linear-gradient(rgba(125,110,73,0.9), rgba(125,110,73,0.9)),
url("lace.jpg");
background-size:cover;
background-position:center;
color:white;
text-align:center;
padding:3rem 1rem 2rem;
}

header h1{
color:white;
font-family:'Great Vibes', cursive;
font-size:5rem;
letter-spacing:2px;
padding:1rem;
text-shadow:2px 2px 6px rgba(0,0,0,0.35);
}

header h1::after{
content:"";
display:block;
width:120px;
height:2px;
background:white;
margin:15px auto;
opacity:0.7;
}

.tagline{
font-size:1.4rem;
font-style:italic;
letter-spacing:1px;
opacity:0.95;
margin-top:-50px;
}

nav{
background:#333333;
box-shadow:0 3px 8px rgba(0,0,0,0.2);
}

nav ul{
list-style:none;
margin:0;
padding:0;
display:flex;
justify-content:center;
flex-wrap:wrap;
}

nav li{
margin:0;
border-right:1px solid rgba(255,255,255,0.2);
}

nav li:last-child{
border-right:none;
}

nav a{
display:block;
padding:1rem 1.8rem;
color:white;
font-family:'Open Sans', sans-serif;
font-weight:600;
text-decoration:none;
letter-spacing:.5px;
transition:background 0.3s ease;
}

nav a:hover,
nav a:focus{
background:#7d6e49;
outline:2px solid #ffffff;
outline-offset:-2px;
}

main{
max-width:1000px;
margin:auto;
padding:2rem;
background:white;
border-radius:6px;
}

.hero-img{
max-width:90%;
height:auto;
float:left;
margin:0 1.5rem 1rem 0;
}

h2, h3{
color:#776949;
font-family:'Playfair Display', serif;
}

form{
display:flex;
flex-direction:column;
max-width:400px;
}

label{
margin-top:1rem;
font-weight:bold;
}

input{
padding:0.5rem;
margin-top:0.25rem;
}

button{
margin-top:1rem;
padding:0.7rem;
background:#333;
color:white;
border:none;
cursor:pointer;
}

button:hover,
button:focus{
background:#96855c;
}

footer{
text-align:center;
padding:1rem;
background:#333;
color:white;
margin-top:2rem;
}

.skip-link{
position:absolute;
left:10px;
top:auto;
background:black;
color:white;
padding:8px;
}
