:root {
  --brand-beige:  #dace9d;
  --brand-orange: #7f3f1a;
  --brand-olive:  #b3a263;
  --white: #ffffff;
  --black: #000000;
}
html, body { margin:0; padding:0;
  font-family: system-ui, -apple-system, Segoe UI, Roboto, "Vazirmatn", Arial, sans-serif;
  color: var(--black); background: var(--brand-beige); line-height: 1.5; }
[dir="rtl"] { font-family: "Vazirmatn", system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif; }

.topbar { position: sticky; top:0; z-index:100; display:flex; align-items:center; justify-content:space-between; gap:1rem;
  padding:.75rem 1rem; background: var(--white); border-bottom: 1px solid rgba(0,0,0,.08); }
.brand { display:flex; align-items:center; gap:.5rem; }
.brand-name { font-weight:700; color: var(--brand-olive); letter-spacing:.5px; }
.logo { width:40px; height:40px; object-fit:contain; }
.logo.small { width:28px; height:28px; }

.nav a { margin:0 .5rem; text-decoration:none; color: var(--brand-olive); font-weight:700; }
.nav a:hover { color: var(--brand-orange); }

.lang-switch { display:flex; gap:.25rem; }
.lang-btn { border:1px solid rgba(0,0,0,.08); background: var(--white);
  padding:.35rem .6rem; border-radius:.375rem; cursor:pointer; font-weight:700; color: var(--brand-olive); }
.lang-btn[aria-pressed="true"] { border-color: var(--brand-olive); box-shadow: inset 0 0 0 1px var(--brand-olive); }

.container { max-width: 1100px; margin: 0 auto; padding: 1rem; }
.container-slim { max-width: 900px; margin: 0 auto; padding: 1rem; }

.status { margin-top: 1rem; }
.status-card { background: var(--white); border:1px solid rgba(0,0,0,.06); border-radius:.75rem; padding:1rem; }
.status-card h1 { margin:.25rem 0 .5rem; color: var(--brand-orange); }

/* BIG centered logo */
.logo-hero { text-align:center; margin: 2rem 0 1rem; }
.logo-hero .logo-big { max-width: 60%; height:auto; }
.logo-hero .brandline { margin-top: 1rem; font-size: 1.15rem; font-weight: 700; color: var(--brand-orange); }
@media (max-width: 600px) { .logo-hero .logo-big { max-width: 90%; } }

.hero { padding: 1rem 0 0; }
.hero-grid { display:grid; grid-template-columns: 1.1fr .9fr; gap:1rem; }
.hero-info .restaurant-name { font-size: 2rem; margin:.25rem 0; color: var(--brand-olive); }
.tagline { margin-top:0; color: var(--brand-orange); }

.contact-block { background: var(--white); border:1px solid rgba(0,0,0,.06); border-radius:.75rem; padding:.75rem; margin-top:.5rem; }
.contact-block h3 { margin:0 0 .5rem; color: var(--brand-olive); }

.quick-links { display:flex; gap:.5rem; margin-top:.75rem; }
.btn { display:inline-block; border:1px solid var(--brand-olive); background: var(--brand-olive); color: var(--white);
  padding:.6rem .9rem; border-radius:.5rem; text-decoration:none; font-weight:800; }
.btn.outline { background:transparent; color: var(--brand-olive); }

.hero-map iframe { width:100%; min-height:320px; border:0; border-radius:.75rem; background: var(--brand-beige); }

.menu-preview, .contact { margin-top:1.25rem; }
.contact-form { display:grid; grid-template-columns: 1fr auto; gap:.5rem; align-items:center; }
.contact-form label { grid-column: 1 / -1; font-weight:700; color: var(--brand-olive); }
.contact-form input { border:1px solid rgba(0,0,0,.12); border-radius:.5rem; padding:.6rem .75rem; font-size:1rem; background: var(--white); }
.form-hint { grid-column: 1 / -1; color: var(--brand-orange); font-size:.9rem; }
.contact-form.urgent { grid-template-columns: 1fr 1fr; }
.contact-form.urgent label, .contact-form.urgent #urgent_status, .contact-form.urgent #urgent_hint { grid-column: 1 / -1; }
.contact-form.urgent input { width:100%; }
.contact.inner { padding: 0; }

.footer { margin-top:2rem; padding:1rem; border-top:1px solid rgba(0,0,0,.06); background: var(--white); }
.footer-inner { max-width:1100px; margin:0 auto; display:flex; align-items:center; gap:.5rem; color: var(--brand-olive); }
.footer .sep { opacity:.6; }

@media (max-width: 900px) { .hero-grid { grid-template-columns:1fr; } }
[dir="rtl"] .nav a { margin:0 0 0 .5rem; }
[dir="rtl"] .quick-links { flex-direction: row-reverse; }
