:root{
  --bg:#1b0d05;
  --bg-2:#2a1409;
  --wood:#7a3517;
  --gold:#e58b32;
  --gold-light:#ffd07a;
  --cream:#fff3e0;
  --text:#f6e2c4;
  --muted:#c9a37a;
}
*{box-sizing:border-box;margin:0;padding:0}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
html{scroll-behavior:smooth}
body{
  font-family:'Montserrat',sans-serif;
  color:var(--text);
  background:var(--bg);
  line-height:1.6;
  overflow-x:hidden;
}
h1,h2,h3{font-family:'Playfair Display',serif;color:var(--gold-light);font-weight:700}
a{color:var(--gold-light);text-decoration:none}
img,svg{max-width:100%;display:block}

/* NAV */
header{
  position:sticky;top:0;z-index:50;
  background:rgba(27,13,5,.92);
  backdrop-filter:blur(8px);
  border-bottom:1px solid rgba(229,139,50,.25);
}
.nav{
  max-width:1200px;margin:auto;
  display:flex;justify-content:space-between;align-items:center;
  padding:14px 24px;
}
.brand{display:flex;align-items:center;gap:12px}
.brand img{height:50px;width:auto}
.brand-name{font-family:'Playfair Display',serif;font-size:22px;color:var(--gold-light)}
.menu-links{display:flex;gap:28px}
.menu-links a{font-weight:600;font-size:14px;letter-spacing:1px;text-transform:uppercase;color:var(--text)}
.menu-links a:hover,.menu-links a.active{color:var(--gold-light)}
.burger{display:none;background:none;border:0;color:var(--gold-light);font-size:28px;cursor:pointer}

/* HERO */
.hero{
  min-height:92vh;
  display:flex;align-items:center;justify-content:center;
  text-align:center;padding:80px 20px;
  background:url('images/main.jpg') center center / cover no-repeat;
  position:relative;overflow:hidden;
}
.hero::after{
  content:"";position:absolute;inset:0;
  background:rgba(15,6,2,.62);
  z-index:0;
}
.hero-content{position:relative;z-index:1}
.hero-content{position:relative;z-index:1;max-width:900px}
.hero img{margin:auto;max-width:420px;width:80%;filter:drop-shadow(0 20px 40px rgba(0,0,0,.5))}
.hero h1{font-size:clamp(2.4rem,5vw,4.2rem);margin-top:20px}
.hero p{margin-top:20px;font-size:clamp(1rem,1.6vw,1.25rem);color:var(--muted)}

/* PAGE HERO (menu page) */
.page-hero{
  text-align:center;padding:90px 20px 30px;
  background:radial-gradient(ellipse at top,#3a1a09,#1b0d05);
  display:flex;flex-direction:column;align-items:center;
}
.page-hero h1{font-size:clamp(2.4rem,5vw,3.6rem)}
.page-hero p{color:var(--muted);max-width:600px;margin:14px auto 0}

.cta{
  display:inline-block;margin-top:35px;
  background:linear-gradient(135deg,var(--gold-light),var(--gold));
  color:#3b1709;font-weight:700;letter-spacing:1px;
  padding:16px 40px;border-radius:50px;text-transform:uppercase;font-size:14px;
  box-shadow:0 10px 30px rgba(229,139,50,.35);
  transition:transform .25s ease, box-shadow .25s ease;
  border:none;cursor:pointer;font-family:inherit;
}
.cta:hover{transform:translateY(-3px);box-shadow:0 14px 36px rgba(229,139,50,.5)}

/* SECTIONS */
section{padding:80px 24px}
section.alt{background:var(--bg-2)}
.container{max-width:1200px;margin:auto}
.section-title{text-align:center;margin-bottom:50px}
.section-title h2{font-size:clamp(2rem,3.4vw,2.8rem)}
.section-title p{color:var(--muted);margin-top:10px}
.divider{display:flex;align-items:center;justify-content:center;gap:14px;margin:14px auto 0}
.divider span{height:2px;width:60px;background:var(--gold)}
.divider i{width:10px;height:10px;border-radius:50%;background:var(--gold-light);display:inline-block}

/* TABS */
.tabs{
  display:flex;flex-wrap:wrap;justify-content:center;gap:10px;
  padding:14px;border-radius:50px;
  background:var(--bg-2);border:1px solid rgba(229,139,50,.2);
}
.tabs a{
  padding:10px 20px;border-radius:30px;font-size:13px;font-weight:600;
  text-transform:uppercase;letter-spacing:1px;color:var(--text);
  transition:.25s;
}
.tabs a:hover,.tabs a.active{background:var(--gold);color:#1b0d05}

/* ABOUT */
.about{background:var(--bg-2)}
.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}
.about-grid img{border-radius:18px;box-shadow:0 20px 40px rgba(0,0,0,.4)}
.about p{margin-bottom:14px;color:var(--text)}

/* MENU CARDS */
.menu-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:24px}
.menu-card{
  background:linear-gradient(160deg,#3a1a09,#1f0d05);
  border:1px solid rgba(229,139,50,.2);
  border-radius:18px;padding:28px;
  transition:transform .3s ease,border-color .3s ease;
}
.menu-card:hover{transform:translateY(-6px);border-color:var(--gold)}
.menu-card h3{font-size:1.3rem;margin-bottom:8px}
.menu-card .price{color:var(--gold-light);font-weight:700;font-size:1.1rem;margin-top:10px;display:block}
.menu-card p{color:var(--muted);font-size:.95rem}

/* FEATURES */
.features{background:var(--bg-2)}
.feat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;text-align:center}
.feat{
  padding:30px 20px;border-radius:14px;
  background:rgba(229,139,50,.06);
  border:1px solid rgba(229,139,50,.15);
}
.feat .ic{font-size:40px;margin-bottom:10px;display:flex;justify-content:center;align-items:center}
.feat h3{font-size:1.2rem;margin-bottom:8px}
.feat p{color:var(--muted);font-size:.9rem}

/* CONTACT */
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px}
.contact-info p{margin-bottom:14px;display:flex;align-items:center;gap:12px}
.contact-info span{color:var(--gold-light);font-size:22px}
form{display:flex;flex-direction:column;gap:14px}
input,textarea{
  background:#2a1409;border:1px solid rgba(229,139,50,.3);
  color:var(--text);padding:14px 16px;border-radius:10px;font-family:inherit;font-size:1rem;
}
input:focus,textarea:focus{outline:none;border-color:var(--gold)}
textarea{min-height:140px;resize:vertical}

/* FOOTER */
footer{
  background:#120903;text-align:center;padding:40px 20px;
  border-top:1px solid rgba(229,139,50,.2);color:var(--muted);font-size:.9rem;
}
.socials{display:flex;justify-content:center;gap:18px;margin-bottom:16px}
.socials a{
  width:42px;height:42px;border-radius:50%;
  background:rgba(229,139,50,.1);
  display:flex;align-items:center;justify-content:center;
  color:var(--gold-light);font-size:18px;transition:.25s;
}
.socials a:hover{background:var(--gold);color:#1b0d05;transform:translateY(-3px)}

/* RESPONSIVE */
@media (max-width:900px){
  .feat-grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:800px){
  .menu-links{display:none;flex-direction:column;position:absolute;top:78px;right:24px;background:#2a1409;padding:20px 30px;border-radius:14px;border:1px solid rgba(229,139,50,.2)}
  .menu-links.open{display:flex}
  .burger{display:block}
  .about-grid,.contact-grid{grid-template-columns:1fr}
}
@media (max-width:480px){
  .feat-grid{grid-template-columns:1fr}
}