.store-gallery-main{position:relative;background:#f6f2eb!important;overflow:hidden;}
.store-gallery-open{display:block;width:100%;height:100%;min-height:240px;padding:0;border:0;background:transparent;cursor:zoom-in;}
.store-gallery-open img{display:block;width:100%;height:100%;max-height:420px;object-fit:contain;}
.store-gallery-bar{display:flex;align-items:center;justify-content:center;gap:14px;margin:10px 0;}
.store-gallery-main .store-gallery-bar{position:absolute;bottom:5px;left:50%;transform:translateX(-50%);margin:0;padding:0;background:none;gap:18px;white-space:nowrap;}
.store-gallery-bar button{min-width:40px;min-height:40px;border:1px solid #dfcdb9;border-radius:6px;background:#fff;color:#9b4823;font:inherit;cursor:pointer;}
.store-gallery-bar button:disabled{opacity:.35;cursor:default;}
.store-gallery-bar span{font-size:.85rem;}
.store-gallery-main .store-gallery-bar button{border:0;background:none;border-radius:0;padding:0;color:#fff;font-size:26px;font-weight:400;text-shadow:0 1px 4px #000;box-shadow:none;}
.page-shop .dish .store-gallery-bar span{clip-path:inset(50%);width:1px;height:1px;overflow:hidden;white-space:nowrap;}
.store-gallery-thumbs{display:flex!important;gap:8px;overflow-x:auto;padding:5px 3px 10px;scrollbar-width:thin;}
.store-gallery-thumbs[hidden]{display:none!important;}
.store-gallery-thumbs button{flex:0 0 88px;width:88px;height:70px;padding:2px;border:2px solid transparent;border-radius:6px;background:#f5f0e8;cursor:pointer;}
.store-gallery-thumbs button[aria-pressed=true]{border-color:#ae4b30;}
.store-gallery-thumbs img{display:block;width:100%;height:100%;object-fit:cover;border-radius:3px;}
.store-gallery-dialog{box-sizing:border-box;width:min(1000px,calc(100% - 24px));max-width:calc(100% - 24px);height:min(760px,calc(100svh - 24px));max-height:calc(100svh - 24px);padding:16px;border:0;border-radius:10px;background:#fff;color:#392519;overflow:hidden;overscroll-behavior:contain;touch-action:none;}
.store-gallery-dialog[open]{display:grid;grid-template-rows:auto minmax(0,1fr) auto;}
.store-gallery-dialog::backdrop{background:#000b;}
.store-gallery-dialog>img{display:block;width:100%;height:100%;min-width:0;min-height:0;max-width:100%;max-height:100%;object-fit:contain;touch-action:none;user-select:none;-webkit-user-select:none;-webkit-user-drag:none;-webkit-touch-callout:none;}
.store-gallery-close{display:block;margin:0 0 8px auto;padding:8px 15px;border:1px solid #d9c4ab;border-radius:6px;background:white;color:#392519;cursor:pointer;}
.shop-feature-tags{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0;padding:0;}
.shop-feature-tags li{padding:6px 12px;border:1px solid #e4d7c8;background:#fcf7ef;border-radius:30px;font-size:.85rem;}
.shop-highlight-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;}
.shop-highlight-card{border:1px solid #e6dace;border-radius:9px;overflow:hidden;background:#fff;}
.shop-highlight-card{min-width:0;overflow-wrap:anywhere;}
.shop-highlight-card>img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;}
.shop-highlight-body{padding:16px;}
.shop-highlight-body h3{font-size:1.05rem;margin:0 0 8px;}
.shop-highlight-body p{white-space:pre-wrap;overflow-wrap:anywhere;margin:6px 0 0;font-size:.9rem;}
.shop-menu-price{font-weight:700;color:#a64a2c;}
.showcase-editor{margin-top:24px;padding-top:20px;border-top:1px solid #e5d7c5;}
.showcase-editor h3{font-size:1.05rem;margin:0 0 5px;}
.showcase-editor-row{padding:14px;border:1px solid #e5d7c5;border-radius:8px;margin:12px 0;}
.showcase-editor .feature-options{display:flex;flex-wrap:wrap;gap:8px;}
.showcase-editor .feature-options label{display:flex;align-items:center;gap:6px;margin:0;padding:7px 10px;border:1px solid #e5d7c5;border-radius:8px;font-size:.85rem;}
.showcase-editor .feature-options input{width:auto;min-height:0;}
.shop-upload-previews{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px;}
.shop-upload-previews figure{margin:0;width:90px;font-size:.75rem;}
.shop-upload-previews img{display:block;width:90px;height:72px;object-fit:cover;}
@media(max-width:680px){.shop-highlight-grid{grid-template-columns:1fr;}.store-gallery-open{min-height:220px;}.store-gallery-thumbs button{flex-basis:72px;width:72px;height:60px;}}

.store-gallery-bar[hidden]{display:none!important;}
.dish.has-photo .store-gallery-open img{object-fit:contain;border-radius:0;}

/* Keep the photographs and their controls together, apart from shop facts. */
.page-shop .hero{grid-template-columns:minmax(0, .8fr) minmax(0, 1.4fr);gap:28px;align-items:start;box-shadow:none;}
.page-shop .shop-photo-panel{min-width:0;width:100%;}
.page-shop .shop-photo-panel .dish{height:auto;aspect-ratio:4/3;display:block;}
.page-shop .shop-photo-panel .store-gallery-open{height:100%;min-height:0;}
.page-shop .shop-photo-panel .store-gallery-open img{height:100%;max-height:none;}
.page-shop .dish .store-gallery-bar span{position:static;top:auto;left:auto;background:none;border:0;padding:0;font-weight:600;border-radius:0;}
.page-shop .store-gallery-thumbs{margin:10px 0 0;padding-bottom:6px;}
.page-shop .store-gallery-thumbs button{flex-basis:68px;width:68px;height:54px;}
.page-shop #shop-highlights{margin-top:26px;}
.page-shop #shop-highlights .block{padding:26px 0;border-radius:0;background:transparent;}
.shop-highlight-grid[data-count="1"]{grid-template-columns:minmax(0,1fr);}
.shop-highlight-grid[data-count="2"]{grid-template-columns:repeat(2,minmax(0,1fr));}
.shop-demo-photo-note{font-size:.75rem;line-height:1.6;color:#776c60;margin:8px 0 0;}
@media(max-width:680px){
 .page-shop .hero{display:flex;flex-direction:column;gap:18px;padding:18px;}
 .page-shop .hero-copy{display:block;width:100%;}
 .page-shop .hero-copy h1{font-size:1.55rem;margin:0 0 10px;}
 .page-shop .shop-photo-panel{order:1;}
 .shop-highlight-grid[data-count]{grid-template-columns:minmax(0,1fr);}
 .page-shop #shop-highlights .block{padding:22px 0;}
}
/* Keep menus and shop highlights compact on small portrait tablets. */
@media(min-width:481px) and (max-width:680px){
 .page-shop .shop-highlight-grid[data-count="3"]{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;}
 .page-shop .shop-highlight-grid[data-count="2"]{grid-template-columns:repeat(2,minmax(0,1fr));}
 .page-shop .shop-highlight-body{padding:12px;}
}
