:root{
  --canvas:#F5EDE0; --panel:#EBDDC8; --panel-2:#E2D0B6;
  --ink:#2B1810; --text-2:#6E5646; --cocoa:#4A2C1D; --night:#2A1D17; --night-deep:#1C130F;
  --accent:#B4162C; --accent-hover:#CF2440; --saffron:#E5AE1F;
  --f-display:'Fraunces',Georgia,serif; --f-body:'Bricolage Grotesque',system-ui,sans-serif; --f-mono:'DM Mono',ui-monospace,monospace;
  --f-ui:'Instrument Sans','Bricolage Grotesque',system-ui,sans-serif;
  --espresso:#22150F; --nav-a:#24160F; --nav-b:#33201A; --gold-ink:#8A6206; --muted-dark:#A8937E;
  --grain:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .17 0 0 0 0 .09 0 0 0 0 .06 0 0 0 .07 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  --ease:cubic-bezier(.22,1,.36,1); --gut:clamp(16px,5vw,80px);
}
*,*::before,*::after{box-sizing:border-box}
html{background:var(--canvas);overflow-x:clip;-webkit-text-size-adjust:100%;scroll-padding-top:84px}
body{margin:0;background:var(--canvas) var(--grain);color:var(--ink);font:400 17px/1.55 var(--f-body);-webkit-font-smoothing:antialiased;overflow-x:clip;text-rendering:optimizeLegibility}
::selection{background:rgba(180,22,44,.18)}
img{max-width:100%;display:block}
a{color:inherit}
button{font:inherit;color:inherit;cursor:pointer}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:6px}
.nav :focus-visible,.foot :focus-visible,.order :focus-visible,.infos :focus-visible,.craft :focus-visible{outline-color:var(--saffron)}
.sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.disp{font-family:var(--f-display);font-variation-settings:"SOFT" 100,"WONK" 1;font-weight:900;letter-spacing:-.02em;line-height:.98}
.disp em{font-style:italic;font-weight:700;color:var(--accent)}
.mono{font-family:var(--f-mono);font-size:12.5px;letter-spacing:.14em;text-transform:uppercase}

/* ---------- nav: espresso band, a fine gold rule and a soft fade into the page ---------- */
.nav{position:fixed;inset:0 0 auto;z-index:50;display:flex;align-items:center;gap:26px;padding:12px var(--gut);color:#F5EDE0;
  background:linear-gradient(100deg,var(--nav-a) 0%,var(--nav-b) 52%,var(--nav-a) 100%);font-family:var(--f-ui);transition:box-shadow .4s,padding .4s var(--ease)}
.nav::before{content:"";position:absolute;inset:auto 0 0;height:1px;background:linear-gradient(90deg,rgba(229,174,31,0),rgba(229,174,31,.55) 20%,rgba(229,174,31,.55) 80%,rgba(229,174,31,0));pointer-events:none}
.nav::after{content:"";position:absolute;inset:100% 0 auto;height:22px;background:linear-gradient(180deg,rgba(36,22,15,.28),rgba(36,22,15,0));pointer-events:none;opacity:0;transition:opacity .4s}
.nav.solid::after{opacity:1}
.nav .logo{width:52px;height:52px;flex:none;transition:transform .5s var(--ease)}
.nav>a:first-child:hover .logo{transform:rotate(-6deg) scale(1.04)}
.nav ul{display:flex;gap:30px;list-style:none;margin:0 auto 0 14px;padding:0;font:500 14.5px/1 var(--f-ui);letter-spacing:.01em}
.nav ul a{text-decoration:none;position:relative;display:inline-block;padding:10px 0;color:#EFE3D2;transition:color .3s}
.nav ul a:hover{color:#fff}
.nav ul a::after{content:"";position:absolute;left:0;right:0;bottom:4px;height:1.5px;background:var(--saffron);transform:scaleX(0);transform-origin:left;transition:transform .45s var(--ease)}
html[dir=rtl] .nav ul a::after{transform-origin:right}
.nav ul a:hover::after,.nav ul a[aria-current=true]::after{transform:scaleX(1)}
.lang{display:flex;gap:2px;background:rgba(245,237,224,.08);box-shadow:inset 0 0 0 1px rgba(245,237,224,.12);border-radius:999px;padding:3px;font:600 11.5px/1 var(--f-ui);letter-spacing:.08em}
.lang button{border:0;background:none;min-width:40px;min-height:34px;padding:0 10px;border-radius:999px;color:#E3D3BE;transition:background .3s,color .3s}
.lang button:hover{color:#fff}
.lang button[aria-pressed=true]{background:var(--saffron);color:var(--espresso)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;border:0;border-radius:999px;min-height:48px;padding:13px 24px;font:600 15.5px/1.1 var(--f-ui);letter-spacing:.01em;text-decoration:none;transition:background .25s,transform .35s var(--ease),box-shadow .35s var(--ease)}
.btn:active{transform:scale(.97)}
.btn-primary{background:var(--accent);color:#FFF6EC;box-shadow:0 10px 24px -14px rgba(180,22,44,.9)}
.btn-primary:hover{background:#9E1226;transform:translateY(-1px);box-shadow:0 14px 28px -14px rgba(180,22,44,.95)}
.btn-ghost{background:rgba(251,246,238,.86);color:var(--ink);box-shadow:inset 0 0 0 1.5px rgba(43,24,16,.28)}
.btn-ghost:hover{background:#FBF6EE;box-shadow:inset 0 0 0 1.5px rgba(43,24,16,.6)}
.cart-count{display:inline-grid;place-items:center;min-width:22px;height:22px;padding:0 6px;border-radius:99px;background:#FFF6EC;color:var(--accent);font:600 12px var(--f-ui)}
@media (max-width:860px){.nav ul{display:none}.nav{gap:10px;padding:8px 14px;padding-top:max(8px,env(safe-area-inset-top))}.nav .lang{margin-left:auto}.nav .btn{min-height:44px;padding:10px 15px;font-size:14px}.nav .logo{width:44px;height:44px}.lang button{min-width:36px;min-height:36px;padding:0 8px}}
@media (max-width:370px){.nav .btn [data-t=order]{display:none}.nav .btn{padding:10px 12px}}

/* ---------- scroll scenes (section 1 hero, section 2 build) ---------- */
.scene{position:relative}
.scene.hero{height:400vh}
.scene.build{height:420vh}
.stage{position:sticky;top:0;height:100vh;height:100svh;overflow:hidden;background:#d9cdbb}
.stage canvas{position:absolute;inset:0;width:100%;height:100%;display:block}
.stage .poster{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .4s}
.static .stage .poster{opacity:1}
.static .stage canvas{display:none}
.scrim{position:absolute;inset:0 auto 0 0;width:min(56vw,820px);pointer-events:none;
  background:linear-gradient(90deg,rgba(245,237,224,.94) 0%,rgba(245,237,224,.78) 45%,rgba(245,237,224,0) 100%);opacity:.35;will-change:opacity}
.caps{position:absolute;z-index:3;left:var(--gut);top:0;bottom:0;width:min(36vw,520px);display:flex;align-items:center}
.band{position:absolute;left:0;right:0;opacity:0;visibility:hidden;will-change:opacity,transform}
.band .mono{color:var(--text-2);display:block;margin-bottom:16px}
.band .num{font:500 15px var(--f-mono);color:var(--accent);display:block;margin-bottom:12px;letter-spacing:.1em}
.band h1,.band h2{margin:0;font-size:clamp(42px,5.2vw,88px);text-shadow:0 1px 0 rgba(245,237,224,.6)}
.band .ctas{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}
.halal{position:absolute;z-index:4;right:var(--gut);bottom:6vh;width:76px;height:76px;filter:drop-shadow(0 6px 14px rgba(43,24,16,.18))}
.halal text{font:600 10.5px var(--f-ui);letter-spacing:.06em;fill:var(--ink)}
.halal .spin{transform-origin:50px 50px;animation:spin 28s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.cue{position:absolute;z-index:4;left:50%;bottom:24px;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:8px;color:var(--text-2);transition:opacity .4s}
.cue i{width:2px;height:36px;background:linear-gradient(var(--cocoa),transparent);animation:cue 1.8s var(--ease) infinite;transform-origin:top}
@keyframes cue{0%{transform:scaleY(0)}60%{transform:scaleY(1);opacity:1}100%{opacity:0}}
.ring{position:absolute;z-index:4;right:var(--gut);top:84px;width:34px;height:34px;transition:opacity .6s}
.ring circle{fill:none;stroke-width:3}
.ring .bg{stroke:rgba(43,24,16,.15)}
.ring .fg{stroke:var(--accent);stroke-dasharray:88;stroke-dashoffset:var(--ld,88);transform:rotate(-90deg);transform-origin:center;transition:stroke-dashoffset .3s}
.ring.done{opacity:0}
.counter{position:absolute;z-index:4;right:var(--gut);top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:14px;font:500 12px var(--f-mono);color:var(--text-2)}
.counter span{display:flex;align-items:center;gap:10px;opacity:.35;transition:opacity .4s}
.counter span::before{content:"";width:18px;height:2px;background:currentColor;transition:width .4s var(--ease)}
.counter span.on{opacity:1;color:var(--ink)}
.counter span.on::before{width:36px;background:var(--accent)}
@media (max-aspect-ratio:1/1){
  .caps{left:0;right:0;width:auto;top:0;bottom:0;height:auto;padding:0}
  .band h1,.band h2{font-size:clamp(32px,9vw,46px)}
  .band .mono{font-size:11px;margin-bottom:10px}
  .band .ctas{margin-top:16px;flex-wrap:nowrap;gap:10px}
  .band .ctas .btn{padding:12px 16px;font-size:15px;white-space:nowrap;min-height:44px}
  .stage .poster{object-fit:contain;object-position:center 62px;height:calc(100% - var(--cap,34%));background:#F5EDE0}
  .scrim{inset:auto 0 0 0;width:auto;height:calc(var(--cap,34%) + 56px);background:linear-gradient(0deg,rgba(245,237,224,1) 0%,rgba(245,237,224,.97) calc(100% - 56px),rgba(245,237,224,0) 100%)}
  .band .mono{color:var(--ink);opacity:.8}
  .halal{width:50px;height:50px;top:auto;bottom:calc(var(--cap,34%) + 4px);right:10px}   /* beside the bowl, on the empty table, never on the food */
  .band{left:20px;right:20px;top:auto;bottom:calc(20px + env(safe-area-inset-bottom))}
  .ring{top:130px;bottom:auto;right:16px;width:28px;height:28px}
  .cue{display:none}
  .counter{display:none}
  .counter span::before{width:10px}.counter span.on::before{width:20px}
}
@media (prefers-reduced-motion:reduce){.halal .spin,.cue i{animation:none}}

.next{padding:120px var(--gut);text-align:center;color:var(--text-2)}


/* ---------- 4 · Fait minute (pinned horizontal strip on desktop, stacked full-screen clips on phones) ---------- */
.craft{position:relative;background:var(--night);color:#F5EDE0}
.craft::before{content:"";position:absolute;inset:0 0 auto;height:70px;background:var(--canvas);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1600 70' preserveAspectRatio='none'%3E%3Cpath d='M0 0H1600V30C1560 30 1550 52 1500 52S1430 18 1360 18 1290 60 1210 60 1120 26 1050 26 980 56 900 56 820 20 740 20 660 62 580 62 500 28 420 28 350 54 270 54 200 22 130 22 60 44 0 44Z'/%3E%3C/svg%3E") center/100% 100%;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1600 70' preserveAspectRatio='none'%3E%3Cpath d='M0 0H1600V30C1560 30 1550 52 1500 52S1430 18 1360 18 1290 60 1210 60 1120 26 1050 26 980 56 900 56 820 20 740 20 660 62 580 62 500 28 420 28 350 54 270 54 200 22 130 22 60 44 0 44Z'/%3E%3C/svg%3E") center/100% 100%;z-index:1;pointer-events:none}
.craft-pin{position:relative}
.craft-track{display:flex;align-items:center;gap:clamp(18px,2.4vw,40px);padding:0 var(--gut);will-change:transform}
html.craft-h .craft-track{padding-inline-end:calc(50vw - min(20vh,220px))}
.craft-intro{flex:0 0 min(440px,34vw)}
.craft-intro .kick{color:var(--saffron);display:block;margin-bottom:16px}
.craft-intro .h2{font-size:clamp(46px,5.4vw,92px);color:#F5EDE0}
.craft-intro .h2 em{color:var(--saffron)}
.craft-intro .lede{margin:22px 0 0;color:#D9C6AE;max-width:36ch}
.craft-hint{margin-top:30px;display:flex;align-items:center;gap:12px;color:var(--saffron)}
.craft-hint svg{width:34px;height:12px}
html[dir=rtl] .craft-hint svg{transform:scaleX(-1)}
.clip{flex:none;margin:0;perspective:1100px}
.clip-in{position:relative;height:min(72vh,780px);height:min(72svh,780px);aspect-ratio:9/16;border-radius:24px;overflow:hidden;background:#140d08;box-shadow:0 40px 80px -44px rgba(0,0,0,.95),0 0 0 1px rgba(229,174,31,.18);transform:rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));transition:transform .8s var(--ease);will-change:transform}
.clip.tilting .clip-in{transition:transform .12s linear}
.clip video,.clip .poster{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.clip video{opacity:0;transition:opacity .6s var(--ease)}
.clip video.on{opacity:1}
.clip-in::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(0deg,rgba(20,13,8,.94) 0%,rgba(20,13,8,.55) 28%,rgba(20,13,8,0) 52%)}
.clip figcaption{position:absolute;z-index:2;inset:auto 0 0 0;padding:22px 22px 26px;text-shadow:0 2px 14px rgba(10,6,4,.6)}
.clip .n{font:500 12px/1 var(--f-mono);letter-spacing:.12em;color:var(--saffron)}
.clip h3{font:900 clamp(30px,2.6vw,40px)/1 var(--f-display);font-variation-settings:"SOFT" 100,"WONK" 1;margin:10px 0 0;color:#F5EDE0}
.clip p{margin:10px 0 0;font-size:15px;line-height:1.5;color:#E3D3BE}
html:lang(ar) .clip h3{font-family:'Reem Kufi',var(--f-display);font-weight:700;line-height:1.35}
.craft-bar{position:absolute;z-index:2;bottom:28px;inset-inline:var(--gut);display:flex;align-items:center;gap:18px;font:500 12px/1 var(--f-mono);letter-spacing:.12em;color:#D9C6AE}
.craft-bar .cnum{color:#F5EDE0;direction:ltr;unicode-bidi:isolate;min-width:58px}
.craft-bar i{flex:1;max-width:520px;height:2px;background:rgba(245,237,224,.18);border-radius:2px;overflow:hidden;position:relative}
.craft-bar i::after{content:"";position:absolute;inset:0;background:var(--saffron);transform-origin:left;transform:scaleX(var(--f,0))}
html[dir=rtl] .craft-bar i::after{transform-origin:right}
html.craft-h .craft-pin{position:sticky;top:0;height:100vh;height:100svh;overflow:hidden;display:flex;align-items:center}
html.craft-h .craft-track{padding-top:56px}
html:not(.craft-h) .craft{padding:clamp(110px,14vh,150px) 0 40px}
html:not(.craft-h) .craft-track{flex-direction:column;align-items:stretch;gap:0;padding:0}
html:not(.craft-h) .craft-intro{flex:none;padding:0 var(--gut) 40px}
html:not(.craft-h) .craft-hint,html:not(.craft-h) .craft-bar{display:none}
html:not(.craft-h) .clip{perspective:none}
html:not(.craft-h) .clip-in{width:100%;aspect-ratio:auto;height:100vh;height:100svh;max-height:900px;border-radius:0;box-shadow:none;transform:none}
html:not(.craft-h) .clip figcaption{padding:0 var(--gut) calc(44px + env(safe-area-inset-bottom))}
html:not(.craft-h) .clip h3{font-size:clamp(40px,11vw,62px)}
html:not(.craft-h) .clip p{font-size:17px;max-width:32ch}
html:not(.craft-h) .clip-in::after{background:linear-gradient(0deg,rgba(20,13,8,.95) 0%,rgba(20,13,8,.6) 26%,rgba(20,13,8,0) 50%),linear-gradient(180deg,rgba(42,29,23,1) 0%,rgba(42,29,23,0) 14%)}


/* ---------- 5 · Le lieu: each photo opens from a framed card to full screen, the next one wipes up over it ---------- */
.lieu{position:relative;height:520vh;background:var(--night)}
.lieu-stage{position:sticky;top:0;height:100vh;height:100svh;overflow:hidden;background:var(--night)}
.lieu-shot{position:absolute;inset:0;overflow:hidden;will-change:clip-path}
.lieu-shot img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;will-change:transform}
.lieu-shot::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(0deg,rgba(20,13,8,.92) 0%,rgba(20,13,8,.72) 26%,rgba(20,13,8,.3) 46%,rgba(20,13,8,0) 64%),linear-gradient(180deg,rgba(20,13,8,.6) 0%,rgba(20,13,8,0) 24%)}
.lieu-cap{position:absolute;z-index:3;left:var(--gut);right:var(--gut);bottom:clamp(36px,8vh,80px);max-width:720px;color:#F5EDE0;opacity:0;visibility:hidden;will-change:opacity,transform;text-shadow:0 2px 18px rgba(10,6,4,.55)}
.lieu-cap .mono{color:var(--saffron);display:block;margin-bottom:14px}
.lieu-cap h3{font-size:clamp(36px,4.6vw,76px);margin:0;color:#F5EDE0}
.lieu-cap h3 em{color:var(--saffron)}
.lieu-cap p{margin:16px 0 0;font-size:17px;color:#E3D3BE;max-width:44ch}
.lieu-head{position:absolute;z-index:3;left:var(--gut);top:clamp(96px,14vh,140px);color:#F5EDE0;will-change:opacity;text-shadow:0 2px 18px rgba(10,6,4,.5)}
.lieu-head .mono{color:var(--saffron);display:block;margin-bottom:12px}
.lieu-head h2{margin:0;font-size:clamp(40px,5vw,84px);color:#F5EDE0}
.lieu-head h2 em{color:var(--saffron)}
.lieu-idx{position:absolute;z-index:3;right:var(--gut);top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:16px;font:500 12px var(--f-mono);color:rgba(245,237,224,.5)}
.lieu-idx span{display:flex;align-items:center;gap:10px;justify-content:flex-end;transition:color .4s}
.lieu-idx span::after{content:"";width:16px;height:2px;background:currentColor;transition:width .45s var(--ease)}
.lieu-idx span.on{color:#F5EDE0}
.lieu-idx span.on::after{width:40px;background:var(--saffron)}
html[dir=rtl] .lieu-idx{right:auto;left:var(--gut)}
html[dir=rtl] .lieu-idx span{justify-content:flex-start;flex-direction:row-reverse}
html:lang(ar) .lieu-cap h3,html:lang(ar) .lieu-head h2{line-height:1.3}
@media (max-width:860px),(max-aspect-ratio:1/1){
  .lieu{height:480vh}
  .lieu-cap{bottom:calc(32px + env(safe-area-inset-bottom))}
  .lieu-cap h3{font-size:clamp(32px,9vw,46px)}
  .lieu-cap p{font-size:15.5px}
  .lieu-head{top:84px}
  .lieu-head h2{font-size:clamp(34px,9.5vw,48px)}
  .lieu-idx{top:auto;bottom:auto;top:90px;transform:none;flex-direction:row;gap:10px}
  .lieu-idx span::after{width:8px}.lieu-idx span.on::after{width:18px}
}
.static .lieu{height:auto}
.static .lieu-stage{position:relative;height:auto;display:grid;gap:12px;padding:110px 0 40px}
.static .lieu-shot{position:relative;inset:auto;aspect-ratio:16/9;clip-path:none!important}
.static .lieu-cap{position:relative;inset:auto;opacity:1;visibility:visible;padding:16px var(--gut) 30px;transform:none!important}
.static .lieu-idx,.static .lieu-head{display:none}
.static .lieu-shot[data-i="0"]{order:0}.static .lieu-cap[data-i="0"]{order:1}
.static .lieu-shot[data-i="1"]{order:2}.static .lieu-cap[data-i="1"]{order:3}
.static .lieu-shot[data-i="2"]{order:4}.static .lieu-cap[data-i="2"]{order:5}
.static .lieu-shot[data-i="3"]{order:6}.static .lieu-cap[data-i="3"]{order:7}
.static .lieu-shot::after{display:none}
.static .lieu-shot img{transform:none!important}


/* ---------- 6 · La carte + Commande ---------- */
.carte{position:relative;padding:clamp(150px,13vw,190px) var(--gut) 60px;max-width:1360px;margin:0 auto}
.carte::before{content:"";position:absolute;z-index:-1;top:0;height:140px;left:50%;width:100vw;transform:translateX(-50%);background:linear-gradient(180deg,var(--night),rgba(42,29,23,0));pointer-events:none}
.carte-head .h2{max-width:16ch}
.carte-head .lede{color:var(--text-2);max-width:52ch;margin:18px 0 0}
.carte{isolation:isolate}
.cbar{position:sticky;top:72px;z-index:20;display:flex;align-items:center;gap:12px;margin:36px calc(var(--gut)*-1) 0;padding:10px var(--gut);background:rgba(245,237,224,.94);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 1px 0 rgba(43,24,16,.08)}
.csearch{position:relative;flex:0 0 230px}
.csearch svg{position:absolute;inset-inline-start:14px;top:50%;width:18px;height:18px;transform:translateY(-50%);color:var(--text-2);pointer-events:none}
.csearch input{width:100%;min-height:44px;border:0;border-radius:999px;padding:0 16px 0 42px;background:#FBF6EE;box-shadow:inset 0 0 0 1.5px rgba(43,24,16,.14);font:500 15px var(--f-ui);color:var(--ink);transition:box-shadow .3s}
html[dir=rtl] .csearch input{padding:0 42px 0 16px}
.csearch input:focus{outline:none;box-shadow:inset 0 0 0 2px var(--accent)}
.csearch input::placeholder{color:#8A7464}
.ctabs{flex:1;min-width:0;display:flex;gap:4px;overflow-x:auto;scrollbar-width:none}
.ctabs::-webkit-scrollbar{display:none}
.ctabs button{flex:none;border:0;background:transparent;min-height:44px;padding:0 16px;border-radius:999px;font:600 14.5px var(--f-ui);color:var(--text-2);transition:background .3s,color .3s}
.ctabs button:hover{color:var(--ink)}
.ctabs button[aria-selected=true]{background:var(--ink);color:var(--canvas)}
.cnote{unicode-bidi:plaintext;color:var(--text-2);margin:26px 0 0;font:500 14px/1.5 var(--f-ui);letter-spacing:.01em}
.cempty{margin:18px 0 0;padding:26px;border-radius:20px;background:#FBF6EE;color:var(--text-2)}
.mgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:22px;margin-top:26px}
.mcard{background:#FBF6EE;border-radius:24px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 1px 0 rgba(43,24,16,.06);transition:transform .5s var(--ease),box-shadow .5s var(--ease)}
.mcard:hover{transform:translateY(-6px);box-shadow:0 30px 60px -30px rgba(74,44,29,.45)}
.mph{aspect-ratio:4/5;overflow:hidden;background:var(--panel)}
.mph img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease)}
.mcard:hover .mph img{transform:scale(1.05)}
.mtx{padding:18px 18px 20px;display:flex;flex-direction:column;flex:1}
.mtx h3{font:800 23px/1.1 var(--f-display);font-variation-settings:"SOFT" 100,"WONK" 1;margin:0 0 6px}
.mtx p{margin:0 0 16px;color:var(--text-2);font-size:14.5px;line-height:1.45}
.mbuy{margin-top:auto;display:flex;gap:8px;flex-wrap:wrap}
.add{display:inline-flex;align-items:center;gap:8px;border:0;border-radius:999px;padding:10px 14px;background:var(--ink);color:var(--canvas);font:600 14px var(--f-body);transition:background .25s,transform .25s var(--ease)}
.add b{font:500 13.5px var(--f-mono);color:var(--saffron)}
.add .pl{font-size:17px;line-height:1}
.add:hover{background:#3d2418;transform:translateY(-1px)}
.add.alt{background:var(--accent)}
.add.alt b{color:#FFE7B0}
.add.alt:hover{background:var(--accent-hover)}
.add.done{background:#4E6823}
.pzhero{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:22px}
.pzhero figure{margin:0;border-radius:22px;overflow:hidden;aspect-ratio:16/10;background:var(--panel)}
.pzhero img{width:100%;height:100%;object-fit:cover;object-position:50% 65%}
.psub{font:800 28px/1 var(--f-display);font-variation-settings:"SOFT" 100,"WONK" 1;margin:40px 0 6px}
.plist{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(420px,1fr));column-gap:40px}
.prow{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 0;border-bottom:1px solid rgba(43,24,16,.12)}
.prow h4{margin:0;font:800 20px/1.1 var(--f-display);font-variation-settings:"SOFT" 100,"WONK" 1}
.prow p{margin:4px 0 0;color:var(--text-2);font-size:14px}
.prow .pb{display:flex;gap:6px;flex:none}
.prow .add{padding:9px 12px}
.dgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(132px,1fr));gap:12px;margin-top:22px;max-width:1040px}
.dcard{position:relative;background:#FBF6EE;border-radius:18px;padding:12px 10px 12px;display:grid;grid-template-rows:auto 1fr auto;justify-items:center;text-align:center;gap:6px;box-shadow:0 1px 0 rgba(43,24,16,.06);transition:transform .4s var(--ease),box-shadow .4s var(--ease)}
.dcard:hover{transform:translateY(-3px);box-shadow:0 18px 34px -24px rgba(74,44,29,.55)}
.dcard img,.dcard .dph{width:64px;height:64px;border-radius:14px;object-fit:cover;background:#2A1D17;color:var(--saffron);display:grid;place-items:center}
.dcard .dph svg{width:20px;height:32px}
.dcard h4{margin:4px 0 0;font:600 14px/1.25 var(--f-ui);align-self:center}
.dcard small{display:block;color:var(--text-2);font:500 11.5px var(--f-mono);margin-top:2px}
.dcard .add{min-height:40px;padding:8px 14px;font-size:13px}
@media (max-width:860px){.cbar{top:60px;flex-direction:column;align-items:stretch;gap:8px;padding:8px var(--gut)}.csearch{flex:none}.csearch input{min-height:42px}.mgrid{grid-template-columns:1fr 1fr;gap:12px}.mtx{padding:12px 12px 14px}.mtx h3{font-size:18px}.mtx p{font-size:13px}.add{padding:9px 11px;font-size:13px}.plist{grid-template-columns:1fr}.prow{flex-direction:column;align-items:flex-start}.pzhero{gap:10px}.pzhero figure{aspect-ratio:1}}
@media (max-width:420px){.mgrid{grid-template-columns:1fr}}
@media (max-width:600px){.dgrid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.dcard{padding:10px 6px;border-radius:16px}.dcard img,.dcard .dph{width:52px;height:52px;border-radius:12px}.dcard h4{font-size:12.5px}.dcard .add{padding:6px 10px;min-height:36px;font-size:12px}.dcard .add b{font-size:12px}}
/* sheet */
.sheet{position:fixed;inset:0;z-index:90;background:rgba(28,19,15,.55);display:flex;align-items:flex-end;justify-content:center;opacity:0;transition:opacity .28s}
.sheet[hidden]{display:none}
.sheet.open{opacity:1}
.sheet-card{width:min(640px,100%);max-height:88vh;overflow:auto;background:var(--canvas);border-radius:28px 28px 0 0;padding:22px 22px 0;transform:translateY(30px);transition:transform .35s var(--ease)}
.sheet.open .sheet-card{transform:none}
@media (min-width:861px){.sheet{align-items:center}.sheet-card{border-radius:28px}}
.sh-top{display:flex;gap:16px;align-items:center}
#shImg img{width:84px;height:84px;border-radius:16px;object-fit:cover}
#shD{margin:6px 0 0;color:var(--text-2);font-size:14px;line-height:1.45}
body.sheet-on{overflow:hidden}
.sheet .lim{display:block;margin:-4px 0 10px;color:var(--text-2);font:500 12.5px var(--f-ui)}
.sh-incl,.sh-hint{margin:18px 0 0;padding:11px 14px;border-radius:14px;background:var(--panel);font-size:14px;color:var(--ink)}
.sh-note{display:grid;gap:8px;margin:22px 0 0;font:600 14px var(--f-ui)}
.sh-note input{font:500 16px var(--f-body);color:var(--ink);background:#FBF6EE;border:0;border-radius:14px;padding:12px 14px;box-shadow:inset 0 0 0 1.5px rgba(43,24,16,.14)}
.sh-note input:focus{outline:none;box-shadow:inset 0 0 0 2px var(--accent)}
.sh-row{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-top:20px}
.sh-qty{display:flex;align-items:center;gap:6px;background:var(--panel);border-radius:999px;padding:4px}
.sh-qty button{width:40px;height:40px;border:0;border-radius:50%;background:#FBF6EE;font-size:18px;line-height:1}
.sh-qty output{min-width:28px;text-align:center;font:600 16px var(--f-ui)}
.sh-alg summary{cursor:pointer;font:600 14px var(--f-ui);color:var(--text-2);text-decoration:underline;text-underline-offset:3px;min-height:44px;display:flex;align-items:center}
.sh-alg p{margin:4px 0 0;font-size:14px;color:var(--ink);max-width:40ch}
.chips input:disabled+span{opacity:.45;cursor:not-allowed}
#shOk:disabled{opacity:.5;cursor:not-allowed}
#shImg:empty{display:none}
#shT{font:800 26px/1.1 var(--f-display);font-variation-settings:"SOFT" 100,"WONK" 1;margin:0}
.sheet fieldset{border:0;padding:0;margin:22px 0 0}
.sheet legend{font:500 12.5px var(--f-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--text-2);margin-bottom:10px}
html:lang(ar) .sheet legend{letter-spacing:0;text-transform:none;font:600 14px 'Readex Pro'}
.chips,.dchips{display:flex;flex-wrap:wrap;gap:8px}
.chips label,.dchips label{position:relative}
.chips input,.dchips input{position:absolute;opacity:0;inset:0}
.chips span,.dchips span{display:flex;flex-direction:column;padding:10px 14px;border-radius:14px;background:var(--panel);font-weight:600;font-size:14.5px;cursor:pointer;box-shadow:inset 0 0 0 1.5px transparent;transition:background .2s,box-shadow .2s}
.dchips span small{font:500 11.5px var(--f-mono);color:var(--text-2);font-weight:400}
.chips input:checked+span,.dchips input:checked+span{background:#FFF8EE;box-shadow:inset 0 0 0 2px var(--accent)}
.chips input:focus-visible+span,.dchips input:focus-visible+span{outline:2px solid var(--saffron);outline-offset:2px}
.sh-act{position:sticky;bottom:0;display:flex;gap:10px;padding:18px 0 22px;margin-top:20px;background:linear-gradient(rgba(245,237,224,0),var(--canvas) 30%)}
.sh-act .btn{flex:1;justify-content:center}
/* bag pill */
.bag-pill{position:fixed;z-index:60;right:20px;bottom:20px;display:flex;align-items:center;gap:12px;border:0;border-radius:999px;padding:12px 18px 12px 14px;background:var(--night);color:#F5EDE0;font:600 15px var(--f-body);box-shadow:0 18px 40px -16px rgba(28,19,15,.7);transform:translateY(120px);transition:transform .45s var(--ease)}
.bag-pill.show{transform:none}
.bag-pill .n{display:grid;place-items:center;min-width:28px;height:28px;border-radius:99px;background:var(--saffron);color:var(--night);font:600 13px var(--f-mono)}
html[dir=rtl] .bag-pill{right:auto;left:20px}
/* order */
.order{background:linear-gradient(180deg,var(--canvas) 0,var(--night) 130px) no-repeat,var(--night);color:#F5EDE0;padding:clamp(150px,13vw,190px) var(--gut) clamp(90px,11vw,140px)}
.order-in{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(28px,5vw,70px);align-items:start}
.order .mono{color:var(--saffron)}
.order .h2{color:#F5EDE0}
.order .h2 em{color:var(--saffron)}
.steps{display:flex;gap:22px;flex-wrap:wrap;margin:22px 0 30px;font:600 13.5px var(--f-ui);letter-spacing:.02em;color:#E3D3BE}
.steps b{color:var(--saffron);margin-inline-end:6px}
.ticket{background:#F5EDE0;color:var(--ink);border-radius:24px;padding:22px 22px 18px}
.ticket-h{display:flex;justify-content:space-between;align-items:baseline;border-bottom:1px dashed rgba(43,24,16,.3);padding-bottom:12px}
.ticket-h h3{margin:0;font:800 22px var(--f-display);font-variation-settings:"SOFT" 100,"WONK" 1}
.ticket-h span{font:500 13px var(--f-ui);color:var(--text-2)}
#oLines{list-style:none;margin:0;padding:0}
#oLines li{display:grid;grid-template-columns:1fr auto auto;gap:12px;align-items:center;padding:13px 0;border-bottom:1px solid rgba(43,24,16,.1)}
#oLines .ol b{display:block;font-size:15px}
#oLines .ol span{display:block;font:500 13px/1.45 var(--f-ui);color:var(--text-2)}
#oLines .ol .on{color:var(--ink);font-style:italic}
#oLines .ol .op{font:500 12.5px var(--f-mono);margin-top:2px}
#oLines .oe{border:0;background:none;padding:6px 2px;min-height:32px;font:600 12.5px var(--f-ui);color:var(--accent);text-decoration:underline;text-underline-offset:2px}
#oLines .again{margin-top:14px;min-height:44px;font-size:14px}
.upsell{padding:14px 0 6px;border-bottom:1px dashed rgba(43,24,16,.25)}
.upsell p{margin:0 0 10px;font:600 11.5px var(--f-ui);letter-spacing:.16em;text-transform:uppercase;color:var(--text-2)}
html:lang(ar) .upsell p{letter-spacing:0;font-size:13px}
.upsell div{display:flex;gap:8px;flex-wrap:wrap}
.ups{display:inline-flex;align-items:center;gap:8px;min-height:40px;border:0;border-radius:999px;padding:6px 14px;background:var(--panel);color:var(--ink);font:600 13.5px var(--f-ui);transition:background .25s,transform .25s var(--ease)}
.ups::before{content:"+";font-size:16px;color:var(--accent)}
.ups b{font:500 12.5px var(--f-mono);color:var(--accent)}
.ups:hover{background:var(--panel-2);transform:translateY(-1px)}
.ups.done{background:#4E6823;color:#fff}.ups.done b,.ups.done::before{color:#fff}
#oLines .oq{display:flex;align-items:center;gap:6px}
#oLines .oq button{width:36px;height:36px;border-radius:50%;border:0;background:var(--panel);font-size:16px;transition:background .2s}
#oLines .oq button:hover{background:var(--panel-2)}
#oLines .oq output{min-width:20px;text-align:center;font:500 14px var(--f-mono)}
#oLines .os{font:500 14px var(--f-mono)}
#oLines .oempty{display:block;color:var(--text-2);padding:20px 0;border:0}
.ticket-t{display:flex;justify-content:space-between;align-items:baseline;padding-top:14px;font:800 22px var(--f-display)}
.ticket-t b{font:500 22px var(--f-mono);color:var(--accent)}
.oform{display:grid;gap:14px}
.oform label{display:grid;gap:7px;font:600 13px var(--f-ui);letter-spacing:.02em;color:#E3D3BE}
.ofs{border:0;margin:0;padding:0;display:grid;gap:7px}
.ofs legend{padding:0;margin-bottom:7px;font:600 13px var(--f-ui);letter-spacing:.02em;color:#E3D3BE}
.oform [aria-invalid=true]{box-shadow:0 0 0 2px #FF8A78}
.oform input:focus,.oform select:focus,.oform textarea:focus{outline:none;box-shadow:0 0 0 2px var(--saffron)}
.oform select:disabled{opacity:.55}
.oprep,.omin{margin:-6px 0 0;font-size:13.5px;color:#D9C6AE}
.omin{color:var(--saffron)}
.omin:empty,.oprep:empty,.oclosed:empty{display:none}
.omsg a,.ocall a:not(.btn){color:var(--saffron)}
#oPay.busy{opacity:.75;cursor:progress}
.ocall{background:rgba(245,237,224,.06);border-radius:24px;padding:28px;box-shadow:inset 0 0 0 1px rgba(245,237,224,.12)}
.ocall h3{margin:0;font:800 26px var(--f-display);font-variation-settings:"SOFT" 100,"WONK" 1}
.ocall p{color:#E3D3BE;margin:10px 0 20px}
.oform input,.oform select,.oform textarea{font:500 16px var(--f-body);color:var(--ink);background:#FBF6EE;border:0;border-radius:14px;padding:13px 14px;width:100%}
.oform textarea{min-height:76px;resize:vertical}
.omode{display:flex;gap:8px}
.omode label{flex:1;position:relative;display:block}
.omode input{position:absolute;opacity:0}
.omode span{display:block;text-align:center;padding:12px;min-height:46px;border-radius:14px;background:rgba(245,237,224,.1);color:#F5EDE0;font:600 15px var(--f-ui);letter-spacing:0;cursor:pointer;transition:background .25s}
.omode input:focus-visible+span{outline:2px solid var(--saffron);outline-offset:2px}
.omode input:checked+span{background:var(--saffron);color:var(--night)}
#oPay{justify-content:center;font-size:17px;padding:16px}
#oPay:disabled{opacity:.45;cursor:not-allowed}
.omsg{min-height:20px;font-size:14.5px;color:#E3D3BE;margin:0}
.omsg.err{color:#FFB4A8}
.osecure{font-size:13px;color:#C9B49C;margin:0}
.oclosed{color:var(--saffron);font-size:14px;margin:0}
.obanner{background:var(--saffron);color:var(--espresso);border-radius:18px;padding:16px 20px;font-weight:600;margin-bottom:26px}
.obanner.ok{display:grid;gap:8px;background:linear-gradient(135deg,#F6C64A,var(--saffron));padding:24px;box-shadow:0 24px 50px -30px rgba(0,0,0,.8)}
.obanner .ob-t{font:800 clamp(24px,2.4vw,32px)/1.1 var(--f-display);font-variation-settings:"SOFT" 100,"WONK" 1}
html:lang(ar) .obanner .ob-t{font-family:'Reem Kufi'}
.obanner .ob-n{font:600 15px var(--f-ui);letter-spacing:.02em}
.obanner span{font-weight:500}
.obanner .ob-l{margin:2px 0 0;padding:0;list-style:none;font:500 14px/1.5 var(--f-ui)}
.obanner .ob-a{display:flex;gap:8px;flex-wrap:wrap;margin-top:6px}
.obanner .btn-light{background:rgba(36,22,15,.1);color:var(--espresso);box-shadow:inset 0 0 0 1.5px rgba(36,22,15,.3);min-height:44px;padding:10px 18px;font-size:14px}
.obanner small{font:500 12.5px var(--f-ui);opacity:.85}
.odeliv{margin-top:26px;padding-top:20px;border-top:1px solid rgba(245,237,224,.15);display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.odeliv p{margin:0;color:#D9C6AE;flex-basis:100%}
@media (max-width:860px){.order-in{grid-template-columns:1fr}}


/* ---------- 7 · À propos, avis, infos ---------- */
.about{padding:clamp(130px,13vw,180px) var(--gut) clamp(60px,8vw,100px);overflow:hidden;background:linear-gradient(180deg,var(--night) 0,rgba(42,29,23,0) 130px) no-repeat}
.ab-grid{max-width:1280px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.9fr);gap:clamp(36px,6vw,100px);align-items:center}
.ab-text p{color:var(--text-2);font-size:clamp(16px,1.25vw,19px);line-height:1.6;max-width:50ch;margin:22px 0 0}
.ab-facts{list-style:none;padding:0;margin:40px 0 0;display:flex;gap:clamp(22px,4vw,56px);flex-wrap:wrap}
.ab-facts b{display:block;font:900 clamp(40px,4.4vw,64px)/1 var(--f-display);font-variation-settings:"SOFT" 100,"WONK" 1;color:var(--accent)}
.ab-facts span{display:block;margin-top:8px;font:500 12.5px var(--f-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--text-2)}
html:lang(ar) .ab-facts span{letter-spacing:0;font:500 14px 'Readex Pro'}
.ab-photo{position:relative;margin:0;aspect-ratio:4/5;border-radius:28px;overflow:hidden;clip-path:inset(12% 8% 12% 8% round 28px);transition:clip-path 1.4s var(--ease)}
.ab-photo.in,.static .ab-photo{clip-path:inset(0 0 0 0 round 28px)}
.ab-photo img{width:100%;height:100%;object-fit:cover;transform:scale(1.15);transition:transform 2.2s var(--ease)}
.ab-photo.in img{transform:scale(1)}
.ab-stamp{position:absolute;left:-1px;bottom:26px;background:var(--canvas);border-radius:0 18px 18px 0;padding:14px 20px;font:800 19px/1.15 var(--f-display);font-variation-settings:"SOFT" 100,"WONK" 1}
.ab-stamp small{display:block;font:500 11.5px var(--f-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--text-2);margin-bottom:4px}
html[dir=rtl] .ab-stamp{left:auto;right:-1px;border-radius:18px 0 0 18px}
.rv{max-width:1280px;margin:clamp(80px,10vw,140px) auto 0}
.rv-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;flex-wrap:wrap;margin-bottom:34px}
.rv-head .h2{font-size:clamp(34px,4vw,62px)}
.rv-g{display:inline-flex;align-items:center;gap:10px;color:var(--ink);font-weight:600;text-decoration:none;border-bottom:1.5px solid rgba(43,24,16,.25);padding-bottom:4px;transition:border-color .3s}
.rv-g:hover{border-color:var(--ink)}
.rv-g svg,.rv-card figcaption svg{width:18px;height:18px;flex:none}
.rv-rail{margin:0 calc(var(--gut)*-1);overflow:hidden;-webkit-mask:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.rv-track{display:flex;gap:18px;width:max-content;padding:6px var(--gut);animation:rv 70s linear infinite}
.rv-rail:hover .rv-track,.rv-rail:focus-within .rv-track{animation-play-state:paused}
html[dir=rtl] .rv-track{animation-name:rv-rtl}
@keyframes rv{to{transform:translateX(-50%)}}
@keyframes rv-rtl{to{transform:translateX(50%)}}
@media (prefers-reduced-motion:reduce){.rv-rail{overflow-x:auto}.rv-track{animation:none}.rv-track [aria-hidden=true]{display:none}}
.rv-card{flex:none;width:clamp(270px,26vw,360px);margin:0;background:#FBF6EE;border-radius:22px;padding:24px 24px 20px;display:flex;flex-direction:column;gap:16px;box-shadow:0 1px 0 rgba(43,24,16,.06)}
.rv-stars{display:flex;gap:3px;color:#C48A0C}
.rv-stars svg{width:17px;height:17px}
.rv-stars .off{color:rgba(43,24,16,.15)}
.rv-card blockquote{margin:0;font:600 clamp(18px,1.4vw,21px)/1.35 var(--f-display);font-variation-settings:"SOFT" 100,"WONK" 0;flex:1}
html:lang(ar) .rv-card blockquote{font:500 18px/1.6 'Readex Pro'}
.rv-card figcaption{display:flex;align-items:center;gap:10px;font-size:14px;color:var(--text-2)}
.rv-card figcaption b{color:var(--ink)}
.rv-card figcaption small{display:block;font-size:12px}
.infos{background:linear-gradient(180deg,var(--canvas) 0,var(--night) 130px,var(--night) calc(100% - 120px),var(--espresso) 100%);color:#F5EDE0;padding:clamp(150px,13vw,190px) var(--gut) clamp(90px,11vw,140px)}
.if-in{max-width:1280px;margin:0 auto;display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:clamp(32px,5vw,80px);align-items:stretch}
.infos .eyebrow{color:var(--saffron)}
.infos .h2{color:#F5EDE0}
.infos .h2 em{color:var(--saffron)}
.if-status{display:inline-flex;align-items:center;gap:10px;margin:26px 0 0;padding:9px 16px 9px 12px;border-radius:999px;background:rgba(245,237,224,.08);font-weight:600;font-size:15px}
.if-status i{width:10px;height:10px;border-radius:50%;background:#C9503F;box-shadow:0 0 0 4px rgba(201,80,63,.22)}
.if-status.open i{background:#7BC67E;box-shadow:0 0 0 4px rgba(123,198,126,.22);animation:pulse 2s ease-in-out infinite}
@keyframes pulse{50%{box-shadow:0 0 0 8px rgba(123,198,126,0)}}
.if-hours{margin:30px 0 0;display:grid;grid-template-columns:auto 1fr;column-gap:0}
.if-hours dt,.if-hours dd{margin:0;padding:11px 0;line-height:24px;border-bottom:1px solid rgba(245,237,224,.1);font-size:15.5px}
.if-hours dt{color:#D9C6AE}
.if-hours dd{text-align:end;font:500 14.5px var(--f-mono)}
.if-hours .now{color:var(--saffron)}
.if-hours .now dd,.if-hours dt.now{color:var(--saffron)}
.if-hours dd.off{color:var(--muted-dark)}
.if-addr{margin:30px 0 0;font-size:17px;line-height:1.5;font-style:normal}
.if-addr span{display:block;font:500 12.5px var(--f-mono);letter-spacing:.12em;text-transform:uppercase;color:#BFA98F;margin-bottom:6px}
html:lang(ar) .if-addr span{letter-spacing:0;font:500 14px 'Readex Pro'}
.if-btns{display:flex;gap:10px;flex-wrap:wrap;margin-top:26px}
.btn-light{background:rgba(245,237,224,.1);color:#F5EDE0;box-shadow:inset 0 0 0 1.5px rgba(245,237,224,.25)}
.btn-light:hover{background:rgba(245,237,224,.18)}
.btn svg{width:18px;height:18px}
.if-extra{margin:24px 0 0;color:#BFA98F;font-size:14px}
.if-map{position:relative;min-height:440px;border-radius:28px;overflow:hidden;background:#140d08}
.if-map>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.5;filter:saturate(.8) blur(2px);transform:scale(1.04)}
.if-map iframe{position:absolute;inset:0;width:100%;height:100%;border:0;filter:sepia(.2) saturate(.85)}
.if-mapbtn{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;border:0;background:radial-gradient(circle at 50% 55%,rgba(20,13,8,.78),rgba(20,13,8,.2) 60%);color:#F5EDE0;font:600 16px var(--f-body);cursor:pointer}
.if-mapbtn .pin{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:var(--accent);box-shadow:0 0 0 10px rgba(180,22,44,.25);transition:transform .4s var(--ease)}
.if-mapbtn:hover .pin{transform:translateY(-4px)}
.if-mapbtn .pin svg{width:26px;height:26px}
.if-mapbtn small{font-size:12.5px;color:#D9C6AE;font-weight:400}
@media (max-width:860px){.ab-grid,.if-in{grid-template-columns:1fr}.ab-photo{aspect-ratio:4/4.4}.if-map{min-height:320px}}
/* ---------- 8 · Footer: espresso, gold hairlines, a sleek sans for every label ---------- */
.foot{position:relative;background:linear-gradient(180deg,var(--espresso) 0,#1B110C 55%,#140C08 100%);color:#E3D3BE;padding:clamp(70px,9vw,110px) var(--gut) calc(28px + env(safe-area-inset-bottom));overflow:hidden;font-family:var(--f-ui)}
.foot::before{content:"";position:absolute;inset:0 var(--gut) auto;height:1px;background:linear-gradient(90deg,rgba(229,174,31,0),rgba(229,174,31,.4),rgba(229,174,31,0))}
.ft-top{max-width:1280px;margin:0 auto;display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:clamp(28px,4vw,60px)}
.ft-brand img{width:76px;height:76px}
.ft-brand p{font:800 clamp(24px,2.2vw,32px)/1.1 var(--f-display);font-variation-settings:"SOFT" 100,"WONK" 1;color:#F5EDE0;margin:18px 0 22px;max-width:14ch}
.ft-h{margin:0 0 16px;font:600 11.5px/1 var(--f-ui);letter-spacing:.2em;text-transform:uppercase;color:var(--saffron)}
html:lang(ar) .ft-h{letter-spacing:0;font:600 14px 'Readex Pro'}
.foot address,.foot .ft-col p{font-style:normal;line-height:1.75;margin:0;font-size:15px}
.ft-hours .fh-d{display:block;margin-top:10px;color:#F5EDE0;font-weight:600;font-size:14px}
.ft-hours .fh-d:first-child{margin-top:0}
.ft-hours bdi{display:block;font-size:14.5px;color:#D9C6AE;font-variant-numeric:tabular-nums}
.foot a:not(.btn){color:#F5EDE0;text-decoration:none;background:linear-gradient(var(--saffron),var(--saffron)) 0 100%/0 1px no-repeat;padding:4px 0;transition:background-size .45s var(--ease),color .3s}
html[dir=rtl] .foot a:not(.btn){background-position:100% 100%}
.foot a:not(.btn):hover{background-size:100% 1px;color:#fff}
.ft-col ul{list-style:none;margin:0;padding:0;display:grid;gap:6px;font-size:15px}
.ft-col address+ul{margin-top:12px}
.ft-nav{padding-top:14px!important;margin-top:16px!important;border-top:1px solid rgba(245,237,224,.1)}
.ft-word{max-width:1280px;margin:clamp(50px,7vw,90px) auto 0;font:900 clamp(40px,15.5vw,250px)/.8 var(--f-display);font-variation-settings:"SOFT" 100,"WONK" 1;letter-spacing:-.04em;white-space:nowrap;text-align:center;color:transparent;background:linear-gradient(180deg,rgba(229,174,31,.42),rgba(229,174,31,.03) 88%);-webkit-background-clip:text;background-clip:text;user-select:none}
.ft-bot{max-width:1280px;margin:34px auto 0;padding-top:22px;border-top:1px solid rgba(245,237,224,.1);display:flex;gap:10px 24px;flex-wrap:wrap;justify-content:space-between;align-items:center;font-size:13px;color:#B9A48D}
.ft-bot button{border:0;background:none;color:#E3D3BE;font:inherit;text-decoration:underline;text-underline-offset:3px;cursor:pointer;padding:12px 0;min-height:44px}
.ft-bot button:hover{color:#fff}
.legal{max-width:640px;width:calc(100% - 32px);border:0;border-radius:24px;padding:30px 28px 24px;background:var(--canvas);color:var(--ink);line-height:1.55;font-size:15px}
.legal::backdrop{background:rgba(28,19,15,.6)}
.legal h3{margin:0 0 6px;font:800 26px var(--f-display);font-variation-settings:"SOFT" 100,"WONK" 1}
.legal h4{margin:20px 0 4px;font:600 15px var(--f-body)}
.legal p{margin:0;color:var(--text-2)}
.legal .btn{margin-top:24px}
@media (max-width:860px){.ft-top{grid-template-columns:1fr 1fr}.ft-brand{grid-column:1/-1}}
@media (max-width:420px){.ft-top{grid-template-columns:1fr}}

/* ---------- 3 · Salé ou sucré ---------- */
section.blk{position:relative;padding:clamp(80px,11vw,150px) var(--gut)}
.eyebrow{color:var(--text-2);display:block;margin-bottom:16px}
.h2{margin:0;font-size:clamp(38px,4.8vw,78px)}
.reveal{opacity:0;transform:translateY(26px);transition:opacity .9s var(--ease),transform .9s var(--ease)}
.reveal.in,.static .reveal{opacity:1;transform:none}
.duo{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(32px,6vw,96px);align-items:center;max-width:1280px;margin:0 auto}
.switch{position:relative;display:inline-grid;grid-template-columns:1fr 1fr;background:var(--panel);border-radius:999px;padding:5px;margin:30px 0 28px}
.switch button{position:relative;z-index:1;border:0;background:none;padding:12px 34px;font:700 22px/1 var(--f-display);font-variation-settings:"SOFT" 100,"WONK" 1;color:var(--text-2);transition:color .35s}
.switch button[aria-pressed=true]{color:#FFF6EC}
.switch .pill{position:absolute;top:5px;bottom:5px;left:5px;width:calc(50% - 5px);border-radius:999px;background:var(--cocoa);transition:transform .55s cubic-bezier(.34,1.4,.64,1),background .4s}
.duo[data-v=sale] .switch .pill{transform:translateX(100%);background:#4E6823}
html[dir=rtl] .switch .pill{left:auto;right:5px}
html[dir=rtl] .duo[data-v=sale] .switch .pill{transform:translateX(-100%)}
.price{direction:ltr;unicode-bidi:isolate}
.duo-name{font-size:clamp(28px,2.8vw,42px);margin:0 0 10px}
.duo-desc{color:var(--text-2);max-width:44ch;margin:0 0 18px}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 26px;padding:0;list-style:none}
.chips li{font:500 13px var(--f-mono);letter-spacing:.03em;padding:9px 14px;border-radius:999px;background:var(--panel);animation:chip .5s var(--ease) both}
.chips li:nth-child(2){animation-delay:.06s}.chips li:nth-child(3){animation-delay:.12s}.chips li:nth-child(4){animation-delay:.18s}
@keyframes chip{from{opacity:0;transform:translateY(8px) scale(.94)}}
.duo[data-v=sale] .chips li:first-child{background:rgba(141,163,74,.25)}
.buy{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.price{font:500 32px/1 var(--f-mono);color:var(--accent)}
.micro{margin:14px 0 0;font-size:14px;color:var(--text-2)}
.duo-photo{position:relative;aspect-ratio:4/5;border-radius:28px;overflow:hidden;background:var(--panel);box-shadow:0 34px 80px -34px rgba(74,44,29,.5)}
.duo-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:opacity .8s var(--ease),transform 1.4s var(--ease),filter .8s var(--ease)}
.duo-photo .im-sale{opacity:0;transform:scale(1.06);filter:blur(6px)}
.duo[data-v=sale] .duo-photo .im-sale{opacity:1;transform:none;filter:none}
.duo[data-v=sale] .duo-photo .im-sucre{opacity:0;transform:scale(1.06);filter:blur(6px)}
.duo-photo .sweep{position:absolute;inset:-10% -60%;z-index:2;pointer-events:none;background:linear-gradient(105deg,rgba(255,246,236,0) 40%,rgba(255,236,190,.38) 50%,rgba(255,246,236,0) 60%);transform:translateX(-70%);opacity:0}
.duo-photo.swap .sweep{animation:sweep 1.1s cubic-bezier(.65,0,.35,1)}
@keyframes sweep{0%{opacity:1;transform:translateX(-70%)}100%{opacity:1;transform:translateX(70%)}}
.switch button:focus-visible{outline:none;box-shadow:0 0 0 2px var(--saffron);border-radius:999px}
.duo-tag{position:absolute;left:18px;bottom:18px;z-index:3;font:600 12px var(--f-ui);letter-spacing:.12em;text-transform:uppercase;color:var(--ink);background:rgba(251,246,238,.95);padding:8px 13px;border-radius:999px;box-shadow:0 6px 16px -8px rgba(20,13,8,.5)}
html[dir=rtl] .duo-tag{left:auto;right:18px}
@media (max-width:860px){.duo{grid-template-columns:1fr}.duo-photo{order:-1}.switch button{padding:10px 26px;font-size:20px}}
@media (prefers-reduced-motion:reduce){.duo-photo img,.switch .pill{transition:none}.chips li{animation:none}}
/* Arabic: own faces, right-to-left layout, text column on the right */
html:lang(ar) body{font-family:'Readex Pro',var(--f-body)}
html:lang(ar) .disp{font-family:'Reem Kufi',var(--f-display);font-weight:700;letter-spacing:0;line-height:1.25}
html:lang(ar) .disp em{font-style:normal}
html:lang(ar) .mono{font-family:'Readex Pro',var(--f-mono);letter-spacing:0;text-transform:none;font-size:14px}
html[dir=rtl] .nav ul{margin:0 10px 0 auto}
html[dir=rtl] .caps{left:auto;right:var(--gut)}
html[dir=rtl] .scrim{inset:0 0 0 auto;background:linear-gradient(270deg,rgba(245,237,224,.94) 0%,rgba(245,237,224,.78) 45%,rgba(245,237,224,0) 100%)}
html[dir=rtl] .halal,html[dir=rtl] .counter,html[dir=rtl] .ring{right:auto;left:var(--gut)}
@media (max-aspect-ratio:1/1){
  html[dir=rtl] .caps{left:0;right:0}
  html[dir=rtl] .scrim{inset:auto 0 0 0;background:linear-gradient(0deg,rgba(245,237,224,1) 0%,rgba(245,237,224,.97) calc(100% - 56px),rgba(245,237,224,0) 100%)}
  html[dir=rtl] .halal{left:10px}
  html[dir=rtl] .ring{left:16px}
  html[dir=rtl] .counter{left:auto;right:20px}
  html[dir=rtl] .nav .lang{margin-left:0;margin-right:auto}
}
.veg{display:inline-block;vertical-align:middle;margin-inline-start:6px;padding:3px 8px;border-radius:999px;background:rgba(78,104,35,.12);color:#3F561C;font:600 11px/1.3 var(--f-ui);letter-spacing:.02em;white-space:nowrap}
/* tap targets: 44 px minimum everywhere (audit 5 Oct) */
.nav ul a{padding:14px 0;min-height:44px}
.nav ul a::after{bottom:8px}
.lang{padding:2px}
.lang button{min-height:44px;min-width:44px}
.add{min-height:44px}
.dcard .add{min-height:44px}
.switch button{min-height:48px}
.csearch input{min-height:44px}
.rv-g{min-height:44px;padding:10px 0 6px}
@media (max-width:860px){.lang button{min-width:40px;min-height:44px;padding:0 6px}.nav .logo{width:44px;height:44px}}
@media (max-width:600px){.dcard .add{min-height:44px}}
