:root{
  --bg:#fffaf0; --ink:#2b2013; --muted:#6f5d3f;
  --primary:#b7791f; --primary-dark:#8f5e15; --accent:#f2b705;
  --card:#ffffff; --line:#eadfc3;
  --font-display:"Anton",sans-serif; --font-body:"Inter",system-ui,sans-serif;
}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font-body);line-height:1.55}
a{color:var(--primary)}
.site-header{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.7rem 1.2rem;background:#fffdf6;border-bottom:1px solid var(--line)}
.logo{display:flex;align-items:center;gap:.55rem;text-decoration:none;color:var(--ink)}
.logo-badge{display:inline-flex;align-items:center;justify-content:center;width:2.3rem;height:2.3rem;border-radius:50%;background:var(--primary);color:#fff;font-family:var(--font-display);font-size:1.25rem}
.logo-text{font-family:var(--font-display);font-size:1.3rem;letter-spacing:.02em}
.site-header nav{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}
.site-header nav a{text-decoration:none;font-weight:600}
.btn{display:inline-block;padding:.6rem 1.1rem;border-radius:999px;border:1px solid var(--primary);color:var(--primary);text-decoration:none;font-weight:700;background:transparent}
.btn-primary{background:var(--primary);color:#fff}
.btn-primary:hover{background:var(--primary-dark)}
.btn-ghost{border-color:var(--line);color:var(--ink);background:#fff}
main{max-width:1120px;margin:0 auto;padding:0 1.2rem 3rem}
.hero{display:grid;grid-template-columns:1.15fr .85fr;gap:2rem;align-items:center;padding:2.5rem 0 1.5rem}
.hero h1{font-family:var(--font-display);font-size:3.2rem;margin:.2rem 0;letter-spacing:.01em}
.tagline{font-size:1.25rem;font-weight:600}
.cta-row{display:flex;gap:.6rem;flex-wrap:wrap;margin:.8rem 0}
.hero-photos{display:grid;grid-template-columns:1fr 1fr;gap:.6rem}
.hero-photos img{width:100%;height:180px;object-fit:cover;border-radius:14px}
.hero-photos img:first-child{grid-column:1/-1;height:220px}
.menu h2,.locations h2,.contact h2{font-family:var(--font-display);font-size:2rem;margin:2.2rem 0 .6rem}
.menu-note{color:var(--muted)}
.cat-nav ul{display:flex;flex-wrap:wrap;gap:.45rem;list-style:none;padding:0;margin:1rem 0}
.cat-nav a{display:inline-block;padding:.35rem .8rem;border:1px solid var(--line);border-radius:999px;background:#fff;text-decoration:none;font-size:.9rem;font-weight:600}
.cat{margin:2rem 0}
.cat h2{font-size:1.5rem;border-bottom:2px solid var(--accent);padding-bottom:.3rem}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:.9rem}
.item{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:.9rem 1rem}
.item-head{display:flex;justify-content:space-between;gap:.8rem;align-items:baseline}
.item h3{margin:0;font-size:1rem}
.price{font-weight:700;color:var(--primary);white-space:nowrap}
.item p{margin:.4rem 0 0;color:var(--muted);font-size:.92rem}
.loc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:1rem}
.loc{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:1.1rem 1.2rem}
.loc h3{margin-top:0}
.addr{font-weight:700}
.contact p{margin:.35rem 0}
footer{border-top:1px solid var(--line);padding:1.2rem;text-align:center;color:var(--muted);font-size:.9rem}
@media (max-width:760px){.hero{grid-template-columns:1fr}.hero h1{font-size:2.4rem}}
