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

html{
scroll-behavior:smooth;
}

body{
font-family:'Inter',sans-serif;
background:#f8f5ef;
color:#222;
overflow-x:hidden;
line-height:1.7;
}

.navbar{
position:fixed;
top:20px;
left:50%;
transform:translateX(-50%);
width:92%;
max-width:1300px;
display:flex;
justify-content:space-between;
align-items:center;
padding:18px 30px;
background:rgba(255,255,255,.12);
backdrop-filter:blur(20px);
border:1px solid rgba(255,255,255,.15);
border-radius:999px;
z-index:1000;
}

.logo{
font-family:'Playfair Display',serif;
font-size:1.3rem;
font-weight:700;
color:white;
}

.nav-links{
display:flex;
gap:35px;
}

.nav-links a{
text-decoration:none;
color:white;
font-weight:500;
transition:.3s;
}

.nav-links a:hover{
opacity:.7;
}

.hero{
height:100vh;
background:
linear-gradient(rgba(0,0,0,.45),rgba(0,0,0,.45)),
url("hero.png");
background-size:cover;
background-position:center;
display:flex;
justify-content:center;
align-items:center;
text-align:center;
}

.hero-content{
color:white;
padding:20px;
max-width:900px;
}

.eyebrow{
letter-spacing:5px;
font-size:.85rem;
margin-bottom:20px;
}

.hero h1{
font-family:'Playfair Display',serif;
font-size:6rem;
line-height:1;
margin-bottom:20px;
}

.subtitle{
font-size:1.3rem;
margin-bottom:35px;
font-weight:300;
}

.hero-buttons{
display:flex;
justify-content:center;
gap:15px;
flex-wrap:wrap;
}

.button{
display:inline-block;
padding:16px 38px;
background:white;
color:#111;
text-decoration:none;
font-weight:600;
border-radius:999px;
transition:.3s;
}

.button:hover{
transform:translateY(-4px);
}

.secondary-button{
background:transparent;
color:white;
border:2px solid white;
}

.secondary-button:hover{
background:white;
color:#111;
}

section{
padding:120px 8%;
}

.container{
max-width:1200px;
margin:auto;
}

h2{
font-family:'Playfair Display',serif;
font-size:3rem;
margin-bottom:30px;
text-align:center;
color:#2f241d;
}

.container > p{
max-width:800px;
margin:auto;
text-align:center;
font-size:1.1rem;
}

.menu-category{
background:white;
padding:40px;
border-radius:24px;
margin-bottom:35px;
box-shadow:0 15px 40px rgba(0,0,0,.08);
}

.menu-category h3{
font-family:'Playfair Display',serif;
font-size:2rem;
margin-bottom:25px;
color:#4b3628;
}

.menu-item{
display:flex;
justify-content:space-between;
align-items:center;
padding:14px 0;
border-bottom:1px solid #ececec;
gap:15px;
}

.menu-item:last-child{
border-bottom:none;
}

.menu-item span:first-child{
font-weight:600;
}

.menu-item span:last-child{
font-weight:700;
color:#4b3628;
white-space:nowrap;
}

.menu-category p{
margin:8px 0 16px;
color:#666;
font-size:.95rem;
line-height:1.6;
}

.hours-box{
background:white;
padding:40px;
border-radius:24px;
max-width:500px;
margin:auto;
box-shadow:0 15px 40px rgba(0,0,0,.08);
text-align:center;
}

.hours-box p{
margin:8px 0;
}

#contact p{
text-align:center;
margin-bottom:12px;
}

#contact a{
color:#4b3628;
text-decoration:none;
font-weight:600;
transition:.3s;
}

#contact a:hover{
opacity:.7;
}

footer{
background:#111;
color:white;
text-align:center;
padding:50px 20px;
}

@media(max-width:768px){

.nav-links{
display:none;
}

.hero h1{
font-size:3.5rem;
}

.subtitle{
font-size:1rem;
}

h2{
font-size:2.2rem;
}

section{
padding:90px 7%;
}

.menu-item{
font-size:.95rem;
}

.menu-category{
padding:25px;
}

.hero-buttons{
flex-direction:column;
align-items:center;
}

.button{
width:220px;
text-align:center;
}
.contact-btn{
display:inline-block;
padding:16px 28px;
background:#4b3628;
color:white !important;
text-decoration:none;
border-radius:999px;
font-weight:600;
margin:10px;
transition:.3s;
}

.contact-btn:hover{
transform:translateY(-3px);
opacity:.9;
}
}
