:root{--cream:#fbf7f0;--ink:#1f1a14;--olive:#5b6b3a;--ember:#c2562b;--muted:#7a6f62;--line:#e9e1d4}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;scroll-padding-top:80px}
body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;background:var(--cream);color:var(--ink);line-height:1.6}
img{max-width:100%;display:block}a{color:inherit;text-decoration:none}
.wrap{width:min(1120px,92vw);margin:0 auto}
h1,h2,h3,.logo{font-family:Georgia,"Times New Roman",serif;font-weight:700;letter-spacing:-.01em}
.nav{position:sticky;top:0;z-index:20;background:rgba(251,247,240,.92);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
.nav-in{display:flex;justify-content:space-between;align-items:center;height:64px}
.logo{font-size:1.35rem}.logo em{color:var(--ember);font-style:italic}
.menu-links{display:flex;gap:1.5rem;align-items:center;font-size:.95rem}
.pill{background:var(--ember);color:#fff;padding:.5rem 1rem;border-radius:99px;font-weight:600}
.hero{min-height:78vh;display:flex;align-items:center;color:#fff;background:linear-gradient(90deg,rgba(20,14,8,.85) 0%,rgba(20,14,8,.45) 60%,rgba(20,14,8,.2)),url(assets/rest-hero.jpg) center/cover}
.hero-in{padding:5rem 0}
.kicker{display:inline-block;text-transform:uppercase;letter-spacing:.2em;font-size:.75rem;font-weight:700;color:#f3c9a8;margin-bottom:1rem}
.kicker.dark{color:var(--ember)}
.hero h1{font-size:clamp(2.2rem,5vw,3.8rem);line-height:1.08;max-width:14em}
.sub{font-size:1.15rem;max-width:32em;margin:1.2rem 0 2rem;color:#f1e9df}
.actions{display:flex;gap:.8rem;flex-wrap:wrap}
.btn{display:inline-block;background:var(--ember);color:#fff;padding:.85rem 1.5rem;border-radius:99px;font-weight:650;border:2px solid var(--ember);transition:.2s}
.btn:hover{background:#a8461f;border-color:#a8461f}
.btn-line{background:transparent;border-color:rgba(255,255,255,.7)}
.btn-line:hover{background:#fff;color:var(--ink);border-color:#fff}
.btn-sm{padding:.55rem 1.1rem;font-size:.9rem;margin-top:.8rem}
.open-now{margin-top:2rem;display:inline-flex;align-items:center;gap:.5rem;font-size:.9rem;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.25);padding:.4rem .9rem;border-radius:99px}
.open-now::before{content:"";width:8px;height:8px;border-radius:50%;background:#7bd389}
.open-now.closed::before{background:#f87171}
.menu-sec{padding:5rem 0}
.sec-title{text-align:center;max-width:620px;margin:0 auto 2rem}
.sec-title span{color:var(--ember);text-transform:uppercase;letter-spacing:.2em;font-size:.75rem;font-weight:700}
.sec-title h2{font-size:clamp(2rem,4vw,2.8rem);margin:.3rem 0}
.sec-title p{color:var(--muted)}
.tabs{display:flex;justify-content:center;gap:.5rem;flex-wrap:wrap;margin-bottom:2rem}
.tab{font:inherit;border:1px solid var(--line);background:#fff;padding:.6rem 1.1rem;border-radius:99px;cursor:pointer;font-weight:600;color:var(--muted);transition:.2s}
.tab.active,.tab:hover{background:var(--ink);color:#fff;border-color:var(--ink)}
.menu-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 3rem;background:#fff;border:1px solid var(--line);border-radius:20px;padding:1.5rem 2.5rem}
.item{display:flex;justify-content:space-between;gap:1rem;padding:1.1rem 0;border-bottom:1px dashed var(--line)}
.item h4{font-size:1.05rem;font-family:Georgia,serif}
.item p{color:var(--muted);font-size:.9rem}
.item .pr{font-weight:700;color:var(--olive);white-space:nowrap}
.note{text-align:center;color:var(--muted);font-size:.88rem;margin-top:1.2rem}
.about{background:#fff;padding:5rem 0;border-block:1px solid var(--line)}
.about-in{display:grid;grid-template-columns:1fr 1fr;gap:3.5rem;align-items:center}
.about-img img{border-radius:22px;aspect-ratio:4/3;object-fit:cover;box-shadow:0 30px 60px -30px rgba(0,0,0,.4)}
.about h2{font-size:clamp(1.8rem,3.4vw,2.5rem);line-height:1.15;margin:.4rem 0 1rem}
.about p{color:var(--muted)}
.stats{display:flex;gap:2rem;margin-top:2rem;flex-wrap:wrap}
.stats b{display:block;font-size:1.6rem;font-family:Georgia,serif;color:var(--ember)}
.stats span{font-size:.85rem;color:var(--muted)}
.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:4px}
.gallery img{aspect-ratio:4/3;object-fit:cover;width:100%}
.visit{padding:5rem 0}
.visit-in{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}
.card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:1.8rem}
.card h3{font-size:1.4rem;margin-bottom:.8rem}
.card p{margin-bottom:.4rem}
.muted{color:var(--muted);font-size:.9rem}
.strong{font-weight:700;color:var(--ember);font-size:1.1rem}
.hours{list-style:none}
.hours li{display:flex;justify-content:space-between;padding:.5rem 0;border-bottom:1px solid var(--line);font-size:.95rem}
.hours li.today{font-weight:700;color:var(--ember)}
.foot{padding:2rem 0;text-align:center;color:var(--muted);font-size:.85rem;border-top:1px solid var(--line)}
.foot a{text-decoration:underline}
@media(max-width:800px){
  .menu-links a:not(.pill){display:none}
  .menu-grid{grid-template-columns:1fr;padding:.5rem 1.3rem}
  .about-in,.visit-in{grid-template-columns:1fr}
  .gallery img{aspect-ratio:1/1}
  .hero{min-height:70vh}
}
