:root{--ink:#0f0c0a;--ink2:#1a1512;--ink3:#26201b;--cream:#f4ecdf;--cream2:#ebe0cf;--paper:#fbf7f0;--red:#e3261b;--red2:#c0170e;--gold:#ffb321;--basil:#2f7d45;--hot:#ff6a1a;--muted:#7a6d63;--line:rgba(15,12,10,.1);--lineL:rgba(255,255,255,.12);--display:"Bricolage Grotesque",system-ui,sans-serif;--serif:"Bricolage Grotesque",system-ui,sans-serif;--ui:"Bricolage Grotesque",system-ui,-apple-system,"Segoe UI",sans-serif;--r:28px;--ease:cubic-bezier(.22,1,.36,1);--pad:clamp(16px,4vw,56px)}
*,*:before,*:after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
html.lenis,html.lenis body{height:auto}
.lenis.lenis-smooth{scroll-behavior:auto!important}
body{margin:0;font-family:var(--ui);color:var(--ink);background:var(--paper);line-height:1.5;-webkit-font-smoothing:antialiased;overflow-x:hidden;font-feature-settings:"ss01","cv11"}
body.is-locked{overflow:hidden}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;cursor:pointer;background:none;border:0;padding:0}
svg{width:1em;height:1em;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:none}
.art-svg{width:100%;height:100%;stroke:none}
kbd{font-family:var(--ui);font-size:.7rem;font-weight:600;padding:2px 6px;border-radius:6px;border:1px solid currentColor;opacity:.55}
:focus-visible{outline:2px solid var(--gold);outline-offset:3px;border-radius:8px}
::selection{background:var(--red);color:#fff}
.display{font-family:var(--display);font-weight:800;font-size:clamp(2.4rem,5.4vw,5rem);line-height:.96;letter-spacing:-.035em;margin:0;font-variation-settings:"opsz" 96}
.display--xl{font-size:clamp(3rem,8.5vw,8.4rem)}
.serif{color:var(--red)}
.kicker{display:inline-flex;align-items:center;gap:10px;margin:0 0 18px;font-size:.78rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--red)}
.kicker:before{content:"";width:8px;height:8px;border-radius:50%;background:currentColor}
.kicker--light{color:var(--gold)}
.fine{font-size:.82rem;color:var(--muted);margin:28px 0 0}
.fine a{color:var(--red);font-weight:600}
.fine--light{color:#ffffff80}
.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:10px;height:52px;padding:0 24px;border-radius:999px;font-weight:600;font-size:.95rem;letter-spacing:-.01em;white-space:nowrap;transition:background .25s,color .25s,box-shadow .25s,transform .25s var(--ease);will-change:transform}
.btn svg{font-size:1.1em;transition:transform .3s var(--ease)}
.btn:hover svg{transform:translate(4px)}
.btn--red{background:var(--red);color:#fff;box-shadow:0 12px 30px -12px #e3261be6,inset 0 1px #ffffff40}
.btn--red:hover{background:var(--red2)}
.btn--gold{background:var(--gold);color:var(--ink)}
.btn--light{background:var(--paper);color:var(--ink)}
.btn--line{border:1px solid var(--line);background:#fff}
.btn--line:hover{border-color:var(--ink)}
.btn--xl{height:64px;padding:0 36px;font-size:1.05rem}
.btn--block{width:100%}
.btn--hdr{height:44px;padding:0 20px}
.loader{position:fixed;inset:0;z-index:200;background:var(--ink);color:#fff;display:grid;place-items:center;transition:clip-path 1s var(--ease);clip-path:inset(0 0 0 0)}
.loader.is-done{clip-path:inset(0 0 100% 0);pointer-events:none}
.loader__in{display:flex;align-items:center;gap:18px}
.loader__slice{width:56px;height:56px;animation:wob 1.2s var(--ease) infinite alternate}
@keyframes wob{0%{transform:rotate(-12deg)}
to{transform:rotate(12deg) scale(1.06)}
}
.loader__n{font-family:var(--display);font-weight:800;font-size:clamp(4rem,12vw,9rem);letter-spacing:-.05em;line-height:1;font-variant-numeric:tabular-nums;min-width:3ch}
.loader__word{position:absolute;bottom:40px;font-family:var(--display);font-weight:800;font-size:1.1rem;letter-spacing:-.02em;opacity:.6}
.loader__word em{font-style:normal;color:var(--gold);margin-left:4px}
.hdr{position:fixed;top:14px;left:var(--pad);right:var(--pad);z-index:90;display:flex;align-items:center;gap:18px;height:64px;padding:0 10px 0 18px;border-radius:999px;color:#fff;background:#14100d8c;backdrop-filter:blur(18px) saturate(1.4);-webkit-backdrop-filter:blur(18px) saturate(1.4);border:1px solid rgba(255,255,255,.08);transition:transform .5s var(--ease),background .3s}
.hdr.is-hidden{transform:translateY(-130%)}
.hdr.is-solid{background:#0f0c0adb}
.brand{display:flex;align-items:center;gap:10px}
.brand__mark{width:38px;height:38px;stroke:none;transition:transform .6s var(--ease)}
.brand:hover .brand__mark{transform:rotate(-25deg) scale(1.05)}
.brand__txt{font-family:var(--display);font-weight:800;font-size:1.35rem;letter-spacing:-.04em}
.brand__txt b{font-weight:800;color:var(--gold);margin-left:3px}
.brand__txt--xl{font-size:2.4rem}
.hdr__nav{display:flex;gap:2px;margin:0 auto}
.hdr__nav a{position:relative;padding:10px 14px;font-size:.9rem;font-weight:500;color:#ffffffbf;border-radius:999px;transition:color .2s,background .2s}
.hdr__nav a:hover,.hdr__nav a.is-on{color:#fff;background:#ffffff14}
.hdr__tools{display:flex;align-items:center;gap:8px;margin-left:auto}
.kbd-btn{display:flex;align-items:center;gap:10px;height:44px;padding:0 14px;border-radius:999px;background:#ffffff12;font-size:.88rem;color:#fffc;transition:background .2s}
.kbd-btn:hover{background:#ffffff24}
.kbd-btn svg{font-size:1.1rem}
.cart-btn{position:relative;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:#ffffff12;font-size:1.25rem;transition:background .2s}
.cart-btn:hover{background:#ffffff24}
.cart-btn__n{position:absolute;top:-2px;right:-2px;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:var(--gold);color:var(--ink);font-size:.7rem;font-weight:700;display:grid;place-items:center;transform:scale(0);transition:transform .4s var(--ease)}
.cart-btn__n.has{transform:scale(1)}
.bump{animation:bump .5s var(--ease)}
@keyframes bump{30%{transform:scale(1.25)}
}
.hero{position:relative;min-height:100svh;background:var(--ink);color:#fff;overflow:hidden;display:flex;flex-direction:column}
.hero__bg{position:absolute;inset:0;pointer-events:none}
.hero__glow{position:absolute;width:90vmax;height:90vmax;left:50%;top:58%;translate:-50% -50%;background:radial-gradient(circle,rgba(227,38,27,.45),rgba(227,38,27,.08) 40%,transparent 62%);filter:blur(10px)}
.hero__inner{position:relative;flex:1;display:grid;grid-template-columns:1fr;justify-items:center;align-content:center;text-align:center;padding:110px var(--pad) 48px}
.hero__status{display:inline-flex;align-items:center;gap:10px;height:34px;padding:0 14px;border-radius:999px;background:#ffffff0f;border:1px solid var(--lineL);font-size:.82rem;color:#fffc;margin-bottom:22px}
.pulse{width:8px;height:8px;border-radius:50%;background:#3ddc84;box-shadow:0 0 #3ddc8499;animation:pulse 2s infinite}
.hero__status.is-closed .pulse{background:var(--gold);box-shadow:none;animation:none}
@keyframes pulse{70%{box-shadow:0 0 0 10px #3ddc8400}
to{box-shadow:0 0 #3ddc8400}
}
.hero__title{position:relative;z-index:3;margin:0;font-family:var(--display);font-weight:800;font-size:clamp(3.2rem,9vw,9.6rem);line-height:.88;letter-spacing:-.055em;font-variation-settings:"opsz" 96}
.hero__title .line{display:block;overflow:hidden;padding:.04em .06em .1em}
.hero__title .word{display:inline-block;will-change:transform}
.hero__title .line--accent{color:var(--red)}
.hero__title .serif{color:var(--gold)}
.hero__stage{position:relative;z-index:2;width:min(500px,50vh,78vw);aspect-ratio:1;margin-top:clamp(-90px,-5vw,-30px);margin-bottom:-150px}
.hero__pizza{position:absolute;inset:0;border-radius:50%;filter:drop-shadow(0 50px 60px rgba(0,0,0,.65))}
.hero__pizza .media{width:100%;height:100%;border-radius:50%;background:transparent}
.hero__pizza .media img{border-radius:50%;object-fit:cover;transform:scale(1.18)}
.hero__pizza .media>.art-svg{width:100%;height:100%}
.sticker{position:absolute;z-index:3;display:grid;place-items:center;text-align:center;font-family:var(--display);font-weight:800;letter-spacing:-.03em;line-height:.9;border-radius:50%;box-shadow:0 20px 40px -15px #0009}
.sticker--miam{width:110px;height:110px;left:-4%;top:18%;background:var(--gold);color:var(--ink);font-size:1.9rem;rotate:-14deg}
.sticker--hot{width:120px;height:120px;right:-6%;top:44%;background:var(--red);color:#fff;font-size:2rem;rotate:10deg;align-content:center}
.sticker--hot small{display:block;font-family:var(--ui);font-weight:600;font-size:.62rem;letter-spacing:.08em;text-transform:uppercase;margin-top:4px}
.leaf{position:absolute;z-index:3;width:46px;height:24px;background:linear-gradient(135deg,#3f9d58,#1f5e33);border-radius:0 100%}
.leaf--a{left:6%;bottom:16%;rotate:-30deg}
.leaf--b{right:12%;top:6%;rotate:40deg;scale:.8}
.leaf--c{left:44%;top:-4%;rotate:12deg;scale:.65}
.tomato{position:absolute;z-index:1;width:54px;height:54px;border-radius:50%;background:radial-gradient(circle at 35% 35%,#ff6b5a,#c8231a 60%,#8f150f);box-shadow:inset 0 0 0 5px #ffffff14}
.tomato--a{left:10%;top:-2%;scale:.7}
.tomato--b{right:2%;bottom:6%}
.hero__scroll{position:absolute;left:var(--pad);bottom:28px;display:flex;align-items:center;gap:10px;font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:#ffffff80}
.hero__scroll span{width:1px;height:36px;background:linear-gradient(var(--gold),transparent);animation:drip 1.8s var(--ease) infinite}
@keyframes drip{0%{transform:scaleY(0);transform-origin:top}
50%{transform:scaleY(1);transform-origin:top}
51%{transform-origin:bottom}
to{transform:scaleY(0);transform-origin:bottom}
}
.console{position:relative;z-index:4;width:min(760px,100%);padding:10px;border-radius:30px;background:#ffffff14;border:1px solid var(--lineL);backdrop-filter:blur(22px) saturate(1.3);-webkit-backdrop-filter:blur(22px) saturate(1.3);box-shadow:0 40px 80px -30px #000c;text-align:left}
.console__modes{position:relative;display:grid;grid-template-columns:1fr 1fr;padding:4px;border-radius:999px;background:#00000059;margin-bottom:10px}
.mode{position:relative;z-index:1;height:42px;border-radius:999px;display:flex;align-items:center;justify-content:center;gap:8px;font-weight:600;font-size:.9rem;color:#ffffffa6;transition:color .3s}
.mode svg{font-size:1.15rem}
.mode em{font-style:normal;font-size:.7rem;font-weight:700;color:var(--gold);text-transform:uppercase;letter-spacing:.06em}
.mode.is-on{color:var(--ink)}
.mode.is-on em{color:var(--red)}
.mode__pill{position:absolute;top:4px;bottom:4px;left:4px;width:calc(50% - 4px);border-radius:999px;background:#fff;transition:transform .5s var(--ease)}
.console[data-mode=emporter] .mode__pill{transform:translate(100%)}
.console__row{display:flex;gap:8px}
.console__store{flex:1;min-width:0;display:flex;align-items:center;gap:12px;height:60px;padding:0 16px;border-radius:20px;background:#fff;color:var(--ink);text-align:left;transition:box-shadow .2s}
.console__store:hover{box-shadow:0 0 0 2px var(--gold)}
.console__store>svg:first-child{font-size:1.3rem;color:var(--red)}
.console__store span{flex:1;min-width:0;display:flex;flex-direction:column;line-height:1.2}
.console__store small{font-size:.72rem;color:var(--muted);font-weight:500}
.console__store b{font-weight:700;font-size:.98rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.chev{color:var(--muted)}
.console__geo{width:60px;height:60px;border-radius:20px;background:#ffffff1f;display:grid;place-items:center;font-size:1.35rem;transition:background .2s}
.console__geo:hover{background:#fff3}
.btn--go{height:60px;border-radius:20px;padding:0 26px}
.console__quick{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px;padding:0 4px 2px}
.console__quick a{height:32px;display:inline-flex;align-items:center;padding:0 12px;border-radius:999px;font-size:.8rem;font-weight:500;color:#fffc;background:#ffffff0f;border:1px solid var(--lineL);transition:background .2s,color .2s}
.console__quick a:hover{background:#fff;color:var(--ink)}
.ticker{background:var(--red);color:#fff;overflow:hidden;padding:18px 0;border-block:1px solid rgba(0,0,0,.15)}
.ticker__track{display:flex;width:max-content;gap:34px;font-family:var(--display);font-weight:800;font-size:clamp(1.4rem,2.6vw,2.2rem);letter-spacing:-.03em;line-height:1;white-space:nowrap;animation:tick 40s linear infinite}
.ticker__track i{width:10px;height:10px;border-radius:50%;background:var(--gold);align-self:center}
@keyframes tick{to{transform:translate(-50%)}
}
.sig{position:relative;background:var(--paper);overflow:hidden;padding:clamp(80px,10vw,140px) 0}
.sig__head{padding:0 var(--pad);max-width:1100px;margin-bottom:56px}
.sig__hint{display:flex;align-items:center;gap:8px;margin:22px 0 0;font-size:.85rem;color:var(--muted)}
.sig__track{display:flex;gap:22px;padding:0 var(--pad);width:max-content;will-change:transform}
.pcard{position:relative;flex:none;width:clamp(280px,27vw,400px);aspect-ratio:3/4.3;border-radius:var(--r);overflow:hidden;background:var(--cream);display:flex;flex-direction:column;text-align:left;isolation:isolate;transition:transform .6s var(--ease)}
.pcard:nth-child(3n+2){background:#f6d9c8}
.pcard:nth-child(3n+3){background:#efe3b8}
.pcard__n{position:absolute;top:22px;left:24px;font-family:var(--display);font-weight:800;font-size:.9rem;letter-spacing:-.02em;opacity:.45}
.pcard__tag{position:absolute;top:18px;right:18px;z-index:2}
.pcard__img{flex:1;display:grid;place-items:center;padding:58px 26px 0}
.pcard__img .media{width:100%;aspect-ratio:1;border-radius:50%;background:transparent}
.pcard__img .media img{mix-blend-mode:multiply;border-radius:50%;transition:transform 1s var(--ease)}
.pcard:hover .pcard__img .media img,.pcard:hover .pcard__img .art-svg{transform:rotate(25deg) scale(1.04)}
.pcard__img .art-svg{transition:transform 1s var(--ease)}
.pcard__body{padding:22px 24px 24px}
.pcard__name{font-family:var(--display);font-weight:800;font-size:clamp(2rem,3vw,2.8rem);letter-spacing:-.045em;line-height:.95;margin:0 0 8px}
.pcard__pitch{font-size:.98rem;line-height:1.4;margin:0 0 18px;color:#4a3f37}
.pcard__foot{display:flex;align-items:center;justify-content:space-between}
.pcard__price{font-weight:700;font-size:1rem}
.pcard__price small{font-weight:500;color:var(--muted);margin-right:4px}
.add{width:48px;height:48px;border-radius:50%;background:var(--ink);color:#fff;display:grid;place-items:center;font-size:1.3rem;transition:transform .4s var(--ease),background .2s}
.add:hover{background:var(--red);transform:rotate(90deg)}
.add.is-ok{background:var(--basil)}
.pcard--end{background:var(--ink)!important;color:#fff;justify-content:center;align-items:flex-start;padding:36px}
.pcard--end h3{font-family:var(--display);font-weight:800;font-size:2.6rem;letter-spacing:-.045em;line-height:.95;margin:0 0 24px}
.tag{display:inline-flex;align-items:center;height:26px;padding:0 10px;border-radius:999px;font-size:.68rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;background:#fff;color:var(--ink)}
.tag--best{background:var(--ink);color:var(--gold)}
.tag--veg{background:var(--basil);color:#fff}
.tag--hot{background:var(--hot);color:#fff}
.tags{display:flex;gap:6px;flex-wrap:wrap}
.univ{background:var(--ink);color:#fff;padding:clamp(90px,12vw,170px) var(--pad);overflow:hidden}
.univ__intro{max-width:1200px}
.display[data-split] .w{display:inline-block;overflow:hidden;vertical-align:top;padding-bottom:.06em}
.display[data-split] .w>span{display:inline-block}
.stats{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--lineL);margin:clamp(60px,8vw,110px) 0}
.stat{padding:32px 24px 0 0}
.stat+.stat{padding-left:24px;border-left:1px solid var(--lineL)}
.stat b{font-family:var(--display);font-weight:800;font-size:clamp(3rem,6vw,5.6rem);letter-spacing:-.05em;line-height:1;font-variant-numeric:tabular-nums}
.stat span{font-weight:700;font-size:clamp(1rem,1.6vw,1.4rem);color:var(--gold);margin-left:6px}
.stat p{margin:8px 0 0;color:#ffffff8c;font-size:.92rem}
.steps{display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,7vw,120px);align-items:start}
.steps__visual{position:sticky;top:15vh;aspect-ratio:1;max-width:520px;width:100%;justify-self:center}
.steps__disc{position:absolute;inset:9%;border-radius:50%;overflow:hidden;background:var(--ink3)}
.steps__img{position:absolute;inset:0;opacity:0;transform:scale(1.15) rotate(-8deg);transition:opacity .8s var(--ease),transform 1.2s var(--ease)}
.steps__img.is-on{opacity:1;transform:none}
.steps__img .media{width:100%;height:100%;background:transparent}
.steps__img .media img{object-fit:cover;transform:scale(1.2)}
.steps__img .media>.art-svg{width:100%;height:100%}
.steps__ring{position:absolute;inset:0;animation:spin 28s linear infinite}
.steps__ring svg{width:100%;height:100%;stroke:none}
.steps__ring text{fill:#ffffff80;font-family:var(--ui);font-size:9.4px;font-weight:600;letter-spacing:3.2px}
@keyframes spin{to{transform:rotate(360deg)}
}
.steps__list{list-style:none;margin:0;padding:10vh 0}
.step{min-height:46vh;display:flex;flex-direction:column;justify-content:center;opacity:.28;transition:opacity .6s var(--ease)}
.step.is-on{opacity:1}
.step__n{font-size:.8rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--gold)}
.step h3{font-family:var(--display);font-weight:800;font-size:clamp(2rem,3.6vw,3.4rem);letter-spacing:-.045em;line-height:.98;margin:6px 0 16px}
.step p{margin:0;font-size:1.08rem;line-height:1.6;color:#ffffffa6;max-width:44ch}
.menus,.carte,.restos{padding:clamp(90px,11vw,150px) var(--pad)}
.menus{background:var(--cream)}
.sec-head{display:flex;justify-content:space-between;align-items:flex-end;gap:28px;flex-wrap:wrap;margin-bottom:48px}
.sec-head__note{max-width:32ch;margin:0;color:var(--muted);font-size:1.05rem}
.bento{display:grid;grid-template-columns:repeat(6,1fr);grid-auto-rows:minmax(220px,auto);gap:16px}
.bmenu{position:relative;border-radius:var(--r);padding:26px;display:flex;flex-direction:column;overflow:hidden;background:var(--paper);isolation:isolate;transition:transform .5s var(--ease)}
.bmenu:hover{transform:translateY(-6px)}
.bmenu:nth-child(1){grid-column:span 3;grid-row:span 2;background:var(--ink);color:#fff}
.bmenu:nth-child(2){grid-column:span 3;background:var(--red);color:#fff}
.bmenu:nth-child(3){grid-column:span 3}
.bmenu:nth-child(4){grid-column:span 3;background:var(--gold)}
.bmenu:nth-child(5){grid-column:span 3}
.bmenu__tag{align-self:flex-start;margin-bottom:auto}
.bmenu__img{position:absolute;right:-8%;bottom:-14%;width:58%;aspect-ratio:1;z-index:-1;transition:transform 1s var(--ease)}
.bmenu:hover .bmenu__img{transform:rotate(18deg) scale(1.05)}
.bmenu__img .media{width:100%;height:100%;border-radius:50%;background:transparent}
.bmenu__img .media img{border-radius:50%;mix-blend-mode:multiply}
.bmenu:nth-child(1) .bmenu__img{width:70%;right:-10%;bottom:-8%}
.bmenu:nth-child(1) .bmenu__img .media img,.bmenu:nth-child(2) .bmenu__img .media img{mix-blend-mode:normal}
.bmenu h3{font-family:var(--display);font-weight:800;font-size:clamp(1.8rem,2.6vw,2.6rem);letter-spacing:-.045em;line-height:.95;margin:18px 0 8px;max-width:12ch}
.bmenu:nth-child(1) h3{font-size:clamp(2.6rem,4.6vw,4.4rem)}
.bmenu p{margin:0 0 18px;max-width:28ch;opacity:.75;font-size:.95rem}
.bmenu__foot{display:flex;align-items:center;gap:14px}
.bmenu__price{font-family:var(--display);font-weight:800;font-size:2rem;letter-spacing:-.04em}
.bmenu .btn{height:44px}
.bmenu:nth-child(1) .btn,.bmenu:nth-child(2) .btn{background:#fff;color:var(--ink);box-shadow:none}
.search-fake{display:flex;align-items:center;gap:12px;height:54px;padding:0 18px;border-radius:999px;background:#fff;border:1px solid var(--line);color:var(--muted);min-width:min(360px,100%);transition:border-color .2s}
.search-fake:hover{border-color:var(--ink)}
.search-fake svg{font-size:1.2rem;color:var(--ink)}
.search-fake kbd{margin-left:auto}
.catbar{position:sticky;top:88px;z-index:20;display:flex;align-items:center;gap:12px;padding:8px;margin:0 calc(var(--pad) * -.5) 36px;border-radius:999px;background:#fbf7f0d1;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--line)}
.catbar__in{display:flex;gap:4px;overflow-x:auto;scrollbar-width:none;flex:1}
.catbar__in::-webkit-scrollbar{display:none}
.cat{flex:none;height:44px;padding:0 16px;border-radius:999px;font-weight:600;font-size:.9rem;display:flex;align-items:center;gap:8px;color:var(--muted);transition:background .25s,color .25s}
.cat:hover{color:var(--ink)}
.cat.is-on{background:var(--ink);color:#fff}
.cat i{font-style:normal;font-size:.72rem;opacity:.6}
.catbar__filters{display:flex;gap:4px;padding-left:12px;border-left:1px solid var(--line)}
.chip{height:36px;padding:0 12px;border-radius:999px;font-size:.82rem;font-weight:600;display:flex;align-items:center;gap:6px;color:var(--muted);border:1px solid transparent;transition:all .2s}
.chip.is-on{border-color:var(--ink);color:var(--ink);background:#fff}
.dot{width:8px;height:8px;border-radius:50%}
.dot--veg{background:var(--basil)}
.dot--hot{background:var(--hot)}
.dot--best{background:var(--gold)}
.mgroup{margin-bottom:72px;scroll-margin-top:170px}
.mgroup__h{display:flex;align-items:baseline;gap:14px;margin:0 0 22px;font-family:var(--display);font-weight:800;font-size:clamp(1.8rem,3vw,2.6rem);letter-spacing:-.045em}
.mgroup__h small{font-weight:500;font-size:1rem;color:var(--muted);letter-spacing:0}
.mgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px}
.item{position:relative;display:flex;flex-direction:column;background:#fff;border-radius:24px;overflow:hidden;text-align:left;border:1px solid var(--line);transition:transform .5s var(--ease),box-shadow .5s var(--ease)}
.item:hover{transform:translateY(-6px);box-shadow:0 30px 50px -30px #0f0c0a59}
.item__img{position:relative;aspect-ratio:5/4;background:var(--cream);overflow:hidden}
.item__img .media{width:100%;height:100%;background:transparent}
.item__img .media img{mix-blend-mode:multiply;transition:transform .9s var(--ease)}
.item:hover .item__img .media img{transform:scale(1.07) rotate(4deg)}
.item__img .tags{position:absolute;top:12px;left:12px}
.item__body{padding:16px 18px 18px;display:flex;flex-direction:column;gap:6px;flex:1}
.item__name{font-family:var(--display);font-weight:800;font-size:1.45rem;letter-spacing:-.04em;line-height:1}
.item__pitch{font-size:.88rem;color:var(--muted);line-height:1.45;flex:1}
.item__foot{display:flex;align-items:center;justify-content:space-between;margin-top:8px}
.item__price{font-weight:700}
.item__price small{font-weight:500;color:var(--muted);margin-right:3px}
.item .add{width:40px;height:40px;font-size:1.1rem}
.empty{grid-column:1/-1;padding:60px 20px;text-align:center;color:var(--muted)}
.fid{padding:0 var(--pad) clamp(90px,11vw,150px);background:var(--paper)}
.fid__card{position:relative;overflow:hidden;border-radius:40px;background:var(--ink);color:#fff;padding:clamp(36px,6vw,90px);display:grid;grid-template-columns:1fr 1fr;gap:clamp(36px,6vw,90px);align-items:center}
.fid__card:before{content:"";position:absolute;width:60%;aspect-ratio:1;right:-20%;top:-50%;background:radial-gradient(circle,rgba(255,179,33,.35),transparent 60%)}
.fid__copy{position:relative}
.fid__copy p{color:#ffffffb3;font-size:1.08rem;max-width:42ch;margin:22px 0 30px}
.meter{position:relative;padding-top:10px}
.meter__bar{height:14px;border-radius:999px;background:#ffffff1a;overflow:hidden}
.meter__bar span{display:block;height:100%;width:0;border-radius:999px;background:linear-gradient(90deg,var(--gold),var(--red));transition:width 2.2s var(--ease)}
.meter.is-in .meter__bar span{width:100%}
.meter__steps{list-style:none;margin:0;padding:0;position:relative;height:150px}
.meter__steps li{position:absolute;left:var(--p);top:0;transform:translate(-100%);text-align:right;padding-top:26px}
.meter__steps li:before{content:"";position:absolute;right:0;top:-12px;width:2px;height:30px;background:#ffffff4d}
.meter__steps li:nth-child(2n){padding-top:84px}
.meter__steps li:nth-child(2n):before{height:88px}
.meter__steps b{display:block;font-family:var(--display);font-weight:800;font-size:2rem;letter-spacing:-.04em;line-height:1;color:var(--gold)}
.meter__steps span{font-size:.8rem;color:#ffffffa6;white-space:nowrap}
.restos{background:var(--cream)}
.restos__tools{display:flex;gap:10px;flex-wrap:wrap}
.field{display:flex;align-items:center;gap:10px;height:52px;padding:0 18px;border-radius:999px;background:#fff;border:1px solid var(--line);min-width:min(300px,100%)}
.field:focus-within{border-color:var(--ink)}
.field input{border:0;outline:0;background:transparent;font:inherit;width:100%}
.restos__grid{display:grid;grid-template-columns:1fr 1.3fr;gap:20px;align-items:start}
.restos__map{position:sticky;top:100px;aspect-ratio:1/1.05;border-radius:var(--r);background:var(--ink);overflow:hidden}
.restos__map svg{width:100%;height:100%;stroke:none}
.restos__map .pin{cursor:pointer;transition:transform .3s var(--ease)}
.restos__map .pin:hover,.restos__map .pin.is-on{transform:scale(1.6)}
.restos__list{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.store{background:var(--paper);border-radius:22px;padding:20px;border:1.5px solid transparent;transition:border-color .2s,transform .3s var(--ease)}
.store:hover{transform:translateY(-3px)}
.store.is-mine{border-color:var(--red)}
.store__top{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}
.store h3{margin:0;font-family:var(--display);font-weight:800;font-size:1.3rem;letter-spacing:-.035em;line-height:1.05}
.store__open{font-size:.72rem;font-weight:600;display:inline-flex;align-items:center;gap:6px;color:var(--basil);white-space:nowrap}
.store__open:before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}
.store__open.is-closed{color:var(--muted)}
.store p{margin:6px 0 14px;font-size:.88rem;color:var(--muted)}
.store__dist{font-weight:600;color:var(--ink)}
.store__act{display:flex;gap:6px;flex-wrap:wrap}
.mini{height:36px;padding:0 12px;border-radius:999px;font-size:.8rem;font-weight:600;display:inline-flex;align-items:center;gap:6px;background:#fff;border:1px solid var(--line);transition:all .2s}
.mini:hover{border-color:var(--ink)}
.mini--red{background:var(--red);border-color:var(--red);color:#fff}
.mini--red:hover{background:var(--red2)}
.outro{background:var(--red);color:#fff;padding:clamp(60px,8vw,110px) 0;overflow:hidden}
.outro__marquee{white-space:nowrap;font-family:var(--display);font-weight:800;font-size:clamp(4rem,13vw,13rem);letter-spacing:-.06em;line-height:.9}
.outro__marquee div{display:inline-block;will-change:transform}
.outro__cta{display:flex;align-items:center;gap:24px;flex-wrap:wrap;padding:40px var(--pad) 0}
.outro__cta span{opacity:.85}
.ftr{background:var(--ink);color:#ffffffa6;padding:80px var(--pad) 30px;overflow:hidden}
.ftr__top{display:grid;grid-template-columns:1.2fr 2fr;gap:60px}
.ftr__brand p{max-width:34ch;margin:16px 0 22px}
.ftr__brand .brand__txt{color:#fff}
.ftr__cols{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}
.ftr h4{margin:6px 0 16px;color:#fff;font-size:.78rem;letter-spacing:.14em;text-transform:uppercase}
.ftr__cols a{display:block;padding:6px 0;transition:color .2s}
.ftr__cols a:hover{color:#fff}
.social{display:flex;gap:10px}
.social a{width:46px;height:46px;border-radius:50%;border:1px solid var(--lineL);display:grid;place-items:center;font-size:1.15rem;transition:background .2s,border-color .2s}
.social a:hover{background:var(--red);border-color:var(--red);color:#fff}
.ftr__big{font-family:var(--display);font-weight:800;font-size:18.5vw;letter-spacing:-.07em;line-height:.8;color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.14);margin:60px 0 20px;white-space:nowrap}
.ftr__bottom{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:.78rem;color:#fff6;border-top:1px solid var(--lineL);padding-top:22px}
.media{position:relative;overflow:hidden;display:grid;place-items:center;background:var(--cream)}
.media>.art-svg{width:76%;height:76%;transition:opacity .4s}
.media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .6s var(--ease),transform .9s var(--ease)}
.media.has-img img{opacity:1}
.media.has-img>.art-svg{opacity:0}
.drawer{position:fixed;inset:0;z-index:150;pointer-events:none}
.drawer.is-open{pointer-events:auto}
.drawer__scrim{position:absolute;inset:0;background:#0f0c0a80;backdrop-filter:blur(4px);opacity:0;transition:opacity .4s}
.drawer.is-open .drawer__scrim{opacity:1}
.drawer__panel{position:absolute;top:10px;right:10px;bottom:10px;width:min(440px,calc(100% - 20px));border-radius:30px;background:var(--paper);display:flex;flex-direction:column;transform:translate(110%);transition:transform .6s var(--ease);overflow:hidden}
.drawer.is-open .drawer__panel{transform:none}
.drawer__head{display:flex;justify-content:space-between;align-items:center;padding:24px 24px 10px}
.drawer__head h3{margin:0;font-family:var(--display);font-weight:800;font-size:1.9rem;letter-spacing:-.045em}
.x{width:42px;height:42px;border-radius:50%;background:var(--cream2);font-size:1.4rem;line-height:1;display:grid;place-items:center;transition:transform .3s var(--ease)}
.x:hover{transform:rotate(90deg)}
.drawer__mode{padding:0 24px 12px;font-size:.85rem;color:var(--muted)}
.drawer__mode b{color:var(--ink)}
.drawer__body{flex:1;overflow-y:auto;padding:4px 24px}
.citem{display:grid;grid-template-columns:64px 1fr auto;gap:14px;align-items:center;padding:14px 0;border-bottom:1px solid var(--line)}
.citem .media{width:64px;height:64px;border-radius:16px}
.citem .media img{mix-blend-mode:multiply}
.citem b{display:block;font-family:var(--display);font-weight:800;letter-spacing:-.03em;font-size:1.1rem;line-height:1.1}
.citem small{color:var(--muted)}
.qty{display:flex;align-items:center;gap:4px;background:#fff;border:1px solid var(--line);border-radius:999px;padding:3px}
.qty button{width:30px;height:30px;border-radius:50%;font-weight:700;transition:background .2s}
.qty button:hover{background:var(--cream)}
.qty span{min-width:18px;text-align:center;font-weight:700;font-size:.9rem}
.cempty{text-align:center;padding:60px 10px;color:var(--muted)}
.cempty b{display:block;font-family:var(--display);font-size:1.6rem;color:var(--ink);letter-spacing:-.04em;margin:12px 0 6px}
.drawer__foot{padding:18px 24px 24px;border-top:1px solid var(--line);background:#fff}
.sum{display:flex;justify-content:space-between;font-size:.9rem;color:var(--muted);margin-bottom:6px}
.sum--total{font-size:1.15rem;color:var(--ink);font-weight:700;margin:10px 0 16px}
.sum b{color:var(--basil)}
.drawer__note{font-size:.75rem;color:var(--muted);text-align:center;margin:10px 0 0}
.sheet{border:0;padding:0;background:transparent;max-width:none;max-height:none;width:100%;height:100%;display:grid;place-items:center;color:var(--ink)}
.sheet:not([open]){display:none}
.sheet::backdrop{background:#0f0c0a8c;backdrop-filter:blur(6px)}
.sheet__in{position:relative;width:min(940px,calc(100% - 24px));max-height:calc(100dvh - 24px);overflow:auto;border-radius:34px;background:var(--paper);display:grid;grid-template-columns:1fr 1fr;animation:pop .55s var(--ease)}
.sheet__in--pad{display:block;padding:28px;width:min(640px,calc(100% - 24px))}
@keyframes pop{0%{opacity:0;transform:translateY(30px) scale(.97)}
}
.sheet__img{background:var(--cream);min-height:420px;display:grid;place-items:center;padding:30px}
.sheet__img .media{width:100%;aspect-ratio:1;border-radius:50%;background:transparent}
.sheet__img .media img{mix-blend-mode:multiply;border-radius:50%}
.sheet__body{padding:36px 34px;display:flex;flex-direction:column}
.sheet__body .x{position:absolute;top:16px;right:16px}
.sheet__name{font-family:var(--display);font-weight:800;font-size:clamp(2.4rem,4vw,3.6rem);letter-spacing:-.05em;line-height:.92;margin:8px 0 12px}
.sheet__pitch{font-size:1.12rem;line-height:1.45;margin:14px 0 18px;color:#4a3f37}
.sheet__ing{font-size:.92rem;color:var(--muted);margin:0 0 24px}
.sheet__ing b{display:block;color:var(--ink);font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;margin-bottom:6px}
.sizes{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:22px}
.size{border:1.5px solid var(--line);border-radius:18px;padding:14px;text-align:left;transition:border-color .2s,background .2s}
.size b{display:block;font-family:var(--display);font-weight:800;font-size:1.2rem;letter-spacing:-.03em}
.size span{font-size:.82rem;color:var(--muted)}
.size.is-on{border-color:var(--ink);background:#fff}
.sheet__cta{margin-top:auto;display:flex;gap:10px;align-items:center}
.sheet__top{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}
.sheet__top h3{margin:0;font-family:var(--display);font-weight:800;font-size:2rem;letter-spacing:-.045em}
.pick-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;max-height:60vh;overflow:auto}
.pick{padding:14px 16px;border-radius:18px;background:#fff;border:1.5px solid var(--line);text-align:left;transition:border-color .2s}
.pick:hover{border-color:var(--red)}
.pick b{display:block;font-weight:700}
.pick span{font-size:.8rem;color:var(--muted)}
.palette{border:0;padding:0;background:transparent;width:100%;max-width:none;height:100%;max-height:none;color:var(--ink)}
.palette:not([open]){display:none}
.palette::backdrop{background:#0f0c0a80;backdrop-filter:blur(8px)}
.palette__in{width:min(640px,calc(100% - 24px));margin:12vh auto 0;border-radius:26px;background:var(--paper);box-shadow:0 50px 100px -30px #0009;overflow:hidden;animation:pop .4s var(--ease)}
.palette__field{display:flex;align-items:center;gap:14px;padding:0 20px;height:66px;border-bottom:1px solid var(--line)}
.palette__field svg{font-size:1.3rem}
.palette__field input{flex:1;border:0;outline:0;background:transparent;font:inherit;font-size:1.08rem}
.palette__res{max-height:56vh;overflow:auto;padding:8px}
.palette__grp{padding:12px 12px 6px;font-size:.7rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.pres{width:100%;display:flex;align-items:center;gap:14px;padding:10px 12px;border-radius:14px;text-align:left}
.pres.is-act{background:var(--cream)}
.pres__ico{width:40px;height:40px;border-radius:12px;background:var(--cream2);display:grid;place-items:center;overflow:hidden;flex:none}
.pres__ico .media{width:100%;height:100%;background:transparent}
.pres__ico .media img{mix-blend-mode:multiply}
.pres__t{flex:1;min-width:0}
.pres__t b{display:block;font-weight:600}
.pres__t small{display:block;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pres__r{font-weight:600;font-size:.88rem}
.palette__foot{display:flex;gap:18px;padding:12px 20px;border-top:1px solid var(--line);font-size:.78rem;color:var(--muted)}
.palette__foot kbd{margin-right:3px}
.toast{position:fixed;left:50%;bottom:28px;z-index:170;transform:translate(-50%,140%);display:flex;align-items:center;gap:12px;padding:12px 14px 12px 18px;border-radius:999px;background:var(--ink);color:#fff;font-weight:500;font-size:.92rem;box-shadow:0 20px 40px -10px #00000080;transition:transform .5s var(--ease)}
.toast.is-on{transform:translate(-50%)}
.toast button{height:34px;padding:0 14px;border-radius:999px;background:var(--gold);color:var(--ink);font-weight:700;font-size:.82rem}
.cursor{position:fixed;left:0;top:0;z-index:160;width:84px;height:84px;margin:-42px 0 0 -42px;border-radius:50%;background:var(--gold);color:var(--ink);display:grid;place-items:center;font-weight:700;font-size:.85rem;pointer-events:none;transform:scale(0);transition:transform .35s var(--ease)}
.cursor.is-on{transform:scale(1)}
.tabbar{display:none}
.rv{opacity:0;transform:translateY(40px)}
.no-gsap .rv{opacity:1;transform:none}
@media (max-width:1180px){.hdr__nav{display:none}
.restos__list{grid-template-columns:1fr}
}
@media (max-width:900px){.kbd-btn span,.kbd-btn kbd{display:none}
.kbd-btn{width:44px;padding:0;justify-content:center}
.stats{grid-template-columns:1fr 1fr}
.stat:nth-child(3){padding-left:0;border-left:0}
.stat:nth-child(n+3){border-top:1px solid var(--lineL);margin-top:28px}
.steps{grid-template-columns:1fr}
.steps__visual{position:relative;top:0;max-width:340px}
.steps__list{padding:0}
.step{min-height:auto;padding:28px 0;opacity:1}
.bento{grid-template-columns:1fr 1fr}
.bmenu:nth-child(n){grid-column:span 1;grid-row:auto}
.bmenu:nth-child(1){grid-column:span 2}
.fid__card,.restos__grid{grid-template-columns:1fr}
.restos__map{position:relative;top:0;aspect-ratio:16/11}
.restos__list{grid-template-columns:1fr 1fr}
.sheet__in{grid-template-columns:1fr}
.sheet__img{min-height:0;padding:20px 60px}
.ftr__top{grid-template-columns:1fr}
}
@media (max-width:640px){:root{--r:24px}
.hdr{top:10px;height:58px;padding:0 6px 0 14px}
.brand__mark{width:34px;height:34px}
.brand__txt{font-size:1.2rem}
.btn--hdr,.cart-btn{display:none}
.hero__inner{padding:96px 16px 30px}
.hero__title{font-size:clamp(2.9rem,15vw,4.6rem)}
.hero__stage{width:80vw;margin-top:-14px;margin-bottom:-70px}
.sticker--miam{width:78px;height:78px;font-size:1.3rem;left:-2%}
.sticker--hot{width:84px;height:84px;font-size:1.35rem;right:-3%}
.sticker--hot small{font-size:.5rem}
.console{padding:8px;border-radius:24px}
.console__row{flex-wrap:wrap}
.console__store{flex:1 1 calc(100% - 68px)}
.btn--go{flex:1 1 100%}
.mode{font-size:.84rem}
.hero__scroll{display:none}
.sig__track{gap:14px}
.pcard{width:78vw}
.catbar{top:78px;flex-direction:column;align-items:stretch;border-radius:22px;gap:4px;margin:0 -8px 28px}
.catbar__filters{border-left:0;padding-left:0;overflow-x:auto}
.mgrid{grid-template-columns:1fr 1fr;gap:10px}
.item{border-radius:20px}
.item__body{padding:12px}
.item__name{font-size:1.12rem}
.item__pitch{font-size:.78rem;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.item .tags .tag{height:22px;font-size:.58rem;padding:0 7px}
.bento{grid-template-columns:1fr}
.bmenu:nth-child(1){grid-column:auto}
.bmenu{min-height:220px}
.meter__steps{height:auto;display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:22px}
.meter__steps li,.meter__steps li:nth-child(2n){position:static;transform:none;text-align:left;padding:0}
.meter__steps li:before{display:none}
.restos__list,.pick-grid{grid-template-columns:1fr}
.outro__cta .btn{width:100%}
.ftr{padding-bottom:110px}
.ftr__cols{grid-template-columns:1fr 1fr}
.tabbar{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;left:10px;right:10px;bottom:calc(10px + env(safe-area-inset-bottom));z-index:95;height:66px;padding:6px;border-radius:24px;background:#0f0c0ae6;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);box-shadow:0 20px 40px -10px #00000080}
.tabbar a,.tabbar button{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;border-radius:18px;font-size:.66rem;font-weight:600;color:#fff9}
.tabbar svg{font-size:1.35rem}
.tabbar .is-on{color:#fff;background:#ffffff14}
.tabbar__cart{background:var(--red)!important;color:#fff!important}
.tabbar__cart span{position:absolute;top:4px;right:12px;min-width:18px;height:18px;border-radius:999px;background:var(--gold);color:var(--ink);font-size:.62rem;display:grid;place-items:center}
.toast{bottom:92px;width:calc(100% - 24px);justify-content:space-between}
.cursor{display:none}
}
@media (hover:none){.cursor{display:none}
}
@media (prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition-duration:.01ms!important}
.rv{opacity:1;transform:none}
}
.sig--native .sig__track,.no-gsap .sig__track{width:auto;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding-bottom:10px}
.sig--native .sig__track::-webkit-scrollbar{display:none}
.sig--native .pcard,.no-gsap .pcard{scroll-snap-align:center}
.toast{opacity:0;transform:translate(-50%,180%);transition:transform .5s var(--ease),opacity .3s}
.toast.is-on{opacity:1;transform:translate(-50%)}
@media (min-width:901px){.sig{min-height:100vh;display:flex;flex-direction:column;justify-content:center;padding:110px 0 48px}
.sig__head{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;max-width:none;margin-bottom:36px}
.sig__head .kicker{position:absolute;top:110px}
.sig__head .display{font-size:clamp(2.2rem,4vw,4rem);max-width:16ch;margin-top:30px}
.sig__hint{margin:0 0 8px}
.pcard{width:auto;height:min(64vh,580px)}
}
@media (min-width:901px){.sig{justify-content:flex-start;padding:104px 0 40px}
.sig__head .kicker{position:static;margin-bottom:10px}
.sig__head{display:grid;grid-template-columns:1fr auto;margin-bottom:28px}
.sig__head .kicker{grid-column:1/-1}
.sig__head .display{margin-top:0}
.pcard{height:min(56vh,500px)}
.pcard__img{padding:48px 30px 0}
.pcard__img .media{width:auto;height:100%;max-height:100%;aspect-ratio:1}
}
@media (max-width:640px){.hero__title{font-size:clamp(2.6rem,12.6vw,4.2rem)}
.hero__status{font-size:.75rem}
.tabbar__cart span{transform:scale(0);transition:transform .4s var(--ease)}
.tabbar__cart span.has{transform:scale(1)}
.catbar .chip{height:30px;font-size:.76rem}
.cat{height:38px;font-size:.84rem}
.mgroup{scroll-margin-top:220px}
}
body{font-optical-sizing:auto;font-feature-settings:normal;letter-spacing:-.005em}
.display .serif,.display--xl .serif{color:var(--red)}
.univ .serif,.fid .serif,.phero .serif{color:var(--gold)}
.hero__glow{background:radial-gradient(circle,rgba(227,38,27,.32),rgba(227,38,27,.06) 42%,transparent 62%)}
.kicker{letter-spacing:.14em}
.univ{min-height:100vh;min-height:100svh;display:flex;flex-direction:column;justify-content:center;padding:clamp(88px,9vh,110px) var(--pad) clamp(28px,4vh,44px)}
.univ__wrap{flex:1;display:grid;grid-template-columns:1.1fr 1fr;gap:clamp(30px,5vw,80px);align-items:center;max-height:68vh}
.univ__title{font-size:clamp(2.4rem,4.6vw,4.6rem);margin-bottom:clamp(20px,4vh,44px)}
.univ .steps__list{display:grid;padding:0;margin:0;min-height:170px}
.univ .step{grid-area:1/1;min-height:0;display:block;opacity:0;transform:translateY(18px);transition:opacity .5s var(--ease),transform .7s var(--ease);pointer-events:none}
.univ .step.is-on{opacity:1;transform:none;pointer-events:auto}
.univ .step h3{font-size:clamp(1.6rem,2.6vw,2.5rem);margin:10px 0 12px}
.univ .step p{font-size:1rem;max-width:46ch}
.steps__nav{display:flex;gap:8px;margin-top:26px;max-width:420px}
.steps__nav button{flex:1;height:22px;display:flex;align-items:center}
.steps__nav span{display:block;width:100%;height:3px;border-radius:3px;background:#ffffff2e;position:relative;overflow:hidden}
.steps__nav span:after{content:"";position:absolute;inset:0;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .6s var(--ease)}
.steps__nav .is-on span:after,.steps__nav .is-done span:after{transform:scaleX(1)}
.univ .steps__visual{position:relative;top:auto;width:min(100%,56vh,520px);max-width:none}
.univ .stats{margin:clamp(20px,4vh,40px) 0 0;border-top:1px solid var(--lineL)}
.univ .stat{padding-top:clamp(14px,2.4vh,26px)}
.univ .stat b{font-size:clamp(2.2rem,4vw,3.8rem)}
.univ .stat p{margin-top:4px;font-size:.85rem}
.menus,.restos{padding:clamp(80px,9vh,110px) var(--pad) clamp(50px,7vh,80px)}
.menus .sec-head,.restos .sec-head,.carte .sec-head{margin-bottom:clamp(20px,3.5vh,36px)}
.bento{grid-auto-rows:minmax(150px,24vh)}
.bmenu{padding:22px}
.bmenu h3{font-size:clamp(1.5rem,2.1vw,2.1rem);margin:12px 0 6px}
.bmenu:nth-child(1) h3{font-size:clamp(2.2rem,3.6vw,3.6rem)}
.bmenu p{margin-bottom:12px}
.carte{padding:clamp(80px,9vh,110px) var(--pad) clamp(60px,8vh,90px)}
.catbar--tabs{position:relative;top:auto;margin:0 0 20px;display:inline-flex;max-width:100%}
.mgrid--preview{grid-template-columns:repeat(4,1fr);gap:14px}
.mgrid--preview .item__img{aspect-ratio:16/10}
.mgrid--preview .item__body{padding:12px 14px 14px}
.mgrid--preview .item__name{font-size:1.2rem}
.mgrid--preview .item__pitch{font-size:.8rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.mgrid--preview .item .add{width:36px;height:36px}
.carte__more{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin-top:26px}
.carte__note{color:var(--muted);font-size:.9rem}
.restos__grid{height:min(640px,calc(100vh - 250px));min-height:440px;align-items:stretch}
.restos__map{position:relative;top:auto;aspect-ratio:auto;height:100%}
.restos__list{overflow-y:auto;align-content:start;padding-right:6px;overscroll-behavior:contain;scrollbar-width:thin}
.phero{background:var(--ink);color:#fff;padding:clamp(120px,16vh,170px) var(--pad) clamp(40px,6vh,64px);position:relative;overflow:hidden}
.phero:before{content:"";position:absolute;width:70vmax;height:70vmax;right:-25vmax;top:-30vmax;background:radial-gradient(circle,rgba(227,38,27,.3),transparent 60%)}
.phero__in{position:relative;max-width:1100px}
.phero__title{font-size:clamp(2.6rem,6vw,5.6rem)}
.phero__sub{max-width:58ch;color:#ffffffb3;margin:18px 0 28px;font-size:1.05rem}
.phero__tools{display:flex;gap:10px;flex-wrap:wrap}
.phero .search-fake{background:#ffffff14;border-color:var(--lineL);color:#ffffffbf}
.phero .search-fake svg{color:#fff}
.console__store--light{flex:none;width:min(340px,100%);height:54px;border-radius:999px}
.carte--full{padding-top:28px}
.carte--full .catbar{margin-bottom:40px}
.hdr__nav a.is-on[aria-current]{color:#fff;background:#ffffff14}
@media (max-width:1180px){.mgrid--preview{grid-template-columns:repeat(3,1fr)}
.mgrid--preview .item:nth-child(n+7){display:none}
}
@media (max-width:900px){.univ__wrap{grid-template-columns:1fr;max-height:none;gap:20px}
.univ .steps__visual{width:min(64vw,300px);justify-self:center;order:-1}
.univ .steps__list{min-height:200px}
.restos__grid{height:auto;min-height:0}
.restos__map{aspect-ratio:16/11;height:auto}
.restos__list{max-height:60vh}
.mgrid--preview{grid-template-columns:1fr 1fr}
.mgrid--preview .item:nth-child(n+5){display:none}
}
@media (max-width:640px){.univ{padding-top:84px}
.univ__title{font-size:clamp(2rem,9vw,2.8rem)}
.univ .stats{grid-template-columns:repeat(4,1fr)}
.univ .stat{padding:14px 6px 0 0;border:0!important;margin:0!important}
.univ .stat+.stat{padding-left:8px}
.univ .stat b{font-size:1.7rem}
.univ .stat span{font-size:.8rem;margin-left:2px}
.univ .stat p{font-size:.68rem;line-height:1.25}
.catbar--tabs{flex-direction:row;border-radius:999px;margin:0 0 16px}
.bento{grid-auto-rows:auto}
.phero__tools>*{width:100%}
}
.display{font-size:clamp(2.1rem,4vw,3.9rem)}
.steps__ring text{letter-spacing:2.6px}
.mgrid--preview .item__img{aspect-ratio:2/1}
.mgrid--preview .item__img .media img{object-fit:contain}
.restos__list{grid-template-columns:1fr;gap:8px}
.store{display:grid;grid-template-columns:1fr auto;gap:6px 18px;align-items:center;padding:16px 18px}
.store__top{grid-column:1}
.store p{grid-column:1;margin:0}
.store__act{grid-column:2;grid-row:1/3;flex-wrap:nowrap}
@media (max-width:1180px){.store{grid-template-columns:1fr}
.store__act{grid-column:1;grid-row:auto;flex-wrap:wrap;margin-top:8px}
}
.restos .display{max-width:13ch}
.restos__tools{flex-wrap:nowrap}
@media (max-width:640px){.restos__tools{flex-wrap:wrap}
}
