
*{box-sizing:border-box}html,body{margin:0;padding:0}
:root{
  --latte:#f4ece6;--cream:#fff8f1;--caramel:#c57b57;--mocha:#6b4423;--charcoal:#1f1b16;
  --radius:18px;--shadow:0 10px 30px rgba(31,27,22,.08)
}
body{font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;background:var(--latte);color:var(--charcoal);line-height:1.6}
.container{width:min(1120px,92vw);margin:0 auto}
.site-header{position:sticky;top:0;z-index:40;background:rgba(255,248,241,.85);backdrop-filter:blur(8px);border-bottom:1px solid #eadfd7}
.nav{display:flex;align-items:center;justify-content:space-between;padding:14px 0}
.brand{display:flex;gap:12px;align-items:center}
.brand img{width:44px;height:44px;border-radius:12px}
.brand .title{font-weight:800;color:var(--mocha)}
.brand .tag{font-size:12px;opacity:.85;margin-top:-2px}
nav a{color:var(--charcoal);text-decoration:none;font-weight:600;padding:10px 14px;border-radius:10px}
nav a:hover{background:#efe6de}
nav .btn-cta{background:var(--mocha);color:#fff}
.hero{display:grid;grid-template-columns:1.2fr 1fr;gap:40px;padding:58px 0 28px}
h1{font-size:clamp(34px,5vw,56px);margin:0 0 10px}
.lead{font-size:clamp(16px,2.3vw,20px);opacity:.9}
.hero .image{overflow:hidden;border-radius:var(--radius);box-shadow:var(--shadow)}
.hero img{width:100%;display:block}
.btn{display:inline-flex;gap:10px;align-items:center;justify-content:center;padding:12px 18px;border-radius:999px;border:1px solid #e2d7cf;background:#fff;text-decoration:none;color:var(--charcoal);box-shadow:var(--shadow)}
.btn:hover{transform:translateY(-1px)}
.btn.primary{background:var(--caramel);color:#fff;border-color:transparent}
.btn.dark{background:var(--mocha);color:#fff;border-color:transparent}
.section{padding:44px 0}
.section h2{font-size:clamp(26px,3.5vw,36px);margin:0 0 8px}
.sub{color:#5a4a40;margin-bottom:18px}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.card{background:#fff;border-radius:var(--radius);padding:16px;box-shadow:var(--shadow)}
.card img{width:100%;border-radius:12px}
.price{color:var(--mocha);font-weight:800}
.badge{display:inline-block;padding:4px 10px;border-radius:999px;background:#fff1e8;color:#6b4423;font-size:12px}
.footer{margin-top:36px;padding:30px 0;color:#5a4a40;font-size:14px}
hr.sep{border:0;height:1px;background:#eadfd7;margin:20px 0;border-radius:2px}
/* Menu */
.controls{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}
.filter{padding:8px 12px;border-radius:999px;border:1px solid #e2d7cf;background:#fff;cursor:pointer}
.filter.active{background:var(--mocha);color:#fff;border-color:transparent}
.menu-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.menu-item{background:#fff;border-radius:var(--radius);padding:14px;box-shadow:var(--shadow)}
.menu-item h3{margin:10px 0 4px}
.menu-item .meta{display:flex;justify-content:space-between;color:#6b4423;font-weight:700}
/* Gallery */
.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.gallery a{display:block;border-radius:14px;overflow:hidden}
.gallery img{width:100%;display:block;transition:transform .25s} .gallery a:hover img{transform:scale(1.02)}
.lightbox{position:fixed;inset:0;background:rgba(0,0,0,.85);display:none;align-items:center;justify-content:center;z-index:60}
.lightbox img{max-width:92vw;max-height:86vh;border-radius:16px}
.lightbox.show{display:flex}
/* CTA band */
.cta-band{background:linear-gradient(135deg,#6b4423,#c57b57);color:#fff;border-radius:var(--radius);padding:22px;box-shadow:var(--shadow);display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
/* Responsive */
@media (max-width:960px){.hero{grid-template-columns:1fr}.grid-3,.menu-grid,.gallery{grid-template-columns:1fr 1fr}}
@media (max-width:600px){.grid-3,.menu-grid,.gallery{grid-template-columns:1fr}}
.hide{display:none!important}
