:root {
  --ink: #360503;
  --paper: #eaeadc;
  --ember: #de3c22;
  --carent: #a94631;
  --aqua: #b0c6c8;
  --smox: #353334;
  --smox-fire: #d36a24;
  --line: rgba(234, 234, 220, .22);
  --muted: #bba9a1;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--ink); color: var(--paper); font-family: "DM Sans", sans-serif; font-size: 16px; line-height: 1.5; }

.nav { position: absolute; z-index: 10; top: 0; left: 0; width: 100%; height: 96px; display: flex; align-items: center; justify-content: space-between; padding: 0 5vw; border-bottom: 1px solid var(--line); }
.wordmark { display: inline-flex; align-items: center; color: inherit; text-decoration: none; line-height: 1; }
.wordmark img { display: block; width: 142px; height: auto; }
.nav nav { display: flex; gap: 2.2rem; }
.nav nav a, .language { color: var(--paper); font: 500 .88rem "DM Sans", sans-serif; text-decoration: none; background: none; border: 0; cursor: pointer; }
.nav nav a { position: relative; }
.nav nav a::after { content: ""; position: absolute; left: 0; bottom: -7px; width: 0; height: 1px; background: var(--ember); transition: .25s; }
.nav nav a:hover::after { width: 100%; }
.nav nav a.active::after { width: 100%; }
.language { border: 1px solid var(--line); border-radius: 99px; padding: .55rem .85rem; }

.home-page .menu { display: none; }
.menu-page .hero, .menu-page .manifesto, .menu-page .brand, .menu-page .principles, .menu-page .visit { display: none; }
.menu-page .nav { position: sticky; background: var(--ink); }
.menu-page .menu { padding-top: 5rem; }

.hero { position: relative; min-height: 760px; height: 100vh; display: flex; align-items: center; overflow: hidden; }
.hero > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.shade { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(24, 0, 0, .96) 0%, rgba(39, 1, 1, .68) 42%, rgba(15, 2, 1, .12) 75%), linear-gradient(0deg, rgba(35, 2, 1, .72), transparent 38%); }
.hero-copy { position: relative; z-index: 2; width: min(790px, 80vw); margin-left: 10vw; padding-top: 80px; }
.eyebrow, .section-number { font-size: .73rem; font-weight: 600; letter-spacing: .22em; text-transform: uppercase; }
.eyebrow { color: #efaa91; }
.hero h1, .manifesto h2, .brand h2, .visit h2 { font-family: "Oswald", sans-serif; text-transform: uppercase; line-height: .95; letter-spacing: -.025em; margin: .75rem 0 1.4rem; }
.hero h1 { font-size: clamp(3.7rem, 7.5vw, 8.4rem); max-width: 1000px; }
.lead { max-width: 560px; font-size: 1.1rem; color: #e1d8d0; }
.button { margin-top: 1.6rem; display: inline-flex; justify-content: space-between; align-items: center; width: 190px; padding: 1rem 1.1rem; color: #fff; background: var(--ember); text-decoration: none; font-weight: 600; transition: transform .2s, background .2s; }
.button:hover { background: #f14a2d; transform: translateY(-2px); }
.vertical { position: absolute; z-index: 2; right: 2.2vw; bottom: 44px; writing-mode: vertical-rl; font-size: .66rem; letter-spacing: .28em; color: #ddd3cb; }

.manifesto { padding: 9rem 7vw; display: grid; grid-template-columns: 1fr 3fr; gap: 3rem; background: var(--paper); color: var(--ink); }
.section-number { color: #7e6b64; margin: 0; }
.manifesto > div { display: grid; grid-template-columns: 1.5fr 1fr; gap: 7vw; align-items: end; }
.manifesto h2 { font-size: clamp(3rem, 5vw, 6rem); margin: 0; }
.manifesto > div > p { font-size: 1.12rem; margin: 0; max-width: 470px; }

.brand { padding: 7rem 7vw 8rem; background: var(--smox); border-top: 1px solid #4a4747; }
.brand-head { display: flex; justify-content: space-between; }
.status { display: flex; gap: .65rem; align-items: center; margin: 0; font-size: .8rem; color: #d5cbc5; }
.status span:first-child { display: block; width: 8px; height: 8px; background: var(--smox-fire); border-radius: 50%; box-shadow: 0 0 0 5px rgba(211, 106, 36, .14); }
.smox-lockup { display: block; width: min(647px, 68vw); height: auto; margin: 4.5rem auto 5rem; }
.brand-grid { display: grid; grid-template-columns: 1.1fr 1fr; gap: 8vw; border-top: 1px solid var(--line); padding-top: 3rem; }
.brand h2 { font-size: clamp(2.8rem, 4.5vw, 5.4rem); }
.brand-copy > p { color: #d1c8c3; font-size: 1.08rem; max-width: 590px; }
.pill-row { display: flex; flex-wrap: wrap; gap: .65rem; margin-top: 2rem; }
.pill-row span { border: 1px solid #656060; border-radius: 99px; padding: .55rem .9rem; font-size: .8rem; }
.menu-link { display: inline-flex; gap: .75rem; margin-top: 2.1rem; color: #fff; text-decoration-color: var(--smox-fire); text-decoration-thickness: 2px; text-underline-offset: 8px; font-weight: 600; }

.baboryani-teaser { display: grid; grid-template-columns: 1.15fr .85fr; min-height: 720px; background: #fcc927; color: #78090a; }
.baboryani-teaser-image { min-height: 720px; overflow: hidden; }
.baboryani-teaser-image img { width: 100%; height: 100%; object-fit: cover; }
.baboryani-teaser-copy { display: flex; flex-direction: column; justify-content: center; align-items: flex-start; padding: 6rem 6vw; }
.nomo-endorsement { margin: 0 0 2rem; color: currentColor; font-size: .7rem; font-weight: 600; letter-spacing: .2em; text-transform: uppercase; }
.baboryani-teaser-logo { width: min(520px, 100%); height: auto; margin-bottom: 2.5rem; }
.baboryani-teaser-copy h2 { font: 600 clamp(3rem, 5.2vw, 6rem)/.94 "Oswald", sans-serif; letter-spacing: -.025em; text-transform: uppercase; margin: 0 0 1.5rem; }
.baboryani-teaser-copy > p:not(.nomo-endorsement) { max-width: 480px; margin: 0; font-size: 1.05rem; }
.baboryani-link { display: inline-flex; justify-content: space-between; gap: 2rem; min-width: 220px; margin-top: 2.2rem; padding: 1rem 1.1rem; background: #78090a; color: #fff; text-decoration: none; font-weight: 600; }

.baboryani-page { --bab-maroon: #78090a; --bab-saffron: #fcc927; --bab-teal: #10787a; --bab-magenta: #c91668; --bab-purple: #5b199a; background: var(--bab-maroon); }
.baboryani-nav { color: #fff; }
.baboryani-hero { position: relative; min-height: 760px; height: 100vh; display: flex; align-items: center; justify-content: flex-end; padding: 8rem 7vw 5rem; overflow: hidden; }
.baboryani-hero > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.baboryani-shade { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(44, 10, 3, .12), rgba(44, 10, 3, .7)); }
.baboryani-hero-card { position: relative; z-index: 2; width: min(560px, 46vw); padding: 3.2rem; background: rgba(255, 248, 229, .94); color: var(--bab-maroon); box-shadow: 0 25px 70px rgba(38, 5, 3, .25); }
.baboryani-hero-card .nomo-endorsement { margin-bottom: 1.8rem; }
.baboryani-hero-card img { display: block; width: 100%; height: auto; }
.baboryani-tagline { margin: 1.8rem 0 0; text-align: center; font-size: .75rem; font-weight: 600; letter-spacing: .2em; text-transform: uppercase; }
.baboryani-story { display: grid; grid-template-columns: 1fr 3fr; gap: 3rem; padding: 9rem 7vw; background: #fff8e5; color: var(--bab-maroon); }
.baboryani-story > div { display: grid; grid-template-columns: 1.45fr 1fr; align-items: end; gap: 7vw; }
.baboryani-story h2 { font: 600 clamp(3.2rem, 5.4vw, 6.4rem)/.94 "Oswald", sans-serif; letter-spacing: -.03em; text-transform: uppercase; margin: 0; }
.baboryani-story > div > p { max-width: 500px; margin: 0; font-size: 1.08rem; }
.baboryani-pillars { display: grid; grid-template-columns: repeat(3, 1fr); color: #fff; }
.baboryani-pillars article { min-height: 350px; padding: 4.5rem 4vw; }
.baboryani-pillars article:nth-child(1) { background: var(--bab-maroon); }
.baboryani-pillars article:nth-child(2) { background: var(--bab-teal); }
.baboryani-pillars article:nth-child(3) { background: var(--bab-purple); }
.baboryani-pillars b { font-size: .7rem; letter-spacing: .2em; }
.baboryani-pillars h3 { font: 600 2.2rem "Oswald", sans-serif; text-transform: uppercase; margin: 5rem 0 1rem; }
.baboryani-pillars p { max-width: 320px; margin: 0; color: rgba(255, 255, 255, .82); }
.baboryani-signoff { padding: 8rem 7vw; background: var(--bab-saffron); color: var(--bab-maroon); text-align: center; }
.baboryani-signoff img { display: block; width: min(560px, 86vw); height: auto; margin: 0 auto 2rem; }
.baboryani-signoff p { font: 600 clamp(2rem, 4vw, 4rem)/1.05 "Oswald", sans-serif; text-transform: uppercase; margin: 0 0 2rem; }
.baboryani-signoff a { display: inline-flex; gap: 1.5rem; padding: 1rem 1.2rem; background: var(--bab-maroon); color: #fff; text-decoration: none; font-weight: 600; }

.menu { padding: 8rem 7vw; background: var(--paper); color: var(--smox); }
.menu-intro { display: grid; grid-template-columns: 1fr 3fr; gap: 3rem; margin-bottom: 5rem; }
.menu-intro > div { display: grid; grid-template-columns: 1.35fr 1fr; column-gap: 7vw; align-items: end; }
.menu-intro .eyebrow { grid-column: 1 / -1; color: var(--carent); margin: 0 0 1rem; }
.menu-intro h2 { font: 600 clamp(3.8rem, 7vw, 8rem)/.9 "Oswald", sans-serif; text-transform: uppercase; letter-spacing: -.035em; margin: 0; }
.menu-intro > div > p:last-child { margin: 0; max-width: 470px; font-size: 1.08rem; }
.menu-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1px; background: rgba(53, 51, 52, .2); border: 1px solid rgba(53, 51, 52, .2); }
.menu-group { background: #f6efe5; padding: 2.4rem; }
.menu-group > header { display: flex; gap: 1.1rem; align-items: flex-start; min-height: 92px; padding-bottom: 1.5rem; border-bottom: 3px solid var(--smox-fire); }
.menu-group > header > span { display: grid; place-items: center; flex: 0 0 38px; width: 38px; height: 38px; border-radius: 50%; background: var(--smox-fire); color: white; font-size: .75rem; font-weight: 600; }
.menu-group h3 { font: 600 clamp(1.7rem, 2.5vw, 2.5rem)/1 "Oswald", sans-serif; text-transform: uppercase; margin: .1rem 0 .45rem; }
.menu-group header p { color: #726b68; margin: 0; font-size: .88rem; }
.menu-item { display: flex; gap: 1.2rem; align-items: flex-start; justify-content: space-between; padding: 1.25rem 0; border-bottom: 1px solid rgba(53, 51, 52, .16); }
.menu-item:last-child { border-bottom: 0; }
.menu-item > div:first-child { min-width: 0; }
.menu-item h4 { font-size: 1rem; line-height: 1.3; margin: 0 0 .35rem; }
.menu-item h4 em { display: inline-block; margin-inline-start: .4rem; padding: .16rem .38rem; border-radius: 2px; background: var(--smox-fire); color: #fff; font: 600 .58rem "DM Sans", sans-serif; letter-spacing: .08em; text-transform: uppercase; vertical-align: .12rem; }
.menu-item p { color: #716b68; font-size: .82rem; line-height: 1.55; margin: 0; }
.menu-item > strong { flex: 0 0 auto; color: var(--smox-fire); font-size: 1.05rem; white-space: nowrap; }
.menu-item > strong small { color: #77706d; font-size: .55rem; letter-spacing: .08em; }
.menu-item > .soon { padding: .3rem .48rem; border: 1px solid var(--smox-fire); border-radius: 2px; font-size: .6rem; letter-spacing: .08em; text-transform: uppercase; }
.dual-price { flex: 0 0 auto; display: flex; gap: .8rem; text-align: center; }
.dual-price span { display: flex; flex-direction: column; color: var(--smox-fire); }
.dual-price small { color: #77706d; font-size: .58rem; white-space: nowrap; }
.dual-price b { font-size: 1.05rem; }
.menu-feature { grid-column: 1 / -1; background: var(--smox); color: #f6efe5; }
.menu-feature > header { border-color: var(--smox-fire); }
.menu-feature header p, .menu-feature .menu-item p { color: #c9bfba; }
.menu-feature .feature-items { display: grid; grid-template-columns: repeat(2, 1fr); gap: 3rem; }
.menu-feature .menu-item { border-color: rgba(255, 255, 255, .16); }
.steak-note { margin: 1.5rem 0 0; color: #c9bfba; font-size: .78rem; letter-spacing: .05em; text-align: center; }
.menu-compact .menu-item { align-items: center; }
.menu-compact .menu-item h4 { margin: 0; }
.menu-footnote { max-width: 760px; margin: 3rem auto 0; color: #716b68; text-align: center; font-size: .82rem; }

.principles { display: grid; grid-template-columns: repeat(3, 1fr); background: var(--ember); color: white; }
.principles article { padding: 5rem 4vw; min-height: 340px; border-right: 1px solid rgba(255, 255, 255, .25); }
.principles b { font-size: .7rem; letter-spacing: .18em; }
.principles h3 { font: 600 2rem "Oswald", sans-serif; text-transform: uppercase; margin: 5rem 0 1rem; }
.principles p { max-width: 310px; margin: 0; color: #ffe4dc; }

.visit { padding: 9rem 7vw; text-align: center; background: linear-gradient(135deg, #4a0b08, var(--ink)); }
.visit h2 { font-size: clamp(3.4rem, 7vw, 8rem); }
.location-grid { width: min(980px, 100%); margin: 4rem auto 0; display: grid; grid-template-columns: repeat(2, 1fr); gap: 1px; background: var(--line); text-align: left; }
.location-card { background: var(--ink); padding: 2.2rem 2.4rem; min-height: 230px; }
.location-card.upcoming { background: #480b08; }
.location-card h3 { font: 500 clamp(3rem, 6vw, 5.6rem)/1 "Oswald", sans-serif; text-transform: uppercase; margin: 3.2rem 0 .65rem; }
.location-card > p:last-child { margin: 0; color: #cfbeb5; }
.location-state { display: flex; align-items: center; gap: .65rem; margin: 0; color: #eaded7; font-size: .78rem; text-transform: uppercase; letter-spacing: .18em; }
.location-state > span:first-child { width: 8px; height: 8px; border-radius: 50%; background: var(--ember); box-shadow: 0 0 0 5px rgba(222, 60, 34, .15); }
.upcoming .location-state > span:first-child { background: var(--aqua); box-shadow: 0 0 0 5px rgba(176, 198, 200, .12); }

footer { min-height: 150px; padding: 2.5rem 5vw; display: flex; align-items: center; justify-content: space-between; border-top: 1px solid var(--line); font-size: .78rem; color: var(--muted); }
footer .wordmark img { width: 118px; }

[dir="rtl"] body { font-family: "Noto Kufi Arabic", sans-serif; }
[dir="rtl"] .hero-copy { margin-left: 0; margin-right: 10vw; }
[dir="rtl"] .hero h1, [dir="rtl"] .manifesto h2, [dir="rtl"] .brand h2, [dir="rtl"] .visit h2, [dir="rtl"] .location-card h3 { font-family: "Noto Kufi Arabic", sans-serif; line-height: 1.22; letter-spacing: 0; }
[dir="rtl"] .shade { background: linear-gradient(270deg, rgba(24, 0, 0, .96) 0%, rgba(39, 1, 1, .68) 42%, rgba(15, 2, 1, .12) 75%), linear-gradient(0deg, rgba(35, 2, 1, .72), transparent 38%); }
[dir="rtl"] .vertical { right: auto; left: 2.2vw; }
[dir="rtl"] .wordmark { direction: ltr; }
[dir="rtl"] .location-grid { text-align: right; }
[dir="rtl"] .menu-intro h2, [dir="rtl"] .menu-group h3 { font-family: "Noto Kufi Arabic", sans-serif; letter-spacing: 0; line-height: 1.25; }
[dir="rtl"] .dual-price { direction: rtl; }
[dir="rtl"] .baboryani-teaser-copy h2, [dir="rtl"] .baboryani-story h2, [dir="rtl"] .baboryani-pillars h3, [dir="rtl"] .baboryani-signoff p { font-family: "Noto Kufi Arabic", sans-serif; letter-spacing: 0; line-height: 1.3; }

@media (max-width: 800px) {
  .nav { height: 76px; padding: 0 1.2rem; }
  .wordmark img { width: 120px; }
  .nav nav { display: none; }
  .hero { min-height: 700px; }
  .hero > img { object-position: 62% center; }
  .shade { background: linear-gradient(90deg, rgba(36, 0, 0, .9), rgba(36, 0, 0, .38)), linear-gradient(0deg, rgba(40, 1, 1, .84), transparent 60%); }
  .hero-copy { margin: 0 1.4rem; width: auto; padding-top: 90px; }
  .hero h1 { font-size: clamp(3.3rem, 15vw, 5.5rem); }
  .lead { font-size: 1rem; max-width: 90%; }
  .vertical { display: none; }
  .manifesto { padding: 6rem 1.4rem; display: block; }
  .manifesto > div { display: block; }
  .manifesto h2 { margin: 2rem 0; }
  .brand { padding: 5rem 1.4rem; }
  .smox-lockup { width: min(440px, 86vw); margin: 3.5rem auto 4rem; }
  .brand-grid { display: block; }
  .brand-copy { margin-top: 3rem; }
  .baboryani-teaser { grid-template-columns: 1fr; }
  .baboryani-teaser-image { min-height: 430px; }
  .baboryani-teaser-copy { padding: 5rem 1.4rem; }
  .baboryani-teaser-logo { width: min(480px, 100%); }
  .baboryani-hero { min-height: 760px; justify-content: center; align-items: flex-end; padding: 7rem 1.2rem 2rem; }
  .baboryani-hero > img { object-position: 43% center; }
  .baboryani-shade { background: linear-gradient(0deg, rgba(44, 10, 3, .78), rgba(44, 10, 3, .05)); }
  .baboryani-hero-card { width: 100%; padding: 2rem 1.5rem; }
  .baboryani-story { display: block; padding: 6rem 1.4rem; }
  .baboryani-story > div { display: block; }
  .baboryani-story h2 { margin: 2rem 0; }
  .baboryani-pillars { grid-template-columns: 1fr; }
  .baboryani-pillars article { min-height: auto; padding: 4rem 1.4rem; }
  .baboryani-pillars h3 { margin-top: 3rem; }
  .baboryani-signoff { padding: 6rem 1.4rem; }
  .menu { padding: 6rem 1.4rem; }
  .menu-intro { display: block; margin-bottom: 3rem; }
  .menu-intro > div { display: block; }
  .menu-intro .eyebrow { margin: 1.5rem 0 .8rem; }
  .menu-intro h2 { margin-bottom: 1.5rem; }
  .menu-grid { grid-template-columns: 1fr; }
  .menu-group { padding: 1.6rem 1.3rem; }
  .menu-feature { grid-column: auto; }
  .menu-feature .feature-items { grid-template-columns: 1fr; gap: 0; }
  .menu-item { gap: .8rem; }
  .menu-item p { font-size: .78rem; }
  .dual-price { gap: .55rem; }
  .principles { grid-template-columns: 1fr; }
  .principles article { min-height: auto; padding: 4rem 1.4rem; border-right: 0; border-bottom: 1px solid rgba(255, 255, 255, .25); }
  .principles h3 { margin: 3rem 0 1rem; }
  .visit { padding: 7rem 1.4rem; }
  .location-grid { grid-template-columns: 1fr; }
  .location-card { min-height: 205px; padding: 2rem 1.5rem; }
  .location-card h3 { margin-top: 2.5rem; }
  footer { align-items: flex-start; gap: 2rem; flex-direction: column; }
  [dir="rtl"] .hero-copy { margin: 0 1.4rem; }
}
