#menu-carousel{--card-width:min(340px,76vw);--card-height:460px;display:grid;grid-template-columns:minmax(0,1fr);position:relative;isolation:isolate;contain:layout paint;z-index:0;width:100%;min-height:calc(var(--card-height) + 100px);margin:16px 0 0;padding:12px 0;border-block:0;overflow:hidden;background:transparent;color:var(--ivory)}
.cocktail-carousel[hidden]{display:none}
#menu-carousel .carousel-stage{position:relative;inset:auto;height:calc(var(--card-height) + 32px);min-height:calc(var(--card-height) + 32px);isolation:isolate;user-select:none;touch-action:pan-y;overflow:hidden}
#menu-carousel .carousel-stage{z-index:1}
#menu-carousel .carousel-controls{z-index:2}
.carousel-card{position:absolute;top:50%;left:50%;width:var(--card-width);height:var(--card-height);margin-left:calc(var(--card-width)/-2);margin-top:calc(var(--card-height)/-2);perspective:1000px;transform-style:preserve-3d;transition:transform 380ms cubic-bezier(.2,.7,.2,1)}
.carousel-inner{position:relative;width:100%;height:100%;transform-style:preserve-3d;transition:transform 420ms cubic-bezier(.2,.7,.2,1)}
.carousel-face{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px solid #b7966f77;border-radius:22px;overflow:hidden;backface-visibility:hidden;-webkit-backface-visibility:hidden;background:#151c2b;box-shadow:0 20px 44px #0005;text-align:center}
.carousel-front{transform:translateZ(1px);justify-content:flex-end}.carousel-back{transform:rotateY(180deg) translateZ(1px);padding:25px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}
.carousel-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;pointer-events:none}
.carousel-caption{position:relative;width:100%;padding:60px 20px 22px;background:linear-gradient(transparent,#0d1421e8 48%,#0d1421f5)}
.carousel-face h2{position:relative;font:400 clamp(21px,5vw,26px)/1.2 var(--display);text-transform:uppercase;letter-spacing:.02em;color:var(--ivory)}
.carousel-back:after{content:'';position:absolute;inset:0;background:#101724e8;z-index:0}.carousel-back>*:not(img){z-index:1;position:relative}
.carousel-ingredients{width:100%;font:15px/1.5 var(--ui);margin-top:22px;overflow-wrap:anywhere}.carousel-taste{width:100%;font:italic 600 20px/1.3 var(--serif);margin-top:14px;overflow-wrap:anywhere}.carousel-price{font:600 24px var(--serif);margin-top:18px}
.carousel-flip{position:relative;margin-top:18px;min-height:44px;padding:10px 22px;border:1px solid #b7966f99;border-radius:99px;background:#151c2bc9;font:600 14px var(--serif);color:var(--ivory)}
.carousel-pending{font:12px var(--ui);margin-top:12px}#menu-carousel .carousel-controls{position:relative;inset:auto;display:grid;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;gap:8px;width:max-content;max-width:100%;margin:8px auto 12px}
.carousel-controls>button{font-size:24px;width:44px;height:44px}.carousel-controls>button:disabled{opacity:.25;cursor:default}.carousel-dots{position:relative;display:flex;gap:1px;min-width:0;overflow-x:auto;scrollbar-width:none}.carousel-dot{flex:0 0 28px;width:28px;height:44px;padding:0;position:relative}.carousel-dot:after{content:'';display:block;width:6px;height:6px;border-radius:50%;background:#708587;margin:auto}.carousel-dot[aria-pressed=true]:after{background:var(--ivory);transform:scale(1.4)}
.is-dragging .carousel-card{transition:none}
@media(max-width:760px){#menu-carousel{--card-width:72%;--card-height:clamp(350px,45svh,410px)}#menu-carousel .carousel-controls{gap:3px}.carousel-back{padding:20px}.carousel-ingredients{font-size:14px;margin-top:14px}.carousel-face h2{font-size:22px}.carousel-back .carousel-flip{margin-top:12px}.carousel-taste,.carousel-price{margin-top:12px}}
@media(prefers-reduced-motion:reduce){.carousel-card,.carousel-inner{transition:none}}
.menu-section:has(.menu-voronoi-layer){position:relative;isolation:isolate;background:var(--night)}
.menu-voronoi-layer{position:absolute;inset:0;width:100%;height:100%;z-index:-1;pointer-events:none;opacity:.18;filter:saturate(.85);mask-image:linear-gradient(transparent,#000 24%,#000 72%,transparent)}
.menu-section:has(.menu-voronoi-layer) .menu-footnote{position:relative;background:transparent;padding:10px 14px}
