/* =========================================================
   LE RITAL — V3 · charte graphique 2026 « Le R prend feu »
   Rouge Feu domine, Crème Farine respire, Jaune Braise et Brun Bois relancent.
   Lilita One (capitales) pour titres / produits / prix / boutons, Rubik pour le texte.
   ========================================================= */

:root{
  --rouge:#F22A2A; --rouge-2:#C8141C; --cream:#FAF1E2; --cream-2:#F3E4CC; --brun:#45190D;
  --jaune:#FFB222; --jaune-2:#F29F00; --ink:#45190D; --ink-2:#7A5444;
  --f-display:"Lilita One",system-ui,sans-serif;
  --f-body:"Rubik",system-ui,-apple-system,sans-serif;
  --pad:clamp(1.1rem,5vw,2.4rem); --maxw:1200px; --hd:64px;
  --e:cubic-bezier(.16,1,.3,1);
}
@media(min-width:900px){:root{--hd:76px}}

*,*::before,*::after{box-sizing:border-box}*{margin:0}
html{scroll-behavior:smooth;overflow-x:clip;-webkit-text-size-adjust:100%;scroll-padding-top:var(--hd)}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{font-family:var(--f-body);background:var(--cream);color:var(--ink);line-height:1.55;overflow-x:clip;-webkit-font-smoothing:antialiased}
img,svg{display:block;max-width:100%;height:auto}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
:focus-visible{outline:3px solid var(--jaune);outline-offset:3px;border-radius:6px}
.wrap{width:100%;max-width:var(--maxw);margin-inline:auto;padding-inline:var(--pad)}

/* titres : Lilita, capitales, serrés */
.h{font-family:var(--f-display);text-transform:uppercase;line-height:.95;letter-spacing:-.01em;
   font-size:clamp(2rem,5.4vw,3.4rem);color:var(--ink)}
.h em{font-style:normal;color:var(--rouge)}
.lab{font:700 .72rem/1.3 var(--f-body);letter-spacing:.18em;text-transform:uppercase}
.frise{display:block;width:120px;height:22px;background:var(--rouge);
  -webkit-mask:url("../assets/brand/flamme-f15.svg") center/contain no-repeat;mask:url("../assets/brand/flamme-f15.svg") center/contain no-repeat}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:.45em;
  font-family:var(--f-display);text-transform:uppercase;letter-spacing:.02em;font-size:1.02rem;line-height:1.1;
  padding:.82em 1.6em;border-radius:999px;background:var(--rouge);color:var(--cream);text-align:center;
  transition:transform .2s var(--e),background .2s}
.btn:hover{background:var(--rouge-2);transform:translateY(-2px)}
.btn:active{transform:translateY(0)}
.btn--sm{font-size:.86rem;padding:.6em 1.15em}
.btn--gold{background:var(--jaune);color:var(--brun)}
.btn--gold:hover{background:var(--jaune-2)}
.btn--cream{background:var(--cream);color:var(--rouge)}
.btn--cream:hover{background:#fff}
.btn--dark{background:var(--brun);color:var(--cream)}
.btn--dark:hover{background:#2c0f07}

/* ---------- EN-TÊTE : bandeau rouge (planche 26) ---------- */
.hd{position:fixed;inset:0 0 auto 0;z-index:100;height:var(--hd);background:var(--rouge);color:var(--cream);
  transition:box-shadow .3s}
.hd.stuck{box-shadow:0 6px 22px -10px rgba(69,25,13,.55)}
.hd__in{height:100%;max-width:var(--maxw);margin-inline:auto;padding-inline:var(--pad);
  display:flex;align-items:center;gap:1.6rem}
.hd__logo img{height:calc(var(--hd) * .62);width:auto;transition:transform .3s var(--e)}
.hd__logo:hover img{transform:rotate(-6deg) scale(1.05)}
.hd__nav{display:none;align-items:center;gap:1.6rem}
.hd__nav a{font-family:var(--f-display);text-transform:uppercase;letter-spacing:.03em;font-size:.95rem;
  position:relative;padding-block:.3em;white-space:nowrap;transition:color .2s}
.hd__nav a::after{content:"";position:absolute;left:0;right:100%;bottom:0;height:3px;background:var(--jaune);
  border-radius:2px;transition:right .25s var(--e)}
.hd__nav a:hover::after,.hd__nav a[aria-current]::after{right:0}
.hd__nav a[aria-current]{color:var(--jaune)}
.hd__right{margin-inline-start:auto;display:flex;align-items:center;gap:.5rem}
.hd__burger{width:44px;height:44px;display:grid;place-items:center;border-radius:10px;transition:background .2s}
.hd__burger:hover{background:rgba(255,255,255,.14)}
@media(max-width:560px){.hd__cta{display:none}}
@media(min-width:900px){.hd__burger{display:none}.hd__nav{display:flex}}

.drw{position:fixed;inset:var(--hd) 0 0 0;z-index:95;background:var(--rouge) url("../assets/brand/motif.svg") 0 0/150px auto;
  display:grid;place-content:center;opacity:0;pointer-events:none;transition:opacity .3s var(--e)}
body.nav-open .drw{opacity:1;pointer-events:auto}
.drw__in{display:grid;gap:.5rem;text-align:center}
.drw a{font-family:var(--f-display);text-transform:uppercase;font-size:clamp(2rem,8vw,2.8rem);color:var(--cream);
  padding:.15em;transition:color .2s}
.drw a:hover,.drw a[aria-current]{color:var(--jaune)}
.drw__glovo{margin-top:1rem;font-size:1.05rem!important;color:var(--brun)!important;background:var(--jaune);
  border-radius:999px;padding:.7em 1.4em!important;justify-self:center}

/* ---------- STATUT OUVERT / FERMÉ ---------- */
.hd__open{display:inline-flex;align-items:center;gap:.45em;font:600 .78rem/1 var(--f-body);white-space:nowrap;
  background:rgba(69,25,13,.22);border-radius:999px;padding:.5em .85em}
.hd__dot{width:.6em;height:.6em;border-radius:50%;background:#7BE07B;box-shadow:0 0 0 0 rgba(123,224,123,.6)}
.hd__open[data-st="closed"] .hd__dot,.hd__open[data-st="break"] .hd__dot{background:var(--jaune);box-shadow:none}
@media(prefers-reduced-motion:no-preference){.hd__open[data-st="open"] .hd__dot{animation:open-pulse 1.8s ease-out infinite}}
@keyframes open-pulse{0%{box-shadow:0 0 0 0 rgba(123,224,123,.65)}100%{box-shadow:0 0 0 9px rgba(123,224,123,0)}}
.hd__os{display:none}
@media(max-width:899px){.hd__ol{display:none}.hd__os{display:inline}}

/* ---------- LANGUE ---------- */
.langdd{position:relative}
.langdd__btn{display:inline-flex;align-items:center;gap:.3em;font-family:var(--f-display);text-transform:uppercase;
  font-size:.85rem;letter-spacing:.03em;padding:.5em .7em;border-radius:999px;transition:background .2s}
.langdd__btn:hover{background:rgba(255,255,255,.14)}
.langdd__globe{width:1.05em;height:1.05em}
.langdd__chev{width:.8em;height:.8em;transition:transform .25s}
.langdd.open .langdd__chev{transform:rotate(180deg)}
.langdd__menu{position:absolute;top:calc(100% + .5rem);right:0;min-width:165px;background:var(--cream);color:var(--ink);border-radius:14px;
  box-shadow:0 20px 50px -18px rgba(69,25,13,.55);padding:.35rem;display:none;flex-direction:column;z-index:130}
.langdd.open .langdd__menu{display:flex}
.langdd__item{font-size:.92rem;font-weight:600;text-align:left;padding:.6em .8em;border-radius:9px;transition:background .15s}
.langdd__item:hover{background:var(--cream-2)}
.langdd__item.active{background:var(--rouge);color:var(--cream)}
[dir="rtl"] .langdd__menu{right:auto;left:0}
[dir="rtl"] .langdd__item{text-align:right}

/* ---------- ACCUEIL : rouge + motif vitrine + grand R + arche (planche 27) ---------- */
.hero{position:relative;overflow:hidden;isolation:isolate;color:var(--cream);
  background:var(--rouge) url("../assets/brand/motif.svg") 0 0/150px auto;
  padding:calc(var(--hd) + clamp(2rem,6vw,4rem)) 0 clamp(3rem,7vw,5rem)}
/* grand R en marquage ton sur ton (planche 08) : présent sans gêner la lecture */
.hero__r{position:absolute;z-index:-1;left:-7%;bottom:-24%;width:clamp(300px,48vw,640px);aspect-ratio:40.82/46.28;background:var(--rouge-2);
  -webkit-mask:url("../assets/brand/sigle-creme.svg") center/contain no-repeat;mask:url("../assets/brand/sigle-creme.svg") center/contain no-repeat}
.hero__in{display:grid;gap:clamp(2.2rem,5vw,3.5rem);align-items:center}
@media(min-width:900px){.hero__in{grid-template-columns:1.1fr .9fr}.hero{min-height:min(100svh,900px);display:grid;align-items:center}}
.hero__txt{display:grid;justify-items:start;gap:1rem}
.hero .lab{opacity:.92}
.hero h1{font-family:var(--f-display);text-transform:uppercase;line-height:.92;letter-spacing:-.015em;
  font-size:clamp(2.9rem,6.4vw,5rem);color:var(--cream)}
@media(max-width:899px){.hero h1{font-size:clamp(2.7rem,11vw,4.4rem)}}
.hero h1 em{font-style:normal;color:var(--jaune)}
.hero__ar{font-family:"Baloo Bhaijaan 2",var(--f-display);font-weight:800;color:var(--jaune);font-size:clamp(1.5rem,3.6vw,2.2rem);line-height:1.2}
.hero__lead{font-weight:500;font-size:clamp(1.05rem,2.1vw,1.2rem);line-height:1.45;max-width:32ch;color:rgba(250,241,226,.92)}
.hero__cta{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:.3rem}
.pill{display:inline-flex;align-items:center;gap:.5em;font-family:var(--f-display);text-transform:uppercase;letter-spacing:.02em;
  background:var(--jaune);color:var(--brun);border-radius:999px;padding:.55em 1.2em;font-size:.95rem;margin-top:.5rem}
.pill::before{content:"";width:.6em;height:.6em;border-radius:50%;background:var(--rouge);box-shadow:0 0 0 3px rgba(242,42,42,.25)}
@media(prefers-reduced-motion:no-preference){.pill::before{animation:pulse 1.8s ease-in-out infinite}}
@keyframes pulse{50%{box-shadow:0 0 0 7px rgba(242,42,42,0)}}

.arch{position:relative;justify-self:center;width:min(100%,440px)}
.arch__ph{position:relative;aspect-ratio:4/5;border-radius:50% 50% 0 0/40% 40% 0 0;overflow:hidden;background:var(--rouge-2)}
.arch__ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
#archSlides img{opacity:0;transform:scale(1.06);transition:opacity 1.1s var(--e),transform 5s linear}
#archSlides img.on{opacity:1;transform:scale(1)}
.hero .arch__ph{box-shadow:0 0 0 10px var(--cream),0 30px 60px -20px rgba(60,10,5,.55)}
@media(prefers-reduced-motion:no-preference){
  .hero__txt>*{opacity:0;transform:translateY(18px);animation:up .8s var(--e) forwards}
  .hero__txt>*:nth-child(2){animation-delay:.06s}.hero__txt>*:nth-child(3){animation-delay:.12s}
  .hero__txt>*:nth-child(4){animation-delay:.18s}.hero__txt>*:nth-child(5){animation-delay:.24s}.hero__txt>*:nth-child(6){animation-delay:.3s}
  .arch{opacity:0;transform:translateY(26px) rotate(1.5deg);animation:up 1s var(--e) .15s forwards}
  }
@keyframes up{to{opacity:1;transform:none}}

/* ---------- BANDEAU DÉFILANT : brun bois, phrases FR + AR, R-flamme et icônes de vitrine en alternance ---------- */
.mq{position:relative;z-index:2;background:var(--brun);color:var(--cream);overflow:hidden;padding-block:1.1rem}
.mq__track{display:flex;width:max-content}
.mq__run{display:flex;align-items:center;gap:2rem;padding-right:2rem;flex:none}
.mq__i{font-family:var(--f-display);text-transform:uppercase;font-size:clamp(1.3rem,2.7vw,1.85rem);white-space:nowrap;line-height:1;letter-spacing:.01em}
.mq__i[lang="ar"]{font-family:"Baloo Bhaijaan 2",var(--f-display);font-weight:800;color:var(--jaune);text-transform:none}
.mq__s{display:block;flex:none;height:clamp(30px,3.4vw,40px);aspect-ratio:1;background:var(--cream);opacity:.92;
  -webkit-mask:var(--m) center/contain no-repeat;mask:var(--m) center/contain no-repeat}
.mq__s--r{--m:url("../assets/brand/sigle-creme.svg");background:var(--jaune);opacity:1}
.mq__s--diner{--m:url("../assets/brand/moments/diner.svg")}
.mq__s--dejeuner{--m:url("../assets/brand/moments/dejeuner.svg")}
.mq__s--petit-dej{--m:url("../assets/brand/moments/petit-dej.svg")}
@media(prefers-reduced-motion:no-preference){.mq__track{animation:mq 46s linear infinite}.mq:hover .mq__track{animation-play-state:paused}}
@keyframes mq{to{transform:translateX(-50%)}}
[dir="rtl"] .mq__track{animation-direction:reverse}

/* ---------- NOS SPÉCIALITÉS : 3 cartes couleur, produit centré ---------- */
.specs{display:grid;gap:clamp(1rem,2.4vw,1.5rem);grid-template-columns:1fr}
@media(min-width:760px){.specs{grid-template-columns:repeat(3,1fr)}}
.spec{position:relative;display:grid;justify-items:center;align-content:start;text-align:center;gap:.25rem;border-radius:28px;
  padding:clamp(1rem,2.6vw,1.6rem) clamp(1.2rem,3vw,1.8rem) clamp(1.5rem,3.4vw,2rem);isolation:isolate;transition:transform .35s var(--e)}
.spec:hover{transform:translateY(-6px)}
.spec--rouge{background:var(--rouge) url("../assets/brand/motif.svg") 0 0/130px auto;color:var(--cream)}
.spec--jaune{background:var(--jaune) url("../assets/brand/motif-brun.svg") 0 0/130px auto;color:var(--brun)}
.spec--brun{background:var(--brun) url("../assets/brand/motif-creme.svg") 0 0/130px auto;color:var(--cream)}
.spec__img{position:relative;width:min(88%,330px);aspect-ratio:1;display:grid;place-items:center;isolation:isolate}
.spec__img::after{content:"";position:absolute;z-index:-1;left:14%;right:14%;bottom:7%;height:12%;border-radius:50%;
  background:radial-gradient(closest-side,rgba(30,6,2,.38),transparent);transition:transform .5s var(--e),opacity .5s}
.spec__img img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 14px 14px rgba(30,6,2,.3));transition:transform .5s var(--e)}
.spec:hover .spec__img img{transform:translateY(-12px) rotate(-5deg) scale(1.06)}
.spec:hover .spec__img::after{transform:scale(.8);opacity:.65}
.spec__n{font-family:var(--f-display);text-transform:uppercase;font-size:clamp(2.2rem,4.6vw,3rem);line-height:.9;margin-top:.2rem}
.spec__n::after{content:"";display:block;width:92px;height:16px;margin:.55rem auto 0;background:currentColor;opacity:.9;
  -webkit-mask:url("../assets/brand/flamme-f15.svg") center/contain no-repeat;mask:url("../assets/brand/flamme-f15.svg") center/contain no-repeat}
.spec--jaune .spec__n::after{background:var(--rouge)}
.spec__ar{font-family:"Baloo Bhaijaan 2",var(--f-display);font-weight:800;font-size:1.4rem;line-height:1.3}
.spec--rouge .spec__ar,.spec--brun .spec__ar{color:var(--jaune)}
.spec--jaune .spec__ar{color:var(--rouge)}
.spec__p{margin-top:.7rem;font-family:var(--f-display);text-transform:uppercase;font-size:1rem;border-radius:999px;padding:.45em 1.1em;
  background:var(--cream);color:var(--rouge)}
.spec--jaune .spec__p{background:var(--brun);color:var(--jaune)}

/* ---------- SECTIONS ---------- */
.s{padding-block:clamp(3rem,8vw,5.5rem)}
.s--alt{background:var(--cream-2)}
.s__hd{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-bottom:1.8rem}
.s__lnk{font-family:var(--f-display);text-transform:uppercase;font-size:.9rem;letter-spacing:.02em;color:var(--rouge);
  display:inline-flex;align-items:center;gap:.3em}
.s__lnk:hover{color:var(--rouge-2)}

/* ---------- PRODUITS : nom Lilita brun, prix rouge (planche 13) ---------- */
.rail{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(150px,1fr);gap:clamp(.6rem,2vw,1.4rem);
  overflow-x:auto;scroll-snap-type:x proximity;padding-bottom:.5rem;
  margin-inline:calc(-1*var(--pad));padding-inline:var(--pad);scrollbar-width:none}
.rail::-webkit-scrollbar{display:none}
@media(min-width:760px){.rail{grid-auto-flow:row;grid-template-columns:repeat(4,1fr);overflow:visible;margin-inline:0;padding-inline:0}}
.tile{scroll-snap-align:start;display:grid;justify-items:center;gap:.2rem;padding:.4rem;text-align:center}
.tile__img{position:relative;display:grid;place-items:center;width:100%;aspect-ratio:4/5;isolation:isolate;padding:16% 9% 8%}
.tile__img::before{content:"";position:absolute;z-index:-2;inset:0;border-radius:999px 999px 22px 22px;transition:transform .45s var(--e)}
.tile__img::after{content:"";position:absolute;z-index:-1;left:20%;right:20%;bottom:9%;height:9%;border-radius:50%;background:radial-gradient(closest-side,rgba(30,6,2,.35),transparent)}
.tile--rouge .tile__img::before{background:var(--rouge) url("../assets/brand/motif.svg") 0 0/110px auto}
.tile--jaune .tile__img::before{background:var(--jaune) url("../assets/brand/motif-brun.svg") 0 0/110px auto}
.tile--brun .tile__img::before{background:var(--brun) url("../assets/brand/motif-creme.svg") 0 0/110px auto}
.tile__img img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 14px 14px rgba(30,6,2,.3));transition:transform .45s var(--e)}
.tile:hover .tile__img::before{transform:scale(1.03)}
.tile:hover .tile__img img{transform:scale(1.07) translateY(-6px) rotate(-3deg)}
.tile__n{font-family:var(--f-display);text-transform:uppercase;letter-spacing:.01em;color:var(--ink);font-size:1.12rem;line-height:1.1}
.tile__p{font-family:var(--f-display);font-size:1.12rem;color:var(--rouge)}
.tile__p i{font-style:normal;font-size:.6em;margin-left:.15em}

/* ---------- CATÉGORIES : l'arche (composition A) ---------- */
.cats{display:grid;grid-template-columns:repeat(2,1fr);gap:clamp(1rem,2.4vw,1.6rem) clamp(.8rem,2vw,1.3rem)}
@media(min-width:620px){.cats{grid-template-columns:repeat(3,1fr)}}
@media(min-width:940px){.cats{grid-template-columns:repeat(5,1fr)}}
.cat{display:grid;gap:.6rem;justify-items:center}
.cat__img{display:block;width:100%;aspect-ratio:4/5;border-radius:50% 50% 0 0/40% 40% 0 0;overflow:hidden;background:var(--cream)}
.cat__img img{width:100%;height:100%;object-fit:cover;transition:transform .5s var(--e)}
.cat:hover .cat__img img{transform:scale(1.07)}
.cat__n{font-family:var(--f-display);text-transform:uppercase;letter-spacing:.01em;color:var(--rouge);font-size:1.08rem;text-align:center;line-height:1.1}

/* ---------- BEST SELLERS : rouge + motif vitrine, cartes crème en carrousel ---------- */
.best{background:var(--rouge) url("../assets/brand/motif.svg") 0 0/150px auto;color:var(--cream);
  padding-block:clamp(3.2rem,8vw,5.4rem);overflow:hidden}
.best__hd{display:flex;align-items:flex-end;gap:1rem;flex-wrap:wrap;margin-bottom:clamp(1.6rem,4vw,2.4rem);position:relative}
.best .h{color:var(--cream);margin-top:.5rem}
.best .lab{color:var(--jaune)}
.best__stk{width:clamp(84px,11vw,120px);transform:rotate(-12deg);filter:drop-shadow(0 10px 16px rgba(60,8,4,.45))}
@media(prefers-reduced-motion:no-preference){.best__stk{animation:wobble 4s ease-in-out infinite}}
@keyframes wobble{50%{transform:rotate(-4deg) scale(1.05)}}
.best__nav{margin-inline-start:auto;display:flex;gap:.5rem}
.best__arrow{width:48px;height:48px;border-radius:50%;background:var(--cream);color:var(--rouge);display:grid;place-items:center;transition:transform .2s var(--e),background .2s}
.best__arrow:hover{transform:scale(1.08);background:var(--jaune);color:var(--brun)}
.best__arrow svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2.8;stroke-linecap:round;stroke-linejoin:round}
[dir="rtl"] .best__arrow svg{transform:scaleX(-1)}
@media(max-width:620px){.best__nav{display:none}.best__stk{position:absolute;right:var(--pad);top:-.4rem;width:86px}
  [dir="rtl"] .best__stk{right:auto;left:var(--pad)}}
.best__rail{display:grid;grid-auto-flow:column;grid-auto-columns:clamp(220px,24vw,290px);gap:clamp(.8rem,2vw,1.2rem);
  overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;
  padding-inline:max(var(--pad),calc((100vw - var(--maxw))/2 + var(--pad)));padding-block:.6rem 1rem;scroll-padding-inline:max(var(--pad),calc((100vw - var(--maxw))/2 + var(--pad)))}
.best__rail::-webkit-scrollbar{display:none}
.bcard{scroll-snap-align:start;position:relative;display:grid;align-content:start;justify-items:start;gap:.35rem;text-align:start;
  background:var(--cream);color:var(--ink);border-radius:26px;padding:.4rem 1.3rem 1.3rem;min-height:100%;
  box-shadow:0 18px 34px -22px rgba(60,8,4,.7);transition:transform .35s var(--e)}
.bcard:hover{transform:translateY(-6px) rotate(-.6deg)}
.bcard__img{position:relative;width:100%;aspect-ratio:1;padding:12% 10% 6%;display:grid;place-items:center;isolation:isolate}
.bcard__img::after{content:"";position:absolute;z-index:-1;left:16%;right:16%;bottom:9%;height:12%;border-radius:50%;
  background:radial-gradient(closest-side,rgba(69,25,13,.32),transparent);transition:transform .45s var(--e),opacity .45s}
.bcard:hover .bcard__img::after{transform:scale(.85);opacity:.7}
.bcard__img img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 10px 10px rgba(69,25,13,.22));transition:transform .45s var(--e)}
.bcard:hover .bcard__img img{transform:translateY(-8px) scale(1.05) rotate(-3deg)}
.bcard__n{font-family:var(--f-display);text-transform:uppercase;font-size:1.45rem;line-height:1;margin-top:.2rem}
.bcard__d{font-size:.86rem;line-height:1.4;color:var(--ink-2);min-height:2.8em}
.bcard__f{width:100%;display:flex;align-items:center;justify-content:space-between;margin-top:.4rem}
.bcard__p{font-family:var(--f-display);font-size:1.45rem;color:var(--rouge)}
.bcard__p i{font-style:normal;font-size:.55em;margin-left:.12em}
.bcard__plus{width:40px;height:40px;border-radius:50%;background:var(--brun);color:var(--cream);display:grid;place-items:center;
  font:700 1.4rem/1 var(--f-body);transition:background .2s,transform .2s}
.bcard:hover .bcard__plus{background:var(--rouge);transform:rotate(90deg)}
.best__ft{margin-top:1.4rem}

/* ---------- LE MENU : mosaïque de catégories (tailles variées) ---------- */
.bento{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:29vw;grid-auto-flow:dense;gap:.45rem}
@media(min-width:760px){.bento{grid-template-columns:repeat(4,1fr);grid-auto-rows:clamp(180px,19vw,240px)}}
.bt{position:relative;display:block;overflow:hidden;isolation:isolate;border-radius:22px;background:var(--brun);color:var(--cream)}
.bt--xl{grid-column:span 2;grid-row:span 2;border-radius:999px 999px 22px 22px}
.bt--tall{grid-row:span 2;border-radius:999px 999px 22px 22px}
.bt--wide{grid-column:span 2}
.bt img{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;object-position:50% 62%;transition:transform .6s var(--e)}
.bt:hover img{transform:scale(1.07)}
.bt::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,rgba(32,8,3,.82) 0%,rgba(32,8,3,.25) 42%,transparent 62%)}
.bt__txt{position:absolute;left:clamp(.8rem,2vw,1.3rem);right:clamp(.8rem,2vw,1.3rem);bottom:clamp(.8rem,2vw,1.2rem);display:grid;justify-items:start;gap:.35rem}
.bt__n{font-family:var(--f-display);text-transform:uppercase;font-size:clamp(1.05rem,2vw,1.5rem);line-height:.95}
.bt--xl .bt__n{font-size:clamp(1.8rem,4.4vw,3.2rem)}
.bt--tall .bt__n,.bt--wide .bt__n{font-size:clamp(1.3rem,2.6vw,2rem)}
.bt__p{font-family:var(--f-display);text-transform:uppercase;font-size:.78rem;background:var(--jaune);color:var(--brun);border-radius:999px;padding:.32em .8em}
.bt--promo{background:var(--rouge) url("../assets/brand/motif.svg") 0 0/130px auto;display:grid;align-content:center;justify-items:start;gap:.3rem;
  padding:clamp(1rem,3vw,1.8rem)}
.bt--promo::after{display:none}
.bt__big{font-family:var(--f-display);font-size:clamp(3rem,7vw,5rem);line-height:.85;color:var(--jaune)}
.bt__sub{font-family:var(--f-display);text-transform:uppercase;font-size:clamp(.95rem,1.8vw,1.25rem);line-height:1.05;max-width:18ch}
.bt--promo .btn{margin-top:.6rem}
@media(max-width:759px){
  .bt{border-radius:16px}
  .bt--tall{grid-row:span 1;border-radius:16px}
  .bt--wide{grid-column:span 1}
  .bt--xl{border-radius:999px 999px 16px 16px}
  .bt__txt{left:.5rem;right:.5rem;bottom:.5rem;gap:.25rem}
  .bt__n,.bt--tall .bt__n,.bt--wide .bt__n{font-size:.82rem}
  .bt--xl .bt__n{font-size:1.5rem}
  .bt__p{font-size:.6rem;padding:.3em .6em}
  .bt--promo{grid-column:1/-1;grid-row:span 1;grid-template-columns:auto 1fr;align-items:center;column-gap:.8rem;padding:.8rem 1rem}
  .bt--promo .bt__big{grid-row:span 2;font-size:3rem}
  .bt--promo .bt__sub{font-size:.85rem}
  .bt--promo .btn{margin-top:0;justify-self:start;font-size:.72rem;padding:.5em .9em}
}
[dir="rtl"] .bt__txt{justify-items:start}

/* ---------- LE FEU : arche du four + typo + flammes (composition C) ---------- */
.feu{background:var(--brun);color:var(--cream);overflow:hidden;padding-block:clamp(3.6rem,9vw,6.4rem)}
.feu__in{display:grid;gap:clamp(2.4rem,5vw,4rem);align-items:center}
@media(min-width:860px){.feu__in{grid-template-columns:.85fr 1.15fr}}
.feu__arch{position:relative;justify-self:center;width:min(100%,400px)}
.feu__arch .arch__ph{box-shadow:0 0 0 10px rgba(250,241,226,.08)}
.feu__fl{position:absolute;left:-12%;bottom:-6%;width:46%;height:auto;transform-origin:50% 100%}
@media(prefers-reduced-motion:no-preference){.feu__fl{animation:lick 2.6s ease-in-out infinite alternate}}
@keyframes lick{0%{transform:scaleY(1) skewX(0)}50%{transform:scaleY(1.05) skewX(-2deg)}100%{transform:scaleY(.97) skewX(1.5deg)}}
.feu .lab{color:var(--jaune)}
.feu .h{color:var(--cream);margin-top:.8rem;font-size:clamp(2.4rem,6.4vw,4.2rem)}
.feu .h em{color:var(--jaune)}
.feu__ar{width:fit-content;font-family:"Baloo Bhaijaan 2",var(--f-display);font-weight:800;color:var(--rouge);font-size:clamp(1.4rem,3vw,1.9rem);margin-top:.4rem}
.feu p:not(.feu__ar){margin-top:1rem;max-width:46ch;color:rgba(250,241,226,.86);font-size:1.05rem}
.feu p strong{color:var(--cream);font-weight:600}
.feu__stats{display:grid;grid-template-columns:repeat(2,1fr);gap:1.2rem 1.4rem;margin:2rem 0 2.2rem;max-width:520px}
@media(min-width:560px){.feu__stats{grid-template-columns:repeat(4,1fr)}}
.feu__stats b{display:block;font-family:var(--f-display);font-weight:400;color:var(--jaune);font-size:clamp(1.6rem,3.4vw,2.1rem);line-height:1;text-transform:uppercase}
.feu__stats span{display:block;margin-top:.35rem;font-size:.8rem;line-height:1.35;color:rgba(250,241,226,.7)}

/* ---------- COMMANDER (page d'accueil) : Forno sur jaune ---------- */
.order{background:var(--jaune);color:var(--brun);padding-block:clamp(3.4rem,8vw,5.6rem);overflow:hidden}
.order__in{display:grid;gap:clamp(1.6rem,4vw,3rem);align-items:center}
@media(min-width:900px){.order__in{grid-template-columns:.8fr 1.2fr}}
.order__forno{justify-self:center;width:min(100%,420px)}
@media(prefers-reduced-motion:no-preference){.order__forno img{animation:bob 1.1s ease-in-out infinite alternate}}
@keyframes bob{from{transform:translateY(0) rotate(-1deg)}to{transform:translateY(-8px) rotate(1deg)}}
.order .lab{color:var(--rouge)}
.order .h{margin-top:.6rem}
.opts{display:grid;gap:.8rem;margin-top:1.6rem}
@media(min-width:620px){.opts{grid-template-columns:repeat(3,1fr)}}
.opt{background:var(--cream);border-radius:20px;padding:1.2rem 1.2rem 1.3rem;display:grid;align-content:start;justify-items:start;gap:.35rem}
.opt h3{font-family:var(--f-display);text-transform:uppercase;font-size:1.35rem;line-height:1;color:var(--rouge)}
.opt p{font-size:.9rem;color:var(--ink-2);line-height:1.45}
.opt .btn{margin-top:.6rem}

/* ---------- BANDEAUX PHOTO PLEIN ÉCRAN ---------- */
.cine{position:relative;min-height:clamp(340px,52vw,640px);display:grid;align-items:end;overflow:hidden;isolation:isolate;color:var(--cream);
  padding-block:clamp(2.2rem,6vw,4rem)}
.cine img{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover}
.cine::before{content:"";position:absolute;inset:0;z-index:-1;
  background:linear-gradient(90deg,rgba(38,10,4,.82) 0%,rgba(38,10,4,.45) 42%,rgba(38,10,4,0) 72%),linear-gradient(0deg,rgba(38,10,4,.55),transparent 55%)}
[dir="rtl"] .cine::before{background:linear-gradient(270deg,rgba(38,10,4,.82) 0%,rgba(38,10,4,.45) 42%,rgba(38,10,4,0) 72%),linear-gradient(0deg,rgba(38,10,4,.55),transparent 55%)}
.cine__t{font-family:var(--f-display);text-transform:uppercase;font-size:clamp(2.4rem,7.4vw,5.4rem);line-height:.92;letter-spacing:-.01em;max-width:11ch}
.cine__ar{width:fit-content;font-family:"Baloo Bhaijaan 2",var(--f-display);font-weight:800;color:var(--jaune);font-size:clamp(1.5rem,3.6vw,2.4rem);line-height:1.3;margin-top:.3rem}
@media(prefers-reduced-motion:no-preference){.cine img{animation:drift 18s ease-in-out infinite alternate}}
@keyframes drift{from{transform:scale(1.02)}to{transform:scale(1.1) translateX(-1.5%)}}

/* ---------- GALERIE ---------- */
.gal__at{display:block;margin-top:.4rem;font-weight:600;color:var(--rouge)}
.gal__g{display:grid;grid-template-columns:repeat(2,1fr);gap:clamp(.6rem,1.6vw,1rem)}
@media(min-width:760px){.gal__g{grid-template-columns:repeat(3,1fr)}}
.gal__t{display:block;aspect-ratio:4/5;border-radius:20px;overflow:hidden;background:var(--cream-2)}
.gal__t img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--e)}
.gal__t:hover img{transform:scale(1.06)}

/* ---------- FIN : Bon appétit + Forno qui traverse ---------- */
.bye{position:relative;overflow:hidden;background:var(--rouge) url("../assets/brand/motif.svg") 0 0/150px auto;color:var(--cream);
  text-align:center;padding:clamp(3.2rem,8vw,5rem) 0 0}
.bye__t{font-family:var(--f-display);text-transform:uppercase;font-size:clamp(3rem,12vw,7.5rem);line-height:.9;letter-spacing:-.01em}
.bye__ar{font-family:"Baloo Bhaijaan 2",var(--f-display);font-weight:800;color:var(--jaune);font-size:clamp(1.7rem,5vw,3rem);line-height:1.3;margin-top:.3rem}
.bye .lab{margin-top:1rem;opacity:.9}
.bye__road{position:relative;height:clamp(120px,16vw,170px);margin-top:1.6rem;border-bottom:3px solid rgba(250,241,226,.5)}
.bye__forno{position:absolute;bottom:6px;left:50%;width:clamp(120px,16vw,180px);transform:translateX(-50%)}
@media(prefers-reduced-motion:no-preference){
  .bye__forno{left:0;transform:none;animation:walk 16s linear infinite,bob .5s ease-in-out infinite alternate}
}
@keyframes walk{from{left:-200px}to{left:calc(100% + 20px)}}
[dir="rtl"] .bye__forno{animation-direction:normal}

/* ---------- COMMANDER : Forno (planches 19-20) ---------- */
.ord{display:grid;gap:clamp(.9rem,2vw,1.3rem);grid-template-columns:1fr}
@media(min-width:720px){.ord{grid-template-columns:1fr 1fr}}
.ord__c{background:var(--cream);border-radius:24px;padding:clamp(1.5rem,4vw,2.2rem);display:grid;justify-items:start;gap:.5rem}
.ord__f{height:118px;width:auto;margin-bottom:.6rem}
.ord__c h3{font-family:var(--f-display);text-transform:uppercase;font-size:1.6rem;line-height:1;color:var(--ink)}
.ord__c p{color:var(--ink-2);max-width:36ch}
.ord__c .btn{margin-top:.7rem}
.ord__btns{display:flex;flex-wrap:wrap;gap:.5rem}
.ord__btns .btn{margin-top:.7rem}

/* ---------- NOUS TROUVER : carte rouge + pictos (planche 17) ---------- */
.find{display:grid;gap:1.4rem}
@media(min-width:860px){.find{grid-template-columns:1fr 1.1fr;align-items:stretch}}
.find__card{background:var(--rouge) url("../assets/brand/motif.svg") 0 0/150px auto;color:var(--cream);border-radius:28px;padding:clamp(1.6rem,4vw,2.6rem)}
.find__card .h{color:var(--cream)}
.find__map{border-radius:28px;overflow:hidden;min-height:340px;background:var(--cream)}
.find__map iframe{width:100%;height:100%;min-height:340px;border:0;display:block}
.find dl{display:grid;gap:1.2rem;margin:1.6rem 0 0}
.find dt{display:flex;align-items:center;gap:.55rem;font:700 .72rem var(--f-body);text-transform:uppercase;letter-spacing:.18em;color:var(--jaune)}
.find dt svg{width:24px;height:24px;flex:none;fill:none;stroke:var(--cream);stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.find dd{margin:.3rem 0 0 calc(24px + .55rem);font-size:1.02rem;line-height:1.5}
[dir="rtl"] .find dd{margin:.3rem calc(24px + .55rem) 0 0}
.find dd a{text-decoration:underline;text-decoration-color:rgba(250,241,226,.4);text-underline-offset:3px}
.find dd a:hover{color:var(--jaune)}
.find__cta{display:flex;gap:.6rem;flex-wrap:wrap;margin-top:1.8rem}

/* ---------- BLOC SEO ---------- */
.seo__in{max-width:760px;margin-inline:auto;text-align:center}
.seo__in .h{margin-bottom:1rem;font-size:clamp(1.6rem,4vw,2.4rem)}
.seo p{color:var(--ink-2);line-height:1.7;margin-top:.9rem;font-size:.98rem}
.seo p strong{color:var(--ink);font-weight:600}
.seo__links{margin-top:1.4rem!important;font-size:.9rem}
.seo__links a{color:var(--rouge);font-weight:600;white-space:nowrap}
.seo__links a:hover{text-decoration:underline}

/* ---------- PAGE LE RITAL : hero « depuis 2019 » + 4 chapitres ---------- */
.hero__year{position:absolute;z-index:-1;left:-1%;bottom:-4%;font-family:var(--f-display);font-size:clamp(9rem,31vw,27rem);line-height:.78;
  letter-spacing:-.03em;color:var(--rouge-2);pointer-events:none;user-select:none}
[dir="rtl"] .hero__year{left:auto;right:-1%}
.pull{position:relative;width:112vw;margin:clamp(3.6rem,8vw,6rem) 0 0 calc(50% - 56vw);transform:rotate(-2deg);
  background:var(--brun) url("../assets/brand/motif-creme.svg") 0 0/120px auto;padding:clamp(1.1rem,2.6vw,1.7rem) 0;box-shadow:0 18px 36px -24px rgba(40,10,4,.6)}
.pull p{display:flex;align-items:center;justify-content:center;gap:clamp(.7rem,2vw,1.4rem);padding-inline:calc(6vw + var(--pad));
  font-family:var(--f-display);text-transform:uppercase;font-size:clamp(1.5rem,4.2vw,3.2rem);line-height:1;color:var(--cream);text-align:center}
.pull em{font-style:normal;color:var(--jaune)}
.pull__fl{flex:none;width:clamp(22px,3.2vw,40px);aspect-ratio:194/323;background:var(--jaune);transform-origin:50% 100%;
  -webkit-mask:url("../assets/brand/flamme-f01.svg") center/contain no-repeat;mask:url("../assets/brand/flamme-f01.svg") center/contain no-repeat}
@media(prefers-reduced-motion:no-preference){.pull__fl{animation:lick 1.8s ease-in-out infinite alternate}}
.pull+.chap{margin-top:clamp(3.4rem,8vw,6rem)}
.sign{position:absolute;z-index:2;bottom:0;left:max(var(--pad),calc((100% - var(--maxw))/2 + var(--pad)));width:clamp(150px,15vw,200px);
  aspect-ratio:1135/1013;transform-origin:50% 100%;transform:translateY(105%);transition:transform .9s cubic-bezier(.34,1.56,.64,1)}
.sign.up{transform:none}
.sign::before{content:"";position:absolute;left:12.6%;top:46.6%;width:74.4%;height:26.4%;background:var(--cream)}
.sign__f{position:absolute;inset:0;background:var(--cream);
  -webkit-mask:url("../assets/brand/forno/pancarte.svg") center/contain no-repeat;mask:url("../assets/brand/forno/pancarte.svg") center/contain no-repeat}
.sign__t{position:absolute;left:12.6%;top:46.6%;width:74.4%;height:26.4%;display:grid;place-items:center;text-align:center;
  font-family:var(--f-display);text-transform:uppercase;color:var(--rouge);font-size:clamp(1rem,1.7vw,1.4rem);line-height:1}
@media(prefers-reduced-motion:no-preference){.sign.up{animation:sway 3.2s ease-in-out 1s infinite}}
@keyframes sway{0%,100%{transform:rotate(-2.5deg)}50%{transform:rotate(2.5deg)}}
[dir="rtl"] .sign{left:auto;right:max(var(--pad),calc((100% - var(--maxw))/2 + var(--pad)))}
.chaps{padding-block:clamp(3.4rem,8vw,6rem)}
.chap{display:grid;gap:clamp(1.6rem,4vw,3.6rem);align-items:center}
.chap+.chap{margin-top:clamp(3.6rem,9vw,6.5rem)}
@media(min-width:860px){.chap{grid-template-columns:.9fr 1.1fr}.chap:nth-child(even) .chap__media{order:2}}
.chap__media{justify-self:center;width:min(100%,420px)}
.chap__media .arch__ph{box-shadow:0 26px 50px -26px rgba(69,25,13,.55)}
.chap__n{display:block;font-family:var(--f-display);font-size:clamp(4.2rem,9vw,6.8rem);line-height:.8;color:transparent;
  -webkit-text-stroke:2px var(--rouge);margin-bottom:.5rem}
.chap .h{font-size:clamp(2rem,4.6vw,3.2rem)}
.chap p{margin-top:1rem;color:var(--ink-2);font-size:1.06rem;line-height:1.65;max-width:44ch}
.chap__cta{margin-top:1.4rem}
.chap__stk{display:flex;gap:.7rem;margin-top:1.5rem}
.chap__stk img{width:clamp(76px,9vw,96px);filter:drop-shadow(0 8px 12px rgba(69,25,13,.2));transition:transform .4s var(--e)}
.chap__stk img:nth-child(odd){transform:rotate(-8deg)}.chap__stk img:nth-child(even){transform:rotate(6deg)}
.chap__stk img:hover{transform:rotate(0) scale(1.08)}
.chap__forno{aspect-ratio:4/5;border-radius:50% 50% 22px 22px/40% 40% 22px 22px;display:grid;place-items:center;
  background:var(--jaune) url("../assets/brand/motif-brun.svg") 0 0/120px auto;box-shadow:0 26px 50px -26px rgba(69,25,13,.55)}
.chap__forno img{width:78%;transform-origin:50% 90%}
@media(prefers-reduced-motion:no-preference){.chap__forno img{animation:fo-bob .7s ease-in-out infinite alternate}}
html.lang-ar .chap__n{-webkit-text-stroke-width:1.5px}

/* ---------- PAGE NOUS TROUVER ---------- */
/* Forno qui cherche : il marche, s'arrête, regarde à gauche et à droite, le repère apparaît, il repart */
.seek{--sw:clamp(120px,12vw,170px);position:absolute;z-index:2;bottom:0;left:calc(-1 * var(--sw));width:var(--sw);aspect-ratio:1552/1226;pointer-events:none}
.seek__f{position:absolute;inset:0;background:var(--cream);transform-origin:50% 100%;
  -webkit-mask:url("../assets/brand/forno/marche.svg") center/contain no-repeat;mask:url("../assets/brand/forno/marche.svg") center/contain no-repeat}
.seek__pin{position:absolute;left:96%;bottom:62%;width:22%;aspect-ratio:32/40;background:var(--jaune);opacity:0;transform-origin:50% 100%;
  -webkit-mask:url("../assets/brand/pin.svg") center/contain no-repeat;mask:url("../assets/brand/pin.svg") center/contain no-repeat}
@media(prefers-reduced-motion:no-preference){
  .seek{animation:seek-walk 15s ease-in-out infinite}
  .seek__f{animation:seek-look 15s linear infinite}
  .seek__pin{animation:seek-pin 15s ease-out infinite}
}
@media(prefers-reduced-motion:reduce){.seek{left:max(var(--pad),calc((100% - var(--maxw))/2 + var(--pad)))}.seek__pin{opacity:1}}
@keyframes seek-walk{0%{left:calc(-1 * var(--sw))}28%,62%{left:max(var(--pad),calc((100% - var(--maxw))/2 + var(--pad) + 4%))}100%{left:calc(100% + 30px)}}
@keyframes seek-look{
  0%,26%{transform:translateY(0) rotate(1deg)}2%,6%,10%,14%,18%,22%{transform:translateY(-4px) rotate(-2deg)}
  31%,37%{transform:scaleX(-1)}40%,44%{transform:scaleX(1)}47%,50%{transform:scaleX(-1)}53%,62%{transform:scaleX(1)}
  64%,68%,72%,76%,80%,84%,88%,92%,96%{transform:translateY(-4px) rotate(-2deg)}66%,70%,74%,78%,82%,86%,90%,94%,100%{transform:translateY(0) rotate(1deg)}}
@keyframes seek-pin{0%,53%{opacity:0;transform:translateY(10px) scale(.3)}56%{opacity:1;transform:translateY(-6px) scale(1.15)}58%{transform:none}
  61%{transform:translateY(-5px)}63%{transform:none}66%{opacity:1}70%,100%{opacity:0;transform:translateY(-8px)}}
.arch--map .arch__ph{background:var(--cream)}
.arch--map iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.live{margin-top:.5rem}
.live[data-st="closed"]::before,.live[data-st="break"]::before{background:var(--brun);box-shadow:none;animation:none}
.infos{background:var(--cream)}
.infos__g{display:grid;gap:clamp(.8rem,2vw,1.2rem)}
@media(min-width:760px){.infos__g{grid-template-columns:1.2fr 1fr 1fr}.info--week{grid-row:span 2}.info--red{grid-column:span 2}}
.info{background:#fff;border-radius:26px;padding:clamp(1.4rem,3vw,1.9rem);display:grid;align-content:start;justify-items:start;gap:.55rem;
  box-shadow:0 18px 36px -26px rgba(69,25,13,.5)}
.pico{width:46px;height:46px;fill:none;stroke:var(--brun);stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.pico__dot{fill:var(--rouge);stroke:none}
.info__t{font-family:var(--f-display);font-weight:400;text-transform:uppercase;font-size:1.5rem;line-height:1;color:var(--rouge);margin-top:.2rem}
.info__big{font-weight:600;font-size:1.08rem;line-height:1.5;color:var(--ink)}
.info__big a:hover{color:var(--rouge)}
.info__p{color:var(--ink-2);font-size:.92rem}
.info .btn{margin-top:.4rem}
.info--red{background:var(--rouge) url("../assets/brand/motif.svg") 0 0/130px auto;color:var(--cream)}
.info--red .pico{stroke:var(--cream)}.info--red .pico__dot{fill:var(--jaune)}
.info--red .info__t{color:var(--cream)}.info--red .info__p{color:rgba(250,241,226,.9)}
.info__soc{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.3rem}
.wk{list-style:none;padding:0;margin:.4rem 0 0;width:100%;display:grid}
.wk li{display:flex;justify-content:space-between;gap:1rem;padding:.7rem .2rem;border-bottom:1px dashed rgba(69,25,13,.18);font-size:.98rem}
.wk li:last-child{border-bottom:0}
.wk__d{text-transform:capitalize;font-weight:500}
.wk__d b{font-family:var(--f-display);font-weight:400;text-transform:uppercase;font-size:.72rem;letter-spacing:.03em;background:var(--rouge);color:var(--cream);
  border-radius:999px;padding:.25em .6em;margin-inline-start:.4rem;vertical-align:2px}
.wk__h{font-weight:600;color:var(--ink);white-space:nowrap;text-align:end}
.wk li.on{background:rgba(255,178,34,.22);border-radius:12px;border-bottom-color:transparent;padding-inline:.6rem}
.faqs{background:var(--cream-2)}
.faqs .h{margin-bottom:1.2rem}
.faq details{background:var(--cream);border:0;border-radius:18px;margin-bottom:.55rem;padding:0 1.1rem}
.faq summary{padding:1.1rem 0}
.faq__forno{display:flex;align-items:center;gap:1.2rem;margin-top:1.8rem;background:var(--jaune) url("../assets/brand/motif-brun.svg") 0 0/120px auto;
  border-radius:24px;padding:1.1rem 1.4rem}
.faq__forno img{width:clamp(100px,14vw,150px);flex:none}
@media(prefers-reduced-motion:no-preference){.faq__forno img{animation:fo-bob .6s ease-in-out infinite alternate}}
.faq__more{font-family:var(--f-display);text-transform:uppercase;font-size:clamp(1.3rem,3vw,1.8rem);line-height:1;color:var(--brun);margin-bottom:.6rem}

/* ---------- EN-TÊTE DES SOUS-PAGES ---------- */
.ph{padding:calc(var(--hd) + 3.2rem) var(--pad) 2.2rem;text-align:center;
  background:radial-gradient(75% 60% at 50% 0%,#fff8ec,transparent 72%),var(--cream)}
.ph h1{font-family:var(--f-display);text-transform:uppercase;line-height:.95;letter-spacing:-.01em;
  font-size:clamp(2.3rem,7vw,4rem);color:var(--ink)}
.ph h1 em{font-style:normal;color:var(--rouge)}
.ph p{margin:.8rem auto 0;max-width:46ch;color:var(--ink-2)}

/* ---------- BARRE DE CATÉGORIES (page menu) ---------- */
.mnav{position:sticky;top:var(--hd);z-index:80;background:rgba(250,241,226,.95);backdrop-filter:blur(12px);
  box-shadow:0 1px 0 rgba(69,25,13,.1);padding-block:.6rem}
.mnav__in{display:flex;gap:.4rem;overflow-x:auto;scrollbar-width:none;
  padding-inline:var(--pad);max-width:var(--maxw);margin-inline:auto;scroll-snap-type:x proximity}
.mnav__in::-webkit-scrollbar{display:none}
.chip{flex:0 0 auto;scroll-snap-align:center;font-family:var(--f-display);text-transform:uppercase;
  font-size:.8rem;letter-spacing:.03em;padding:.5em 1em;border-radius:999px;color:var(--ink);
  background:rgba(69,25,13,.07);transition:background .2s,color .2s;white-space:nowrap}
.chip:hover{background:rgba(69,25,13,.14)}
.chip.on{background:var(--rouge);color:var(--cream)}

/* ---------- CATÉGORIE (page menu) ---------- */
.mc{padding-block:clamp(2rem,5vw,3rem);scroll-margin-top:calc(var(--hd) + 3.6rem)}
.mc:nth-child(even){background:var(--cream-2)}
.mc__hd{max-width:var(--maxw);margin-inline:auto;padding-inline:var(--pad);
  display:flex;align-items:baseline;gap:.8rem;flex-wrap:wrap;margin-bottom:1.3rem}
.mc__note{font-size:.85rem;color:var(--ink-2)}
.rail--full{grid-auto-flow:row;grid-template-columns:repeat(2,1fr);overflow:visible;
  max-width:var(--maxw);margin-inline:auto;padding-inline:var(--pad)}
@media(min-width:620px){.rail--full{grid-template-columns:repeat(3,1fr)}}
@media(min-width:940px){.rail--full{grid-template-columns:repeat(4,1fr)}}

/* ---------- PAGE MENU : cartes produit (comme les best sellers) ---------- */
.mgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:clamp(.7rem,2vw,1.2rem);max-width:var(--maxw);margin-inline:auto;padding-inline:var(--pad);padding-top:2.4rem}
@media(min-width:700px){.mgrid{grid-template-columns:repeat(3,1fr)}}
@media(min-width:1000px){.mgrid{grid-template-columns:repeat(4,1fr)}}
.mgrid .bcard{background:#fff url("../assets/brand/motif-pale.svg") 0 0/110px auto;box-shadow:none;border:1px solid rgba(69,25,13,.07)}
.mgrid .bcard:hover{transform:translateY(-5px)}
.mgrid .bcard__img::after{display:none}
.mgrid .bcard__img img{filter:drop-shadow(0 6px 6px rgba(69,25,13,.12))}
@media(max-width:699px){.mgrid .bcard{padding:.2rem .85rem .9rem;border-radius:20px}.mgrid .bcard__n{font-size:1.15rem}.mgrid .bcard__d{font-size:.78rem}
  .mgrid .bcard__p{font-size:1.2rem}.mgrid .bcard__plus{width:34px;height:34px}}
.mc:nth-child(even) .mgrid .bcard{background-color:var(--cream)}

/* ---------- HISTOIRE ---------- */
.story{max-width:660px;margin-inline:auto;padding-inline:var(--pad)}
.story__lead{font-weight:500;line-height:1.4;
  font-size:clamp(1.15rem,2.6vw,1.5rem);text-align:center;color:var(--ink);max-width:34ch;margin-inline:auto}
.story__lead strong{font-weight:700;color:var(--rouge)}
.story p{color:var(--ink-2);margin-top:1.1rem;line-height:1.65}
.story p strong{color:var(--ink);font-weight:600}
.story__q{font-family:var(--f-display);text-transform:uppercase;color:var(--rouge);text-align:center;line-height:1.05;
  font-size:clamp(1.3rem,3.6vw,1.9rem);margin:2.4rem auto;max-width:22ch}

.stats{background:var(--brun);color:var(--cream);padding-block:clamp(2.4rem,6vw,3.6rem)}
.stats__g{display:grid;grid-template-columns:repeat(2,1fr);gap:1.6rem 1rem;
  max-width:var(--maxw);margin-inline:auto;padding-inline:var(--pad)}
@media(min-width:760px){.stats__g{grid-template-columns:repeat(4,1fr)}}
.stat{text-align:center}
.stat b{display:block;font-family:var(--f-display);font-weight:400;color:var(--jaune);line-height:1;
  font-size:clamp(1.8rem,5vw,2.6rem);letter-spacing:-.01em}
.stat span{display:block;margin-top:.4rem;font-size:.8rem;color:rgba(250,241,226,.75);max-width:16ch;margin-inline:auto;line-height:1.35}

.prom{display:grid;grid-template-columns:repeat(2,1fr);gap:1.4rem;
  max-width:var(--maxw);margin-inline:auto;padding-inline:var(--pad);text-align:center}
@media(min-width:760px){.prom{grid-template-columns:repeat(4,1fr)}}
.prom img{width:clamp(78px,20vw,110px);margin:0 auto .4rem;filter:drop-shadow(0 8px 14px rgba(69,25,13,.18))}
.prom p{font-size:.86rem;color:var(--ink-2);max-width:22ch;margin-inline:auto}

/* ---------- FAQ ---------- */
.faq{max-width:760px;margin-inline:auto;padding-inline:var(--pad)}
.faq details{border-bottom:1px solid rgba(69,25,13,.15)}
.faq summary{list-style:none;cursor:pointer;font-family:var(--f-display);text-transform:uppercase;
  font-size:1rem;padding:1.05rem 0;display:flex;justify-content:space-between;align-items:center;gap:1rem}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font-family:var(--f-body);font-weight:700;font-size:1.4rem;color:var(--rouge);
  transition:transform .25s var(--e);flex:0 0 auto}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq p{padding:0 0 1.1rem;color:var(--ink-2);line-height:1.6}
[dir="rtl"] .faq summary{flex-direction:row-reverse}

/* ---------- FICHE PRODUIT ---------- */
.mdl{position:fixed;inset:0;z-index:200;display:grid;place-items:end center;opacity:0;pointer-events:none;transition:opacity .28s}
.mdl.open{opacity:1;pointer-events:auto}
.mdl__ov{position:absolute;inset:0;background:rgba(40,12,5,.6);backdrop-filter:blur(3px)}
.mdl__card{position:relative;z-index:1;background:var(--cream);width:100%;max-width:520px;max-height:92svh;overflow-y:auto;
  border-radius:26px 26px 0 0;transform:translateY(100%);transition:transform .38s var(--e)}
.mdl.open .mdl__card{transform:none}
.mdl__media{position:relative;overflow:hidden;aspect-ratio:16/11;display:grid;place-items:center;padding:1.4rem 1.4rem .6rem;
  background:var(--rouge) url("../assets/brand/motif.svg") 0 0/130px auto}
.mdl__media img{position:relative;z-index:1;max-width:76%;max-height:100%;object-fit:contain;filter:drop-shadow(0 22px 22px rgba(60,8,4,.45))}
.mdl.open .mdl__media img{animation:pop-in .6s cubic-bezier(.34,1.56,.64,1) .08s both}
@keyframes pop-in{from{transform:translateY(24px) scale(.86) rotate(-4deg);opacity:0}to{transform:none;opacity:1}}
.mdl__steam{position:absolute;z-index:2;left:50%;top:6%;width:120px;height:46%;transform:translateX(-50%);pointer-events:none}
.mdl__steam i{position:absolute;bottom:0;width:22px;height:100%;background:var(--cream);opacity:0;
  -webkit-mask:url("../assets/brand/flamme-f24.svg") center/contain no-repeat;mask:url("../assets/brand/flamme-f24.svg") center/contain no-repeat}
.mdl__steam i:nth-child(1){left:18%}.mdl__steam i:nth-child(2){left:44%;height:115%}.mdl__steam i:nth-child(3){left:70%}
@media(prefers-reduced-motion:no-preference){
  .mdl.open .mdl__steam i{animation:steam 2.8s ease-in-out infinite}
  .mdl.open .mdl__steam i:nth-child(2){animation-delay:.9s}.mdl.open .mdl__steam i:nth-child(3){animation-delay:1.7s}
}
@keyframes steam{0%{transform:translateY(30%) scaleY(.6);opacity:0}35%{opacity:.55}100%{transform:translateY(-25%) scaleY(1.05) skewX(-8deg);opacity:0}}
.mdl__x{position:absolute;z-index:3;top:.9rem;right:.9rem;width:40px;height:40px;border-radius:50%;background:var(--cream);color:var(--rouge);
  display:grid;place-items:center;transition:transform .2s}
.mdl__x:hover{transform:rotate(90deg)}
.mdl__x svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:2.6}
.mdl__body{padding:1.3rem 1.5rem 1.6rem}
.mdl__cat{color:var(--rouge)}
.mdl__head{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;margin-top:.35rem}
.mdl__name{font-family:var(--f-display);font-weight:400;text-transform:uppercase;letter-spacing:.01em;color:var(--ink);font-size:clamp(1.8rem,6vw,2.4rem);line-height:.95}
.mdl__price{flex:none;font-family:var(--f-display);font-size:2rem;line-height:1;color:var(--rouge)}
.mdl__price i{font-style:normal;font-size:.5em;margin-left:.1em}
.mdl__chips{list-style:none;padding:0;margin:1rem 0 0;display:flex;flex-wrap:wrap;gap:.4rem}
.mdl__chips li{font-size:.86rem;font-weight:500;background:var(--cream-2);color:var(--ink);border-radius:999px;padding:.4em .85em}
.mdl__note{margin-top:.9rem;font-size:.88rem;font-weight:600;color:var(--brun);background:rgba(255,178,34,.28);border-radius:12px;padding:.55em .8em}
.mdl__cta{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;margin-top:1.3rem}
.mdl__cta .btn{padding:.7em .8em;font-size:1.05rem}
.mdl__cta .btn>span{display:grid;text-align:start;line-height:1}
.mdl__cta small{font-family:var(--f-body);font-weight:600;text-transform:none;letter-spacing:0;font-size:.68rem;opacity:.9;margin-bottom:.15rem}
.btn--wa{background:#1FAF58;color:#fff}
.btn--wa:hover{background:#178f47}
.btn--wa svg{width:1.5em;height:1.5em;fill:currentColor;flex:none}
.btn--glovo{background:var(--jaune);color:var(--brun)}
.btn--glovo:hover{background:var(--jaune-2)}
.btn--glovo::before{content:"";width:1.5em;height:1.5em;flex:none;background:currentColor;
  -webkit-mask:url("../assets/brand/moments/diner.svg") center/contain no-repeat;mask:url("../assets/brand/moments/diner.svg") center/contain no-repeat}
/* badge « Cuit au feu de bois » */
.wood{display:inline-flex;align-items:center;gap:.45em;font-family:var(--f-display);text-transform:uppercase;letter-spacing:.02em;font-size:.8rem;line-height:1;
  background:var(--rouge);color:var(--cream);border-radius:999px;padding:.45em .9em .45em .7em}
.wood i{width:1.15em;height:1.35em;background:var(--jaune);transform-origin:50% 100%;
  -webkit-mask:url("../assets/brand/flamme-f01.svg") center/contain no-repeat;mask:url("../assets/brand/flamme-f01.svg") center/contain no-repeat}
@media(prefers-reduced-motion:no-preference){.wood i{animation:lick 1.6s ease-in-out infinite alternate}}
.mdl__wood{margin-top:.8rem}
.mc__hd .wood{align-self:center}
@media(min-width:600px){
  .mdl{place-items:center;padding:1.2rem}
  .mdl__card{border-radius:26px;transform:translateY(20px) scale(.97)}
  .mdl.open .mdl__card{transform:none}
}

/* ---------- PIED DE PAGE : brun bois, logo négatif ---------- */
.ft{background:var(--brun);color:rgba(250,241,226,.82);padding:clamp(2.6rem,6vw,3.6rem) 0 1.4rem}
.ft__in{max-width:var(--maxw);margin-inline:auto;padding-inline:var(--pad);
  display:grid;gap:1.6rem;justify-items:center;text-align:center}
@media(min-width:760px){.ft__in{grid-template-columns:auto 1fr auto;justify-items:start;text-align:left;align-items:center;gap:2.4rem}}
.ft__logo{width:118px}
.ft__adr{font-style:normal;line-height:1.7;font-size:.95rem}
.ft__adr b{font-family:var(--f-display);font-weight:400;text-transform:uppercase;color:var(--jaune);letter-spacing:.02em}
.ft__soc{display:flex;gap:.6rem}
.ft__soc a{width:42px;height:42px;border-radius:50%;background:rgba(250,241,226,.1);display:grid;place-items:center;transition:.2s}
.ft__soc a:hover{background:var(--rouge);transform:translateY(-2px)}
.ft__soc svg{width:19px;height:19px;fill:var(--cream)}
.ft__by{text-align:center;margin-top:2.2rem;padding-top:1.2rem;font:700 .68rem var(--f-body);letter-spacing:.16em;text-transform:uppercase;
  border-top:1px solid rgba(250,241,226,.12);color:rgba(250,241,226,.6)}
.ft__by a{color:var(--jaune)}

/* ---------- DU MATIN JUSQU'À 2H : les icônes de la vitrine, en blanc sur le rouge ---------- */
.moments{background:var(--rouge) url("../assets/brand/motif.svg") 0 0/150px auto;color:var(--cream);padding-block:clamp(3rem,7vw,4.8rem)}
.moments .s__hd{align-items:flex-end;margin-bottom:clamp(1.8rem,4vw,2.6rem)}
.moments .h{color:var(--cream)}
.moments .h em{color:var(--jaune)}
.moments__ar{width:fit-content;font-family:"Baloo Bhaijaan 2",var(--f-display);font-weight:800;color:var(--jaune);font-size:clamp(1.3rem,3vw,1.8rem);margin-top:.4rem}
.moments .pill{margin:0}
.moments__g{display:grid;grid-template-columns:1fr;gap:1.6rem}
@media(min-width:760px){.moments__g{grid-template-columns:repeat(3,1fr);gap:0}}
.moment{display:grid;justify-items:center;text-align:center;align-content:start;gap:.5rem;padding:.4rem clamp(1rem,3vw,2rem)}
@media(min-width:760px){.moment+.moment{border-inline-start:2px solid rgba(250,241,226,.35)}}
.mo-ic{width:clamp(104px,11vw,132px);height:auto;transform-origin:50% 85%;filter:drop-shadow(0 6px 10px rgba(80,8,4,.25))}
.moment:hover .mo-ic{animation:jiggle .6s var(--e)}
@keyframes jiggle{30%{transform:rotate(-8deg) scale(1.08)}60%{transform:rotate(6deg)}100%{transform:none}}
.moment h3{font-family:var(--f-display);font-weight:400;text-transform:uppercase;font-size:clamp(1.7rem,3vw,2.1rem);line-height:1;margin-top:.6rem}
.moment p{color:rgba(250,241,226,.88);font-size:.98rem;max-width:30ch}
.moment__h{font-family:var(--f-display);text-transform:uppercase;font-size:.95rem;color:var(--jaune);letter-spacing:.02em}
@media(max-width:759px){
  .moments__g{grid-template-columns:repeat(3,1fr);gap:0}
  .moment{padding:.2rem .3rem;gap:.25rem}
  .moment+.moment{border-inline-start:1.5px solid rgba(250,241,226,.3)}
  .mo-ic{width:64px}
  .moment h3{font-size:1.05rem;margin-top:.35rem}
  .moment__h{font-size:.78rem}
  .moment p{display:none}
  .moments .s__hd{flex-direction:column;align-items:flex-start;gap:.9rem}
}

/* ---------- FORNO QUI COURT : il traverse la page avec sa pizza ---------- */
.run-host{position:relative;overflow:hidden;--rw:clamp(96px,10vw,140px);padding-top:calc(var(--rw) * .7 + 2.2rem)}
.hero{--rw:clamp(120px,13vw,180px);padding-bottom:calc(var(--rw) * .7 + 1.6rem)}
.run{position:absolute;z-index:3;left:calc(-1 * var(--rw));width:var(--rw);pointer-events:none}
.hero .run{bottom:0}
.run-host .run{top:1rem}
.run.go{animation:run 3.6s cubic-bezier(.4,.1,.6,.9) forwards}
@keyframes run{from{left:calc(-1 * var(--rw))}to{left:calc(100% + 30px)}}
.run img{display:block;width:100%;height:auto;transform-origin:50% 100%}
.run.go img{animation:gait .17s ease-in-out infinite alternate}
@keyframes gait{from{transform:translateY(0) rotate(2deg)}to{transform:translateY(-6px) rotate(-3deg)}}
.run::before,.run::after{content:"";position:absolute;bottom:4%;left:4%;width:16%;aspect-ratio:1;border-radius:50%;opacity:0}
.run--creme::before,.run--creme::after{background:rgba(250,241,226,.55)}
.run--brun::before,.run--brun::after{background:rgba(69,25,13,.16)}
.run.go::before{animation:puff .5s ease-out infinite}
.run.go::after{animation:puff .5s ease-out .25s infinite}
@keyframes puff{0%{transform:translate(0,0) scale(.4);opacity:.9}100%{transform:translate(-90%,-40%) scale(1.3);opacity:0}}
.run__say{position:absolute;left:96%;top:4%;white-space:nowrap;font-family:var(--f-display);text-transform:uppercase;letter-spacing:.01em;
  font-size:clamp(.95rem,1.5vw,1.25rem);line-height:1;background:var(--jaune);color:var(--brun);padding:.55em .95em;border-radius:14px 14px 14px 4px;
  box-shadow:0 8px 18px -10px rgba(40,10,4,.6);transform-origin:0 100%;opacity:0;transform:scale(.4)}
.run.go .run__say{animation:say 3.6s cubic-bezier(.34,1.56,.64,1) forwards}
@keyframes say{0%,6%{opacity:0;transform:scale(.4)}14%{opacity:1;transform:scale(1.08)}20%,88%{opacity:1;transform:none}100%{opacity:0;transform:scale(.8)}}
[dir="rtl"] .run__say{left:auto;right:96%;border-radius:14px 14px 4px 14px;transform-origin:100% 100%}
[dir="rtl"] .run{left:auto;right:calc(-1 * var(--rw))}
[dir="rtl"] .run.go{animation-name:run-rtl}
@keyframes run-rtl{from{right:calc(-1 * var(--rw))}to{right:calc(100% + 30px)}}
[dir="rtl"] .run img{transform:scaleX(-1)}
[dir="rtl"] .run.go img{animation-name:gait-rtl}
@keyframes gait-rtl{from{transform:scaleX(-1) translateY(0) rotate(2deg)}to{transform:scaleX(-1) translateY(-6px) rotate(-3deg)}}

/* ---------- FORNO RÉPOND : assistant de questions ---------- */
.fb{position:fixed;z-index:115;right:clamp(.8rem,2.4vw,1.4rem);bottom:clamp(.8rem,2.4vw,1.4rem);display:grid;justify-items:end;gap:.7rem}
.fb__btn{position:relative;width:88px;height:88px;border-radius:28px;background:var(--rouge) url("../assets/brand/motif.svg") 0 0/70px auto;
  display:grid;place-items:center;box-shadow:0 16px 30px -12px rgba(120,10,6,.65);transition:transform .25s var(--e),border-radius .3s}
.fb__btn:hover{transform:translateY(-3px) rotate(-3deg)}
.fb.open .fb__btn{border-radius:50%}
.fb__f{width:84%;aspect-ratio:1552/1226;background:var(--cream);
  -webkit-mask:url("../assets/brand/forno/marche.svg") center/contain no-repeat;mask:url("../assets/brand/forno/marche.svg") center/contain no-repeat}
@media(prefers-reduced-motion:no-preference){.fb__f{animation:fo-bob .55s ease-in-out infinite alternate}}
@keyframes fo-bob{from{transform:translateY(1px) rotate(-2deg)}to{transform:translateY(-3px) rotate(2deg)}}
.fb__q{position:absolute;top:-8px;right:-8px;width:30px;height:30px;border-radius:50%;background:var(--jaune);color:var(--brun);
  font:400 1.15rem/30px var(--f-display);text-align:center;box-shadow:0 4px 10px -4px rgba(40,10,4,.5)}
.fb.open .fb__q{display:none}
.fb__teaser{background:var(--brun);color:var(--cream);font-family:var(--f-display);text-transform:uppercase;font-size:.9rem;letter-spacing:.01em;
  padding:.7em 1em;border-radius:16px 16px 4px 16px;box-shadow:0 12px 26px -12px rgba(40,10,4,.6);animation:fo-bub .45s cubic-bezier(.34,1.56,.64,1)}
.fb__teaser[hidden]{display:none}
@keyframes fo-bub{from{transform:scale(.4);opacity:0}to{transform:none;opacity:1}}
.fb__panel{width:min(370px,calc(100vw - 1.6rem));height:min(540px,calc(100svh - 7.5rem));display:flex;flex-direction:column;overflow:hidden;
  background:var(--cream);border-radius:24px;box-shadow:0 26px 60px -20px rgba(40,10,4,.55),0 0 0 1px rgba(69,25,13,.08);
  transform-origin:100% 100%;animation:fo-bub .4s cubic-bezier(.34,1.56,.64,1)}
.fb__panel[hidden]{display:none}
.fb__hd{display:flex;align-items:center;gap:.7rem;padding:.8rem .9rem;background:var(--rouge) url("../assets/brand/motif.svg") 0 0/110px auto;color:var(--cream)}
.fb__av{width:46px;height:46px;border-radius:14px;background:var(--cream);display:grid;place-items:center;flex:none}
.fb__av i{width:84%;aspect-ratio:1;background:var(--brun);
  -webkit-mask:url("../assets/brand/forno/marche.svg") center/contain no-repeat;mask:url("../assets/brand/forno/marche.svg") center/contain no-repeat}
.fb__av i.pop{animation:fo-pop .5s cubic-bezier(.34,1.56,.64,1)}
@keyframes fo-pop{0%{transform:scale(.4) rotate(-12deg)}70%{transform:scale(1.15) rotate(4deg)}100%{transform:none}}
.fb__who{display:grid;line-height:1.15;flex:1;min-width:0}
.fb__who b{font-family:var(--f-display);font-weight:400;text-transform:uppercase;font-size:1.25rem}
.fb__who small{font-size:.76rem;opacity:.9}
.fb__x{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;color:var(--cream)}
.fb__x:hover{background:rgba(255,255,255,.15)}
.fb__x svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:2.6}
.fb__log{flex:1;overflow-y:auto;padding:1rem .9rem .4rem;display:flex;flex-direction:column;gap:.6rem}
.fb__m{max-width:86%;animation:fo-bub .35s cubic-bezier(.34,1.56,.64,1)}
.fb__m p{font-size:.92rem;line-height:1.45;padding:.65em .9em;border-radius:16px}
.fb__m--bot{align-self:flex-start;transform-origin:0 100%}
.fb__m--bot p{background:#fff;color:var(--ink);border-bottom-left-radius:4px;box-shadow:0 2px 6px -3px rgba(69,25,13,.25)}
.fb__m--me{align-self:flex-end;transform-origin:100% 100%}
.fb__m--me p{background:var(--rouge);color:var(--cream);border-bottom-right-radius:4px}
.fb__btns{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.4rem}
.fb__b{font-family:var(--f-display);text-transform:uppercase;font-size:.78rem;letter-spacing:.02em;background:var(--brun);color:var(--cream);border-radius:999px;padding:.5em .95em}
.fb__b:hover{background:var(--rouge)}
.fb__typing{display:flex;gap:4px;background:#fff;border-radius:16px 16px 16px 4px;padding:.8em .9em;width:fit-content}
.fb__typing i{width:7px;height:7px;border-radius:50%;background:var(--ink-2);animation:dots 1s ease-in-out infinite}
.fb__typing i:nth-child(2){animation-delay:.15s}.fb__typing i:nth-child(3){animation-delay:.3s}
@keyframes dots{0%,100%{opacity:.3;transform:translateY(0)}50%{opacity:1;transform:translateY(-3px)}}
.fb__quick{display:flex;gap:.35rem;overflow-x:auto;padding:.4rem .9rem .5rem;scrollbar-width:none}
.fb__quick::-webkit-scrollbar{display:none}
.fb__chip{flex:none;font-size:.8rem;font-weight:600;color:var(--rouge);border:1.5px solid var(--rouge);border-radius:999px;padding:.4em .85em;background:transparent}
.fb__chip:hover{background:var(--rouge);color:var(--cream)}
.fb__form{display:flex;gap:.4rem;padding:.5rem .7rem .75rem;border-top:1px solid rgba(69,25,13,.1)}
.fb__in{flex:1;min-width:0;font:inherit;font-size:.95rem;border:0;background:#fff;border-radius:999px;padding:.7em 1em;color:var(--ink);box-shadow:inset 0 0 0 1px rgba(69,25,13,.12)}
.fb__in:focus{outline:2px solid var(--jaune)}
.fb__send{width:42px;height:42px;border-radius:50%;background:var(--rouge);color:var(--cream);display:grid;place-items:center;flex:none}
.fb__send svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}
[dir="rtl"] .fb{right:auto;left:clamp(.8rem,2.4vw,1.4rem);justify-items:start}
[dir="rtl"] .fb__send svg{transform:scaleX(-1)}
/* mobile : Forno vit dans la barre du bas, plus rien ne flotte par-dessus le contenu */
@media(max-width:759px){
  .fb,[dir="rtl"] .fb{left:.6rem;right:.6rem;bottom:calc(5.9rem + env(safe-area-inset-bottom));justify-items:stretch}
  .fb__btn,.fb__teaser{display:none!important}
  .fb__panel{width:auto;height:min(520px,calc(100svh - var(--hd) - 7.4rem));transform-origin:88% 100%}
}

/* ---------- PAGE 404 : Forno qui dort (planche 20) ---------- */
.nf{min-height:86svh;display:grid;place-items:center;text-align:center;padding:calc(var(--hd) + 3rem) var(--pad) 4rem;
  background:radial-gradient(60% 50% at 50% 30%,#fff8ec,transparent 70%),var(--cream)}
.nf__f{width:min(300px,70vw);aspect-ratio:1;border-radius:50%;background:var(--cream-2);display:grid;place-items:center;margin:0 auto}
.nf__f img{width:80%;transform-origin:50% 90%}
@media(prefers-reduced-motion:no-preference){.nf__f img{animation:breathe 3.2s ease-in-out infinite}}
@keyframes breathe{50%{transform:scale(1.03,1.05)}}
.nf__n{font-family:var(--f-display);font-size:clamp(5rem,18vw,9rem);line-height:.9;color:var(--rouge);margin-top:1.2rem}
.nf h1{font-family:var(--f-display);text-transform:uppercase;font-weight:400;font-size:clamp(1.8rem,5vw,2.8rem);line-height:1;color:var(--ink);margin-top:.4rem}
.nf p:not(.nf__n){color:var(--ink-2);max-width:34ch;margin:.9rem auto 0}
.nf__cta{display:flex;gap:.6rem;justify-content:center;flex-wrap:wrap;margin-top:1.8rem}

/* ---------- BRAISES DANS LE HERO ---------- */
.embers{position:absolute;inset:0;z-index:-1;pointer-events:none;overflow:hidden}
.embers i{position:absolute;bottom:-12px;left:var(--x);width:var(--s);height:var(--s);border-radius:50%;
  background:radial-gradient(circle,#FFE29A 0%,var(--jaune) 45%,rgba(255,140,30,0) 72%);opacity:0;
  animation:ember var(--d) linear var(--delay) infinite}
@keyframes ember{0%{transform:translate(0,0) scale(1);opacity:0}10%{opacity:.95}
  60%{opacity:.7}100%{transform:translate(var(--dx),calc(-1 * min(92svh,820px))) scale(.3);opacity:0}}

/* ---------- BARRE MOBILE : commander / appeler / itinéraire ---------- */
.mbar{display:none}
@media(max-width:759px){
  .mbar{position:fixed;z-index:110;left:.6rem;right:.6rem;bottom:calc(.6rem + env(safe-area-inset-bottom));display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:.35rem;
    background:var(--cream);border-radius:20px;padding:.35rem;box-shadow:0 14px 34px -12px rgba(40,10,4,.55),0 0 0 1px rgba(69,25,13,.08)}
  .mbar__a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.2rem;border-radius:15px;padding:.5rem .3rem;
    font-family:var(--f-display);text-transform:uppercase;font-size:.78rem;letter-spacing:.02em;color:var(--brun)}
  .mbar__a svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
  .mbar__a--main{background:var(--rouge);color:var(--cream)}
  .mbar__a:active{transform:scale(.96)}
  body.has-mbar{padding-bottom:calc(5.4rem + env(safe-area-inset-bottom))}
  .mbar{grid-template-columns:1.25fr 1fr 1fr 1fr}
  .mbar__a{font-size:.74rem}
  .mbar__a--forno{color:var(--rouge)}
  .mbar__f{width:34px;height:24px;background:currentColor;
    -webkit-mask:url("../assets/brand/forno/marche.svg") center/contain no-repeat;mask:url("../assets/brand/forno/marche.svg") center/contain no-repeat}
  .mbar__a--forno.on{background:var(--rouge);color:var(--cream)}
  .totop{display:none}
  /* moins de lignes : les sous-titres arabes décoratifs restent sur ordinateur (sauf accueil + « بالصحة والراحة ») */
  .spec__ar,.moments__ar,.cine__ar,.feu__ar{display:none}
  .feu__stats{display:none}

  /* carrousels : une carte en avant au milieu, les voisines dépassent */
  [data-car]{display:flex!important;gap:.5rem;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:none;
    margin-inline:calc(-1 * var(--pad));padding:.6rem calc((100vw - var(--car-w)) / 2) 1rem;--car-w:64vw}
  [data-car]::-webkit-scrollbar{display:none}
  [data-car]>*{flex:0 0 var(--car-w);scroll-snap-align:center;opacity:.5!important;transform:scale(.86)!important;
    transition:transform .45s var(--e),opacity .45s var(--e)!important}
  [data-car]>.is-c{opacity:1!important;transform:none!important}
  [data-car]>.bt--promo{display:none!important}
  /* spécialités */
  .specs .spec{padding:.6rem 1rem 1.2rem;border-radius:24px}
  .specs .spec__img{width:86%}
  .specs .spec__n{font-size:2rem}
  .specs .spec__p{margin-top:.4rem}
  /* le menu : la carte rouge en premier, les catégories défilent dessous */
  .bento{--car-w:58vw}
  .bento .bt{aspect-ratio:4/5;height:auto;border-radius:999px 999px 18px 18px}
  .bento .bt img{object-position:50% 55%}
  .bento .bt__txt{left:.9rem;right:.9rem;bottom:.9rem}
  .bento .bt__n,.bento .bt--xl .bt__n,.bento .bt--tall .bt__n,.bento .bt--wide .bt__n{font-size:1.35rem}
  .bento .bt__p{font-size:.72rem;padding:.35em .75em}
  .bento-top{margin-bottom:.4rem}
  .bento-top .bt--promo{display:grid;grid-template-columns:auto 1fr;align-items:center;column-gap:.9rem;row-gap:.35rem;padding:1rem 1.1rem;border-radius:20px}
  .bento-top .bt__big{grid-row:span 2;font-size:3.6rem}
  .bento-top .bt__sub{font-size:.95rem;max-width:none}
  .bento-top .btn{margin-top:0;justify-self:start;font-size:.74rem;padding:.55em 1em}
  /* insta */
  .gal__g{--car-w:60vw}
  /* images plus discrètes : four à bois, Forno qui livre */
  .feu__in{gap:1.8rem}
  .feu__arch{width:min(60%,250px)}
  .feu__arch .arch__ph{box-shadow:0 0 0 7px rgba(250,241,226,.08)}
  .feu .btn{margin-top:1.4rem}
  /* commander : Forno petit, les 3 options en lignes compactes */
  .order{padding-block:2.6rem 2.8rem}
  .order__in{gap:.6rem}
  .order__forno{width:min(52%,210px);justify-self:center}
  .opts{gap:.45rem;margin-top:1.1rem}
  .opt{grid-template-columns:1fr auto;align-items:center;column-gap:.8rem;row-gap:.15rem;padding:.75rem .8rem .75rem 1rem;border-radius:16px}
  .opt h3{font-size:1.1rem}
  .opt p{font-size:.8rem;line-height:1.35;grid-column:1}
  .opt .btn{grid-column:2;grid-row:1/span 2;margin-top:0;font-size:.7rem;padding:.6em .95em}
  /* moins de vide au-dessus des sections où Forno court */
  .run-host{--rw:84px;padding-top:calc(var(--rw) * .6 + 1.3rem)}
}
.bento-top{display:none}
@media(max-width:759px){.bento-top{display:block}}
@media(max-width:759px) and (prefers-reduced-motion:no-preference){.mbar__a--forno:not(.on) .mbar__f{animation:fo-bob .55s ease-in-out infinite alternate}}

/* ---------- CHOIX DE COMMANDE (mobile) ---------- */
.msheet{position:fixed;inset:0;z-index:118}
.msheet[hidden]{display:none}
.msheet__ov{position:absolute;inset:0;background:rgba(40,12,5,.45);animation:fade .25s}
@keyframes fade{from{opacity:0}}
.msheet__card{position:absolute;left:.6rem;right:.6rem;bottom:calc(5.9rem + env(safe-area-inset-bottom));background:var(--cream);border-radius:22px;
  padding:1.1rem 1rem 1rem;display:grid;gap:.55rem;box-shadow:0 20px 44px -16px rgba(40,10,4,.6);transform-origin:20% 100%;animation:fo-bub .35s cubic-bezier(.34,1.56,.64,1)}
.msheet__t{font-family:var(--f-display);text-transform:uppercase;font-size:1.15rem;line-height:1;color:var(--ink);margin-bottom:.2rem}
.msheet__b{justify-content:flex-start;font-size:1rem;padding:.85em 1.1em}
.msheet__p{font-size:.84rem;color:var(--ink-2);margin-top:.2rem}
.mbar__a--main.on{background:var(--brun)}

/* ---------- FLÈCHE REMONTER ---------- */
.totop{position:fixed;right:clamp(1rem,3vw,1.6rem);bottom:calc(clamp(.8rem,2.4vw,1.4rem) + 102px);z-index:90;
  width:48px;height:48px;border-radius:50%;background:var(--rouge);color:var(--cream);display:grid;place-items:center;
  box-shadow:0 10px 24px -10px rgba(69,25,13,.6);
  opacity:0;pointer-events:none;transform:translateY(14px) scale(.85);
  transition:opacity .3s var(--e),transform .3s var(--e),background .2s}
.totop.show{opacity:1;pointer-events:auto;transform:none}
.totop:hover{background:var(--rouge-2);transform:translateY(-3px)}
.totop svg{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
[dir="rtl"] .totop{right:auto;left:clamp(1rem,3vw,1.6rem)}
@media(prefers-reduced-motion:reduce){.totop{transition:opacity .2s}}

/* ---------- APPARITIONS ---------- */
.js .rv{opacity:0;transform:translateY(24px);transition:opacity .7s var(--e),transform .7s var(--e)}
.rv.in{opacity:1;transform:none}
.rv.d1{transition-delay:.07s}.rv.d2{transition-delay:.14s}.rv.d3{transition-delay:.21s}
@media(prefers-reduced-motion:reduce){
  .rv{opacity:1;transform:none;transition:none}
  .hero__txt>*,.arch{opacity:1;transform:none;animation:none}
}

/* ---------- ARABE ---------- */
html.lang-ar .ar-deco{display:none}
/* titres : Lilita pour le latin (noms de produits), Baloo Bhaijaan 2 ExtraBold pour l'arabe ; texte : Cairo */
html.lang-ar{--f-display:"Lilita One","Baloo Bhaijaan 2",sans-serif;--f-body:"Cairo","Rubik",sans-serif}
html.lang-ar .h,html.lang-ar .hero h1,html.lang-ar .ph h1,html.lang-ar .btn,html.lang-ar .drw a,html.lang-ar .s__lnk,
html.lang-ar .hd__nav a,html.lang-ar .chip,html.lang-ar .faq summary,html.lang-ar .ord__c h3,html.lang-ar .story__q,
html.lang-ar .band__t{letter-spacing:0;line-height:1.25}
html.lang-ar .lab,html.lang-ar .find dt,html.lang-ar .ft__by{letter-spacing:0}
[dir="rtl"] .band__r{right:auto;left:-3%}

/* ---------- MOBILE : passe section par section (en dernier pour primer) ---------- */
@media(max-width:759px){
  .totop{display:none!important}
  .hero .arch{width:min(84%,340px)}
  .cine{min-height:250px;padding-block:1.6rem}
  .best .bcard{min-height:0}
  .find__map,.find__map iframe{min-height:230px}
  .seo{display:none}  /* texte pour Google : gardé dans la page, masqué sur téléphone */
}
/* haut de page centré quand il passe sur une colonne (téléphone, tablette) */
@media(max-width:899px){
  .hero__txt{justify-items:center;text-align:center;max-width:560px;margin-inline:auto}
  .hero__lead{margin-inline:auto}
  .hero__cta{justify-content:center}
  .hero__txt .pill{display:none}  /* les horaires sont déjà dans la phrase juste au-dessus */
}

/* ---------- MOBILE : pages Menu, Notre histoire, Nous trouver ---------- */
@media(max-width:759px){
  /* menu : moins de vide entre le titre de catégorie et les cartes */
  .mc{padding-block:1.6rem}
  .mgrid{padding-top:1rem}
  /* notre histoire : images en bandeau arrondi, chapitres plus serrés */
  .hero--hist .sign{display:none}
  .chaps{padding-block:2.4rem}
  .chap{gap:1rem}
  .chap+.chap{margin-top:3rem}
  .pull+.chap{margin-top:3rem}
  .pull{margin-top:3rem}
  .chap__media{width:100%}
  .chap__media .arch__ph,.chap__forno{aspect-ratio:16/10;border-radius:180px 180px 18px 18px/130px 130px 18px 18px}
  .chap__forno img{width:auto;height:82%}
  .chap__n{font-size:3.2rem}
  .chap .h{font-size:1.75rem}
  .chap p{font-size:.96rem;line-height:1.6;margin-top:.6rem}
  .chap__stk{margin-top:1rem}
  .chap__stk img{width:66px}
  /* nous trouver : horaires plus compacts */
  .info{padding:1.2rem 1.1rem;border-radius:22px}
  .wk li{padding:.5rem .2rem;font-size:.92rem}
  .faq__forno img{width:90px}
  .arch--map{width:100%}
  .arch--map .arch__ph{aspect-ratio:4/3;border-radius:24px}
}

/* ---------- DU MATIN JUSQU'À 2H : plus vivant ---------- */
.moment{position:relative;border-radius:22px;transition:background .4s var(--e),transform .4s var(--e)}
.moment__now{display:none;font-family:var(--f-display);text-transform:uppercase;font-size:.7rem;letter-spacing:.03em;
  background:var(--jaune);color:var(--brun);border-radius:999px;padding:.35em .8em;margin-bottom:.2rem}
.moment.is-now{background:rgba(250,241,226,.14);box-shadow:inset 0 0 0 2px var(--jaune)}
.moments__g:has(.is-now) .moment:not(.is-now){opacity:.7}
.moment.is-now .moment__now{display:inline-block}
@media(min-width:760px){.moment+.moment{border-inline-start:0}.moment{padding-block:1.2rem}.moment.is-now{transform:translateY(-6px)}}
@media(prefers-reduced-motion:no-preference){
  .moment.rv.in .mo-ic{animation:mo-pop .7s cubic-bezier(.34,1.56,.64,1) backwards}
  .moment.rv.in:nth-child(2) .mo-ic{animation-delay:.15s}.moment.rv.in:nth-child(3) .mo-ic{animation-delay:.3s}
  .moment.is-now.rv.in .mo-ic{animation:mo-pop .7s cubic-bezier(.34,1.56,.64,1) backwards,mo-bob 1.4s ease-in-out .8s infinite alternate}
}
@keyframes mo-pop{from{transform:scale(.3) rotate(-14deg);opacity:0}}
@keyframes mo-bob{from{transform:translateY(0) rotate(-3deg)}to{transform:translateY(-6px) rotate(3deg)}}
@media(max-width:759px){
  .moments .s__hd{align-items:center;text-align:center}
  .moments__g{gap:.45rem}
  .moment,.moment+.moment{border:0;background:rgba(250,241,226,.1);padding:.8rem .3rem .9rem}
  .moment.is-now{background:rgba(250,241,226,.16);transform:scale(1.05)}
  .moment__now{font-size:.58rem;padding:.3em .6em}
}
