/* Category navigation with a progressively enhanced paper menu. */
.menu-tabs{scrollbar-width:none;scroll-snap-type:x proximity}
.menu-tabs::-webkit-scrollbar{display:none}
.menu-tabs a{scroll-snap-align:center;border-radius:999px;transition:background .2s ease,color .2s ease,border-color .2s ease}
.menu-tabs a.is-active,.menu-tabs a[aria-current="true"]{background:#5f7158;border-color:#5f7158;color:#fff}
.menu-browser-head{display:flex;align-items:center;justify-content:space-between;gap:28px;margin:0 0 22px;padding:0 4px}
.menu-browser-copy{display:grid;gap:6px}
.menu-browser-copy strong{font:600 24px 'Playfair Display',serif;letter-spacing:-.035em}
.menu-browser-copy span{color:#696d66;font-size:12px;line-height:1.5}
.menu-browser-count{min-width:70px;color:#5f7158;font:700 9px 'DM Mono',monospace;letter-spacing:.12em;text-align:center}
.menu-book-layout{display:grid;grid-template-columns:56px minmax(0,1fr) 56px;align-items:center;gap:16px}
.menu-side-button{width:52px;height:52px;border:1px solid #aeb8aa;border-radius:50%;background:#fffdf7;color:#30332f;font-size:20px;cursor:pointer;box-shadow:0 10px 25px rgba(57,64,55,.13);transition:background .2s ease,color .2s ease,transform .2s ease}
.menu-side-button:hover:not(:disabled),.menu-side-button:focus-visible{outline:0;background:#5f7158;color:#fff;transform:scale(1.06)}
.menu-side-button:disabled{cursor:default;opacity:.3}
.menu-carousel{display:flex;align-items:flex-start;gap:20px;width:100%;overflow-x:auto;padding:7px 3px 25px;scroll-snap-type:x mandatory;scroll-behavior:smooth;scroll-padding-inline:3px;overscroll-behavior-inline:contain;scrollbar-width:none}
.menu-carousel::-webkit-scrollbar{display:none}
.menu-carousel .menu-section{flex:0 0 calc(100% - 6px);width:calc(100% - 6px);min-width:0;margin:0;scroll-snap-align:start;scroll-snap-stop:always;border-radius:24px;box-shadow:0 18px 45px rgba(57,64,55,.12);transition:opacity .25s ease,transform .35s ease}
.menu-carousel .menu-section:not(.is-active){opacity:.62;transform:scale(.985)}
.menu-carousel .menu-section.is-active{opacity:1;transform:none}
.menu-carousel .menu-section-head{padding-bottom:24px;border-bottom:1px solid #cbc6b9}
.menu-carousel .item{padding-block:20px}
.menu-carousel .item h3{font-size:20px}
.menu-swipe-hint{display:none}
@media(max-width:760px){
  .jump.menu-tabs{position:sticky;top:66px;z-index:8;padding:10px 14px;background:rgba(244,240,230,.95);backdrop-filter:blur(13px);-webkit-backdrop-filter:blur(13px);box-shadow:0 7px 18px rgba(48,51,47,.08)}
  .menu-tabs a{padding-inline:16px}
  .menu-browser-head{align-items:flex-end;margin-bottom:14px}
  .menu-browser-copy strong{font-size:22px}
  .menu-browser-copy span{display:none}
  .menu-browser-count{min-width:54px;font-size:8px}
  .menu-book-layout{display:block;position:relative}
  .menu-side-button{position:absolute;z-index:4;top:50%;width:42px;height:42px;font-size:18px;transform:translateY(-50%)}
  .menu-side-previous{left:-11px}
  .menu-side-next{right:-11px}
  .menu-side-button:hover:not(:disabled),.menu-side-button:focus-visible{transform:translateY(-50%) scale(1.06)}
  .menu-carousel{width:100%;margin:0;gap:12px;padding:6px 0 20px;scroll-padding-inline:0}
  .menu-carousel .menu-section{flex-basis:100%;width:100%;padding:31px 22px;border-radius:21px}
  .menu-carousel .menu-section-head{margin-bottom:15px;padding-bottom:20px}
  .menu-carousel .menu-section h2{font-size:37px;line-height:1}
  .menu-carousel .item{padding-block:16px}
  .menu-carousel .item h3{font-size:18px}
  .menu-swipe-hint{display:flex;align-items:center;gap:9px;margin:3px 0 16px;color:#62675f;font:700 9px 'DM Mono',monospace;letter-spacing:.08em;text-transform:uppercase}
  .menu-swipe-hint::before{content:'↔';display:grid;place-content:center;width:29px;height:29px;border:1px solid #aeb8aa;border-radius:50%;font-size:13px}
}
@media(prefers-reduced-motion:reduce){
  .menu-carousel{scroll-behavior:auto}
  .menu-carousel .menu-section,.menu-side-button,.menu-tabs a{transition:none}
}

/* Stacked paper pages turn around the booklet's left spine. */
.menu-browser-head{scroll-margin-top:150px}
.menu-browser-copy span,.menu-browser-count{font-size:14px}
.menu-carousel.is-book{display:grid;position:relative;isolation:isolate;width:100%;margin:0;gap:0;overflow:visible;perspective:1800px;touch-action:pan-y;cursor:grab;padding:0 0 8px;border-radius:5px 18px 18px 5px;background:#ccc7b7;box-shadow:0 3px 0 #eeeadd,0 5px 0 #c7c3b4,0 8px 0 #e8e4d7,0 24px 50px #30332f26;scroll-snap-type:none}
.menu-carousel.is-dragging{cursor:grabbing;user-select:none}
.menu-carousel.is-book:focus-visible{outline:3px solid #5f7158;outline-offset:8px}
.menu-carousel.is-book .menu-section{grid-area:1/1;position:relative;width:100%;min-width:0;margin:0;min-height:480px;padding:42px 44px 30px 54px;border:1px solid #c9c5b8;border-radius:5px 16px 16px 5px;background:linear-gradient(90deg,#d8d4c6 0,#efecdf 12px,#fffdf7 34px,#fffdf7 96%,#f1ede1 100%);box-shadow:12px 3px 26px #30332f14;transform-origin:left center;backface-visibility:hidden;transform:none;opacity:1;transition:none}
.is-book .menu-section[hidden]{display:none!important}
.is-book .menu-section-head p,.is-book .item p{font-size:14px;line-height:1.65}
.is-book .item .price{font-size:14px;white-space:nowrap}
.is-book .item h3{font-size:21px;line-height:1.25}
.menu-swipe-hint{font-size:14px}
@media(max-width:760px){
 .menu-carousel.is-book .menu-section{min-height:420px;padding:30px 22px 22px 30px}
 .is-book .menu-section h2{font-size:34px;line-height:1.1}
 .is-book .item{gap:8px 10px}
 .is-book .item h3{font-size:20px}
 .menu-side-button{width:42px;height:42px}
}
@media print{
 .menu-carousel.is-book{display:block;box-shadow:none;background:none}
 .is-book .menu-section[hidden],.is-book .menu-section{display:block!important;break-inside:avoid;box-shadow:none;transform:none!important}
 .menu-browser-head,.menu-swipe-hint{display:none}
}
