:root{
  --ink:#18120f;
  --ink-2:#241b16;
  --paper:#efe6d6;
  --paper-2:#d9c8b0;
  --burgundy:#69271f;
  --olive:#676549;
  --brass:#a7804d;
  --white:#fbf7ef;
  --line:rgba(24,18,15,.18);
  --serif:Georgia,'Times New Roman',serif;
  --sans:Arial,Helvetica,sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--ink)}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);overflow-x:hidden}
a{color:inherit;text-decoration:none}
img{display:block;width:100%;height:100%;object-fit:cover}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip{position:fixed;z-index:1000;left:12px;top:12px;background:var(--white);padding:10px 14px;transform:translateY(-200%)}
.skip:focus{transform:none}
.nav{position:fixed;z-index:100;top:0;left:0;right:0;height:76px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 3.2vw;color:var(--white);border-bottom:1px solid rgba(255,255,255,.16);transition:background .3s,color .3s,border-color .3s}
.nav.scrolled{background:rgba(239,230,214,.96);color:var(--ink);border-color:var(--line);backdrop-filter:blur(12px)}
.brand{display:inline-flex;flex-direction:column;line-height:.82;letter-spacing:.04em;font-weight:800;width:max-content}
.brand-main{font-size:19px}.brand-sub{font-size:9px;letter-spacing:.32em;margin-top:7px}
.nav-links{display:flex;gap:34px;font-size:10px;text-transform:uppercase;letter-spacing:.16em}
.nav-cta{justify-self:end;text-transform:uppercase;font-size:10px;letter-spacing:.16em;border-bottom:1px solid currentColor;padding:10px 0}
.hero{min-height:100svh;background:var(--ink);color:var(--white);position:relative;display:grid;grid-template-columns:46% 54%;overflow:hidden}
.hero:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(24,18,15,.88) 0%,rgba(24,18,15,.45) 38%,rgba(24,18,15,.02) 66%)}
.hero-copy{position:relative;z-index:4;align-self:end;padding:0 3vw 9vh 5vw;max-width:760px}
.eyebrow,.section-kicker{font-size:9px;letter-spacing:.25em;text-transform:uppercase;font-weight:700}
.hero h1{font:700 clamp(56px,7.4vw,118px)/.78 var(--serif);letter-spacing:-.065em;margin:22px 0 30px;text-transform:uppercase}
.hero h1 span{display:block}.hero h1 .accent{font-style:italic;font-weight:400;color:#e2c1a2;margin-left:7vw}
.hero-deck{max-width:410px;color:#d5c8bb;font-size:13px;line-height:1.55}
.hero-actions,.location-actions{display:flex;gap:11px;margin-top:28px;flex-wrap:wrap}
.button{display:inline-flex;align-items:center;min-height:46px;padding:0 18px;text-transform:uppercase;letter-spacing:.14em;font-size:9px;font-weight:700}
.button-solid{background:var(--white);color:var(--ink)}
.button-line{border:1px solid rgba(255,255,255,.38);color:var(--white)}
.hero-media{position:absolute;right:0;top:0;width:64%;height:100%;z-index:1}
.hero-media img{object-position:center center}
.hero-index{position:absolute;z-index:5;right:3vw;top:14vh;text-align:right;display:grid;gap:5px}.hero-index span{font:400 52px/1 var(--serif)}.hero-index small{font-size:7px;letter-spacing:.2em}
.scroll-cue{position:absolute;z-index:5;left:5vw;bottom:28px;display:flex;align-items:center;gap:13px;text-transform:uppercase;letter-spacing:.22em;font-size:7px}.scroll-cue i{width:68px;height:1px;background:rgba(255,255,255,.42);display:block}
.media-slot{background:linear-gradient(135deg,#251811,#5c3a2b 55%,#1d1612);overflow:hidden}
.media-slot img.failed{display:none}.media-fallback{position:absolute;inset:0;display:none;align-content:center;justify-items:center;text-align:center;background:radial-gradient(circle at 70% 30%,rgba(167,128,77,.24),transparent 32%),linear-gradient(135deg,#1d1511,#402a21);color:rgba(251,247,239,.9)}.media-slot.missing .media-fallback{display:grid}.media-fallback span{font-size:9px;letter-spacing:.25em}.media-fallback strong{font:400 clamp(28px,4vw,64px)/1 var(--serif);margin:10px 0}.media-fallback small{font-size:8px;letter-spacing:.18em;text-transform:uppercase;color:#c8b9ab}
.proposition{min-height:94svh;padding:9vw 6vw 7vw;background:var(--paper);display:grid;grid-template-columns:1fr 2.4fr 1fr;gap:5vw;align-items:end;border-bottom:1px solid var(--line)}
.proposition h2{font:700 clamp(70px,11vw,172px)/.8 var(--serif);letter-spacing:-.07em;margin:0;text-transform:uppercase}.proposition h2 em,.grill h2 em,.menu h2 em,.duality h3 em,.location h2 em,.final h2 em{font-weight:400;font-style:italic;color:var(--burgundy)}
.proposition-copy{font:400 16px/1.8 var(--serif);padding-bottom:1.2vw}.proposition-copy p{margin:0}
.grill{min-height:115svh;background:var(--ink);color:var(--white);position:relative;overflow:hidden}.grill-media{position:absolute;inset:0}.grill-media:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(24,18,15,.06),rgba(24,18,15,.07) 45%,rgba(24,18,15,.82))}.grill-copy{position:absolute;z-index:3;left:5vw;right:5vw;bottom:5vw}.grill h2{font:700 clamp(70px,11vw,168px)/.78 var(--serif);letter-spacing:-.07em;margin:16px 0 32px;text-transform:uppercase}.grill h2 em{color:#e3c1a1}.category-rail{display:flex;gap:10px;flex-wrap:wrap}.category-rail span{border:1px solid rgba(255,255,255,.3);padding:11px 14px;text-transform:uppercase;letter-spacing:.16em;font-size:8px;background:rgba(24,18,15,.24);backdrop-filter:blur(6px)}
.motion-hold{background:var(--burgundy);color:var(--white);padding:9vw 5vw}.motion-head{display:grid;grid-template-columns:1fr 3fr;align-items:end;gap:4vw}.motion-head h2{margin:0;text-transform:uppercase;font:700 clamp(60px,9vw,140px)/.82 var(--serif);letter-spacing:-.065em;display:flex;align-items:center;justify-content:space-between}.motion-head h2 i{font:400 .24em/1 var(--sans);letter-spacing:0;opacity:.55}.motion-stage{margin-top:6vw;display:grid;grid-template-columns:repeat(3,1fr);border:1px solid rgba(255,255,255,.25)}.motion-panel{min-height:310px;display:flex;flex-direction:column;justify-content:flex-end;padding:25px;border-right:1px solid rgba(255,255,255,.25);position:relative}.motion-panel:last-child{border-right:0}.motion-panel b{position:absolute;top:22px;left:24px;font-size:9px;letter-spacing:.2em}.motion-panel span{font:700 clamp(46px,6vw,90px)/.9 var(--serif)}.motion-panel small{text-transform:uppercase;letter-spacing:.16em;margin-top:10px;opacity:.72}.motion-note{max-width:560px;font-size:11px;line-height:1.6;margin:24px 0 0;color:#ead4ca}
.menu{padding:9vw 5vw 8vw;background:var(--paper);display:grid;grid-template-columns:.9fr 1.4fr;gap:8vw}.menu h2{font:700 clamp(66px,9vw,132px)/.82 var(--serif);letter-spacing:-.065em;text-transform:uppercase;margin:20px 0 0}.menu-groups{border-top:1px solid var(--line)}.menu-groups a{min-height:98px;border-bottom:1px solid var(--line);display:grid;grid-template-columns:52px 1fr 30px;align-items:center;gap:10px}.menu-groups span{font-size:9px;letter-spacing:.18em}.menu-groups strong{font:400 clamp(28px,3vw,48px)/1 var(--serif)}.menu-groups i{font-style:normal;text-align:right}.menu-groups a:hover strong{font-style:italic;color:var(--burgundy)}
.duality{display:grid;grid-template-columns:1fr 1fr}.duality-half{min-height:74svh;padding:6vw 5vw;background:var(--paper-2);display:flex;flex-direction:column;justify-content:flex-end}.duality-half.inverse{background:var(--ink-2);color:var(--white)}.duality h3{font:700 clamp(66px,8vw,124px)/.8 var(--serif);letter-spacing:-.07em;text-transform:uppercase;margin:15px 0 24px}.duality-half.inverse h3 em{color:#dcbca0}.duality-half>p:last-child{max-width:420px;font:400 14px/1.6 var(--serif);margin:0}
.location{min-height:106svh;position:relative;color:var(--white);overflow:hidden;background:var(--ink)}.location-media{position:absolute;inset:0}.location-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(24,18,15,.9),rgba(24,18,15,.38) 45%,rgba(24,18,15,.05)),linear-gradient(0deg,rgba(24,18,15,.58),transparent 55%)}.location-copy{position:absolute;z-index:3;left:5vw;bottom:6vw}.location h2{font:700 clamp(74px,11vw,170px)/.78 var(--serif);letter-spacing:-.07em;text-transform:uppercase;margin:18px 0 28px}.location h2 em{color:#e2c1a2}.location address{font-style:normal;font-size:11px;line-height:1.7;letter-spacing:.12em;text-transform:uppercase}.button-light{background:var(--white);color:var(--ink)}.button-line-light{border:1px solid rgba(255,255,255,.44)}
.final{min-height:88svh;background:var(--olive);color:var(--white);padding:8vw 5vw;display:flex;flex-direction:column;justify-content:flex-end}.final h2{font:700 clamp(90px,16vw,245px)/.72 var(--serif);letter-spacing:-.08em;text-transform:uppercase;margin:20px 0 50px}.final h2 em{color:#f0ddc0}.final-actions{display:flex;gap:42px;text-transform:uppercase;letter-spacing:.16em;font-size:9px}.final-actions a{border-bottom:1px solid rgba(255,255,255,.6);padding-bottom:8px}
footer{background:var(--ink);color:var(--white);min-height:150px;padding:34px 5vw;display:grid;grid-template-columns:1fr auto 1fr;align-items:end;gap:25px;border-top:1px solid rgba(255,255,255,.14)}footer p{margin:0;text-align:center;font-size:7px;letter-spacing:.2em;color:#b8aba0}footer>a{justify-self:end;font-size:8px;letter-spacing:.16em;text-transform:uppercase}

@media (max-width:900px){
  .nav{height:64px;grid-template-columns:1fr auto;padding:0 18px}.nav-links{display:none}.brand-main{font-size:16px}.nav-cta{font-size:8px}
  .hero{min-height:100svh;display:block}.hero:after{background:linear-gradient(0deg,rgba(24,18,15,.92) 0%,rgba(24,18,15,.44) 37%,rgba(24,18,15,.02) 64%)}.hero-media{width:100%;height:64%;top:0}.hero-media img{object-position:center 42%}.hero-copy{position:absolute;left:0;right:0;bottom:0;padding:0 18px 58px;max-width:none}.eyebrow,.section-kicker{font-size:7px}.hero h1{font-size:clamp(48px,15vw,72px);margin:13px 0 18px}.hero h1 .accent{margin-left:9vw}.hero-deck{font-size:11px;max-width:330px}.hero-actions{margin-top:18px}.button{min-height:42px;font-size:8px}.hero-index{right:18px;top:82px}.hero-index span{font-size:36px}.scroll-cue{display:none}
  .proposition{min-height:86svh;padding:110px 18px 58px;display:flex;flex-direction:column;justify-content:flex-end;align-items:flex-start;gap:20px}.proposition h2{font-size:clamp(55px,17vw,78px)}.proposition-copy{font-size:14px}
  .grill{min-height:94svh}.grill-copy{left:18px;right:18px;bottom:34px}.grill h2{font-size:clamp(55px,16vw,76px);margin:12px 0 22px}.category-rail{gap:6px}.category-rail span{font-size:6px;padding:8px 9px}
  .motion-hold{padding:86px 18px 70px}.motion-head{display:block}.motion-head h2{font-size:clamp(48px,15vw,72px);margin-top:16px}.motion-stage{grid-template-columns:1fr;margin-top:38px}.motion-panel{min-height:160px;border-right:0;border-bottom:1px solid rgba(255,255,255,.25);padding:18px}.motion-panel:last-child{border-bottom:0}.motion-panel span{font-size:48px}.motion-panel b{top:16px;left:18px}
  .menu{padding:92px 18px 74px;display:block}.menu h2{font-size:clamp(55px,16vw,76px);margin-bottom:44px}.menu-groups a{min-height:76px;grid-template-columns:34px 1fr 24px}.menu-groups strong{font-size:27px}
  .duality{grid-template-columns:1fr}.duality-half{min-height:70svh;padding:70px 18px 42px}.duality h3{font-size:clamp(64px,19vw,88px)}
  .location{min-height:100svh}.location-shade{background:linear-gradient(0deg,rgba(24,18,15,.93) 0%,rgba(24,18,15,.44) 50%,rgba(24,18,15,.05) 78%)}.location-copy{left:18px;right:18px;bottom:38px}.location h2{font-size:clamp(62px,18vw,86px);margin:12px 0 22px}.location address{font-size:8px}.location-actions{margin-top:20px}
  .final{min-height:78svh;padding:74px 18px 46px}.final h2{font-size:clamp(78px,23vw,108px);margin-bottom:38px}
  footer{grid-template-columns:1fr auto;padding:26px 18px}footer p{display:none}
}
@media (max-width:430px) and (max-height:700px){.hero-media{height:60%}.hero-copy{padding-bottom:28px}.hero h1{font-size:48px}.hero-deck{display:none}.hero-actions{margin-top:12px}.button{min-height:38px;padding:0 13px}.hero-index{display:none}.proposition{min-height:100svh}.motion-panel{min-height:130px}.location h2{font-size:58px}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.nav{backdrop-filter:none}}

/* RAWABI SPEC 002 — motion v1 progressive enhancement */
.motion-cinema{padding-bottom:0}
.motion-scroll{height:280svh;margin-top:6vw;position:relative}
.motion-sticky{position:sticky;top:0;height:100svh;display:grid;align-items:stretch}
.motion-visual{position:relative;height:100%;min-height:520px;overflow:hidden;background:var(--ink)}
.motion-poster,.motion-video,.motion-serve{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.motion-poster{z-index:1;opacity:1}
.motion-video{z-index:2;opacity:0;background:var(--ink)}
.motion-serve{z-index:3;opacity:0}
.motion-shade{position:absolute;z-index:4;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(24,18,15,.08),rgba(24,18,15,.04) 52%,rgba(24,18,15,.55))}
.motion-phase{position:absolute;z-index:5;left:4vw;right:4vw;bottom:4vw;display:flex;justify-content:space-between;align-items:end;text-transform:uppercase;letter-spacing:.18em;font-size:8px}
.motion-phase span{opacity:.35;transition:opacity .18s ease}
.motion-phase span.active{opacity:1}
.motion-cinema[data-motion-state="cut"] #motion-cut{opacity:1}
.motion-cinema[data-motion-state="fire"] #motion-fire{opacity:1}
.motion-cinema[data-motion-state="serve"] .motion-serve{opacity:1}
.motion-cinema[data-motion-state="fallback"] .motion-poster{opacity:1}
.motion-cinema[data-motion-state="fallback"] .motion-video,
.motion-cinema[data-motion-state="fallback"] .motion-serve{opacity:0}
.motion-cinema.motion-ready .motion-poster{opacity:0}
.motion-cinema.motion-ready[data-motion-state="poster"] .motion-poster{opacity:1}

@media (max-width:900px){
  .motion-scroll{height:240svh;margin-top:38px}
  .motion-sticky{height:100svh}
  .motion-visual{min-height:430px}
  .motion-poster,.motion-video,.motion-serve{object-position:center center}
  .motion-phase{left:18px;right:18px;bottom:24px;font-size:6px}
}
@media (max-width:430px) and (max-height:700px){
  .motion-scroll{height:220svh}
  .motion-visual{min-height:360px}
}
@media (prefers-reduced-motion:reduce){
  .motion-scroll{height:auto;margin-top:38px}
  .motion-sticky{position:relative;height:auto}
  .motion-visual{height:min(70svh,620px)}
  .motion-video{display:none!important}
  .motion-serve{opacity:1!important}
  .motion-poster{opacity:0!important}
  .motion-phase span{opacity:.35!important}
  .motion-phase span[data-phase="serve"]{opacity:1!important}
}
.motion-controls{position:absolute;z-index:6;right:4vw;top:4vw;display:flex;gap:8px}
.motion-controls button{appearance:none;border:1px solid rgba(255,255,255,.42);background:rgba(24,18,15,.42);color:var(--white);min-height:38px;padding:0 12px;text-transform:uppercase;letter-spacing:.14em;font:700 7px/1 var(--sans);cursor:pointer;backdrop-filter:blur(8px)}
.motion-controls button:disabled{opacity:.38;cursor:default}
@media (max-width:900px){.motion-controls{right:18px;top:18px}.motion-controls button{min-height:34px;font-size:6px}}
@media (prefers-reduced-motion:reduce){.motion-controls{display:none}}
