
:root{
  --cream:#fffaf3;
  --accent:#e11d21; /* primary red for CTA */
  --accent-contrast:#ffffff;
  --text:#111827;
  --muted:#6b7280;
  --ring:rgba(225,29,33,.28);
  --radius:18px;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{
  font-family: system-ui, -apple-system, "Segoe UI", Roboto, Arial, "Noto Sans", "Liberation Sans", sans-serif;
  color: var(--text);
  background: white;
}
/* Header */
header{
  background: white;
  border-bottom: 1px solid #f1f1f1;
}
.container{max-width: 980px; margin: 0 auto; padding: 20px;}

/* Brand row */
.brand{display:flex;align-items:center;justify-content:space-between;gap:16px}
.brand .left{display:flex;align-items:center;gap:16px}
.brand img{height:58px;width:auto}
.actions{display:flex;gap:10px;flex-wrap:wrap}

/* Buttons */
.btn{display:inline-block;text-decoration:none;border-radius:999px;padding:12px 18px;font-weight:700;border:1px solid #e5e7eb;background:#fff;color:var(--text)}
.btn:hover{box-shadow:0 8px 16px rgba(0,0,0,.05)}
.btn-primary{background:var(--accent);color:var(--accent-contrast);border-color:transparent;box-shadow:0 10px 22px var(--ring)}
.btn-primary:hover{transform:translateY(-1px); box-shadow:0 14px 26px var(--ring)}
.btn-phone{font-weight:700}

/* Hero */
.hero{
  position:relative;
  height:min(56vh,520px);
  min-height:300px;
  display:grid;
  place-items:center;
  overflow:hidden;
  border-bottom:1px solid #eee;
}
.hero img{
  position:absolute; inset:0; width:100%; height:100%; object-fit:cover;
  filter:saturate(1) contrast(1.05);
}
.hero::after{
  content:""; position:absolute; inset:0;
  background: radial-gradient(circle at 50% 20%, rgba(255,255,255,.05), rgba(0,0,0,.25)),
              linear-gradient(180deg, rgba(0,0,0,.20), rgba(0,0,0,.55));
}
.hero .content{
  position:relative; z-index:1; color:#fff; text-align:center; padding: 0 16px;
}
.hero h1{ font-size: clamp(28px, 4.8vw, 44px); margin:.2rem 0 .4rem }
.hero p{ font-size: clamp(16px, 2.2vw, 20px); margin:0 auto 14px; max-width: 720px }
.hero .cta{ display:flex; gap:12px; justify-content:center; flex-wrap:wrap }

/* Info block under hero */
.info{background: linear-gradient(180deg, var(--cream), #fff); border-bottom:1px solid #eee}
.info-grid{
  display:grid; grid-template-columns: 1fr; gap:16px; align-items:start;
}
.info-card{
  background:#fff; border:1px solid #eee; border-radius:12px; padding:16px;
}
.info-title{font-weight:800; margin:0 0 6px}
.hours{display:grid; grid-template-columns: max-content 1fr; column-gap:16px; row-gap:6px; font-variant-numeric: tabular-nums}
.small{font-size:13px; color:var(--muted)}

@media(min-width:860px){
  .info-grid{ grid-template-columns: 1.2fr .8fr; }
}
/* Menu */
.section{padding: 22px 0}
.menu-grid{display:grid;grid-template-columns:1fr;gap:16px}
.menu-grid img{width:100%;height:auto;border:1px solid #e5e7eb;border-radius:12px;background:#fff}
@media(min-width:860px){.menu-grid{grid-template-columns:1fr 1fr}}

footer{border-top:1px solid #eee;background:#fafafa;color:var(--muted)}
footer .container{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}
