.restaurant-banner-view{position:absolute;inset:0;z-index:0;display:block;width:100%;height:100%;padding:0;border:0;background:transparent;cursor:zoom-in;border-radius:inherit}
.restaurant-banner-view:focus-visible{outline:3px solid #e2bd57;outline-offset:-5px}
.restaurant-banner>.restaurant-banner-content{z-index:1}
.restaurant-banner .restaurant-logo[data-image-viewer]{cursor:zoom-in}
.restaurant-banner .restaurant-logo[data-image-viewer]:focus-visible{outline:3px solid #e2bd57;outline-offset:4px}
body.restaurant-image-viewer-open{overflow:hidden}
.restaurant-image-viewer{box-sizing:border-box;width:min(1120px,94vw);max-width:94vw;max-height:92vh;max-height:92dvh;margin:auto;padding:24px;border:0;border-radius:20px;background:#fffefb;box-shadow:0 25px 90px #102e2750;overflow:auto}
.restaurant-image-viewer:not([open]){display:none}
.restaurant-image-viewer::backdrop{background:#10241ed9}
.restaurant-image-viewer>img{display:block;width:100%;height:auto;max-height:calc(92vh - 48px);max-height:calc(92dvh - 48px);object-fit:contain;object-position:center}
.restaurant-image-viewer-close{position:absolute;right:12px;top:12px;z-index:2;width:42px;height:42px;border:1px solid #dce6d9;border-radius:50%;background:#fff;color:#214735;font-size:29px;line-height:1;cursor:pointer;box-shadow:0 3px 14px #102e2720}
.restaurant-image-viewer-close:focus-visible{outline:3px solid #e2bd57;outline-offset:3px}
@media(max-width:760px){.restaurant-image-viewer{width:96vw;max-width:96vw;padding:12px;border-radius:14px}.restaurant-image-viewer>img{max-height:calc(92vh - 24px);max-height:calc(92dvh - 24px)}.restaurant-banner.has-banner>.restaurant-banner-view{inset:0 0 auto;height:auto;aspect-ratio:3/1}}

/* Clip square artwork inside its own rounded, edge-to-edge canvas. */
.restaurant-banner>.restaurant-banner-artwork{position:absolute;inset:0;z-index:-2;width:100%;height:100%;margin:0;padding:0;overflow:hidden;border-radius:inherit}
.restaurant-banner-artwork>img.restaurant-banner-image{display:block;width:100%;height:100%;max-width:none;margin:0;padding:0;border:0;object-fit:cover;object-position:center}
.restaurant-banner-artwork>.restaurant-banner-view{position:absolute;inset:0;width:100%;height:100%;aspect-ratio:auto;margin:0;padding:0;border-radius:inherit}
/* This uploaded artwork includes a white margin and blue frame in its pixels. */
.restaurant-banner-artwork>img[src*="cms-2000005-13d4c3909d58"]{transform:scale(1.08)}
@media(max-width:760px){
 .restaurant-main .restaurant-banner.has-banner>.restaurant-banner-artwork{grid-area:1/1;position:relative;inset:auto;z-index:0;width:100%;height:auto;border-radius:22px;box-shadow:0 6px 14px #153f3614,0 16px 32px #153f3620}
 .restaurant-banner-artwork>img.restaurant-banner-image{height:auto;aspect-ratio:auto;object-fit:cover}
}

.restaurant-banner:has(.restaurant-banner-artwork)::before{pointer-events:none}

.restaurant-food-card>.restaurant-dish-image-view{display:block;width:100%;padding:0;border:0;background:transparent;cursor:zoom-in;border-radius:0;overflow:hidden}.restaurant-dish-image-view>img{display:block;width:100%;height:160px;object-fit:contain}.restaurant-dish-image-view:focus-visible{outline:3px solid #217469;outline-offset:-3px}
