/* Carta (view-only menu) — additive styles, scoped to .carta */
.carta-hero{padding:56px 0 18px;position:relative}
.carta-hero h1{max-width:16ch;background:linear-gradient(92deg,#fff 0%,var(--cyan) 45%,var(--orange) 100%);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 0 22px rgba(94,243,255,.18))}
.carta-hero .lead{max-width:52ch}
.carta-meta{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}
.carta-pill{display:inline-flex;align-items:center;gap:8px;padding:7px 14px;border-radius:999px;border:1px solid var(--line);background:rgba(16,23,53,.7);font-size:14px;color:var(--muted)}
.carta-pill b{color:var(--cyan);font-weight:700}
.carta-pill.vat b{color:var(--orange)}
.carta-tabs{position:sticky;top:72px;z-index:30;background:rgba(7,9,20,.82);backdrop-filter:blur(16px);border-block:1px solid var(--line)}
.carta-tabs .wrap{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;padding:10px 0;scroll-snap-type:x proximity}
.carta-tabs .wrap::-webkit-scrollbar{display:none}
.carta-tab{flex:0 0 auto;scroll-snap-align:start;text-decoration:none;font-weight:600;font-size:15px;color:var(--muted);padding:8px 16px;border-radius:999px;border:1px solid transparent;transition:color .2s,background .25s,border-color .25s,box-shadow .25s;white-space:nowrap}
.carta-tab:hover{color:#fff;border-color:var(--line)}
.carta-tab[aria-current="true"]{color:#06101c;background:linear-gradient(90deg,var(--cyan),#9ef8ff);box-shadow:0 0 18px rgba(94,243,255,.45)}
.carta-cat{scroll-margin-top:140px;padding:38px 0 8px}
.carta-cat-head{display:flex;align-items:baseline;gap:14px;margin-bottom:18px}
.carta-cat-head h2{font-size:clamp(28px,3.4vw,42px)}
.carta-cat-head::after{content:"";flex:1;height:1px;background:linear-gradient(90deg,rgba(94,243,255,.5),rgba(255,154,60,.35),transparent)}
.carta-grid{display:grid;gap:16px;grid-template-columns:1fr}
@media (min-width:700px){.carta-grid{grid-template-columns:repeat(2,1fr)}}
@media (min-width:1040px){.carta-grid{grid-template-columns:repeat(3,1fr)}}
.dish{position:relative;display:flex;flex-direction:column;border-radius:22px;overflow:hidden;background:var(--card);border:1px solid var(--line);transition:transform .35s cubic-bezier(.2,.7,.2,1),border-color .3s,box-shadow .35s;opacity:0;transform:translateY(14px)}
.dish.in{opacity:1;transform:none;transition:opacity .5s ease,transform .5s cubic-bezier(.2,.7,.2,1),border-color .3s,box-shadow .35s}
.dish:hover{border-color:rgba(94,243,255,.45);box-shadow:0 14px 40px -14px rgba(94,243,255,.35),0 0 0 1px rgba(255,154,60,.12)}
.dish-media{position:relative;aspect-ratio:16/10;background:#0b1130;overflow:hidden}
.dish-media img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}
.dish:hover .dish-media img{transform:scale(1.04)}
.dish-media::after{content:"";position:absolute;inset:auto 0 0 0;height:45%;background:linear-gradient(transparent,rgba(7,9,20,.75))}
.dish-noimg{position:absolute;inset:0;display:grid;place-items:center;background:radial-gradient(240px 160px at 20% 10%,rgba(94,243,255,.22),transparent 70%),radial-gradient(260px 180px at 90% 100%,rgba(255,154,60,.22),transparent 70%),linear-gradient(135deg,#0d1640,#0a0f2a)}
.dish-noimg span{font-family:Syne,Outfit,sans-serif;font-size:56px;font-weight:800;color:transparent;-webkit-text-stroke:1.5px rgba(94,243,255,.7);text-shadow:0 0 24px rgba(94,243,255,.35);letter-spacing:-.04em}
.dish-price{position:absolute;right:12px;bottom:12px;z-index:2;font-weight:800;font-size:19px;padding:6px 13px;border-radius:999px;color:#1a0b00;background:linear-gradient(90deg,var(--orange),#ffc27a);box-shadow:0 0 20px rgba(255,154,60,.5);font-variant-numeric:tabular-nums}
.dish-body{padding:16px 18px 18px;display:flex;flex-direction:column;gap:8px;flex:1}
.dish-body h3{font-size:21px;line-height:1.15;letter-spacing:-.02em}
.dish-body p{margin:0;color:var(--muted);font-size:15.5px;line-height:1.45}
.badges{display:flex;flex-wrap:wrap;gap:6px;margin-top:auto;padding-top:6px}
.badge{font-size:12px;font-weight:700;letter-spacing:.04em;padding:3px 10px;border-radius:999px;border:1px solid}
.badge.halal{color:#7dffc4;border-color:rgba(125,255,196,.45);background:rgba(125,255,196,.08)}
.badge.kids{color:var(--cyan);border-color:rgba(94,243,255,.45);background:rgba(94,243,255,.08)}
.badge.adult{color:#ff8fa3;border-color:rgba(255,143,163,.5);background:rgba(255,143,163,.08)}
.badge.alg{color:var(--dim);border-color:var(--line)}
.carta-note{margin:34px 0 0;padding:18px 20px;border-radius:18px;border:1px dashed rgba(94,243,255,.35);background:rgba(16,23,53,.55);color:var(--muted);font-size:15.5px}
.carta-note strong{color:#fff}
.carta-state{padding:40px 0;text-align:center;color:var(--muted)}
.carta-state .panel{display:inline-block;max-width:560px;padding:28px;border-radius:22px;border:1px solid var(--line);background:var(--card)}
.carta-state h2{font-size:28px;margin-bottom:10px}
.skel{border-radius:22px;height:300px;background:linear-gradient(100deg,rgba(255,255,255,.03) 30%,rgba(94,243,255,.08) 50%,rgba(255,255,255,.03) 70%) 0 0/300% 100%;animation:skel 1.4s infinite linear;border:1px solid var(--line)}
@keyframes skel{to{background-position:-150% 0}}
.carta-updated{font-size:13px;color:var(--dim);margin-top:10px}
.carta-mock{display:inline-block;margin-left:8px;font-size:12px;font-weight:800;color:#1a0b00;background:var(--orange);padding:2px 8px;border-radius:6px}
.menu-teaser{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;margin:28px auto 0;padding:22px 24px;border-radius:22px;border:1px solid rgba(94,243,255,.35);background:linear-gradient(120deg,rgba(94,243,255,.1),rgba(255,154,60,.1));box-shadow:0 0 30px -10px rgba(94,243,255,.4)}
.menu-teaser h2{font-size:clamp(24px,3vw,34px)}
@media (max-width:640px){.carta-tabs{top:64px}.carta-hero{padding-top:34px}}
@media (prefers-reduced-motion:reduce){.dish,.dish.in{opacity:1;transform:none;transition:none}.skel{animation:none}.dish-media img{transition:none}}
@media (max-width:560px){
.dish{flex-direction:row;border-radius:18px}
.dish-media{flex:0 0 118px;aspect-ratio:auto;min-height:128px}
.dish-media::after{display:none}
.dish-noimg span{font-size:40px}
.dish-price{position:static;align-self:flex-start;font-size:16px;padding:4px 11px}
.dish-body{padding:12px 14px;gap:6px}
.dish-body h3{font-size:18px}
.dish-body p{font-size:14.5px}
.dish-top{display:flex;justify-content:space-between;gap:8px;align-items:flex-start}
.dish-media .dish-price{display:none}
.dish-body .dish-price{display:inline-block}
}
@media (min-width:561px){.dish-body .dish-price{display:none}}
@media (max-width:560px){.dish-media{position:relative;align-self:stretch}.dish-media img{position:absolute;inset:0}}
