
*{box-sizing:border-box}
body{
  margin:0;
  font-family:Arial, sans-serif;
  background:#faf4ef;
  color:#2b1a15;
}
a{text-decoration:none;color:inherit}
.container{
  width:min(1100px, calc(100% - 32px));
  margin:0 auto;
}
.site-header{
  background:#fff9f4;
  border-bottom:1px solid #eadbcd;
  position:sticky;
  top:0;
  z-index:10;
}
.topbar{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:20px;
  padding:16px 0;
}
.brand{
  font-weight:700;
  color:#5a3426;
}
.nav{
  display:flex;
  gap:18px;
  flex-wrap:wrap;
}
.nav a{color:#6c5648}
.hero{
  padding:56px 0 34px;
}
.hero-wrap{
  display:grid;
  grid-template-columns:1.1fr .9fr;
  gap:28px;
  align-items:center;
}
.eyebrow{
  text-transform:uppercase;
  letter-spacing:.16em;
  color:#b98542;
  font-size:.78rem;
  font-weight:700;
  margin:0 0 10px;
}
h1,h2{
  font-family:Georgia, serif;
  line-height:1.05;
  margin:0 0 14px;
}
h1{font-size:clamp(2.2rem,4.8vw,4.2rem)}
h2{font-size:clamp(1.8rem,3.8vw,2.6rem)}
.lead{
  color:#6c5648;
  max-width:600px;
}
.hero-buttons{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  margin-top:22px;
}
.btn{
  display:inline-block;
  padding:13px 18px;
  border-radius:999px;
  font-weight:700;
}
.primary{background:#5a3426;color:#fff}
.secondary{background:#fff;border:1px solid #e4d4c6;color:#5a3426}
.hero-logo{
  background:#fffaf6;
  border:1px solid #eadbcd;
  border-radius:24px;
  padding:24px;
  box-shadow:0 12px 30px rgba(66,39,24,.08);
}
.hero-logo img{
  width:100%;
  max-width:360px;
  max-height:260px;
  object-fit:contain;
  margin:0 auto;
}
.section{padding:56px 0}
.alt{background:#fffaf6}
.content-box,.contact-box{
  background:#fff;
  border:1px solid #eadbcd;
  border-radius:22px;
  padding:28px;
  box-shadow:0 10px 26px rgba(66,39,24,.06);
}
.menu-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0,1fr));
  gap:14px;
  margin-top:18px;
}
.menu-item{
  display:flex;
  justify-content:space-between;
  gap:14px;
  background:#fff;
  border:1px solid #eadbcd;
  border-radius:16px;
  padding:14px 16px;
}
.menu-item span{color:#5a3426;font-weight:700}
.dessert-line{
  margin-top:18px;
  color:#6c5648;
}
.gallery-heading{
  text-align:center;
  margin-bottom:18px;
}
.gallery-heading p{
  color:#6c5648;
  margin:0;
}
.gallery-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(180px, 1fr));
  gap:16px;
  align-items:start;
}
.gallery-card{
  margin:0;
  background:#fff;
  border:1px solid #eadbcd;
  border-radius:18px;
  padding:10px;
  box-shadow:0 8px 22px rgba(66,39,24,.06);
}
.gallery-card img{
  width:100%;
  height:170px;
  object-fit:cover;
  border-radius:12px;
  display:block;
}
.contact-box{
  text-align:center;
}
.pay-row{
  display:flex;
  justify-content:center;
  gap:12px;
  flex-wrap:wrap;
  margin-top:18px;
}
.pay{
  display:inline-block;
  padding:12px 18px;
  color:#fff;
  border-radius:10px;
  font-weight:700;
}
.cash{background:#00C244}
.venmo{background:#3D95CE}
@media (max-width: 820px){
  .hero-wrap,.menu-grid{
    grid-template-columns:1fr;
  }
}
@media (max-width: 640px){
  .nav{display:none}
  .gallery-grid{
    grid-template-columns:repeat(2, minmax(0,1fr));
  }
  .gallery-card img{
    height:135px;
  }
}
