/* FOR's illustrated menu: real CMS content on warm paper. */
body{background:#eee5d6;color:#501923}
main{max-width:1160px;padding:48px 28px}
.menu-intro{margin:0 auto 32px;padding:28px 12px;border-bottom:1px solid #a87b4e66}
.menu-intro::before{content:'FOR';display:block;font-family:var(--font-display);font-size:22px;letter-spacing:.2em;color:#80582e;margin-bottom:16px}
.menu-intro h1{font-size:clamp(42px,6vw,76px);color:#501923}
.menu-intro p{color:#705d50;line-height:1.7;font-size:15px}
.menu-category-nav{display:flex;gap:8px;overflow-x:auto;padding:12px 0 20px;margin-bottom:24px;scrollbar-width:thin}
.menu-category-nav a{flex:none;color:#501923;border:1px solid #99724b80;padding:11px 18px;border-radius:30px;text-decoration:none;font-size:14px}
.menu-category-nav a:hover,.menu-category-nav a:focus-visible{background:#501923;color:#fff5e8}
.menu-category{--ink:#501923;--wash:#ead8c7;margin-bottom:60px;scroll-margin-top:110px}
.menu-category:nth-child(3n+2){--ink:#345f4a;--wash:#dde4d5}
.menu-category:nth-child(3n){--ink:#925034;--wash:#f0dfcd}
.menu-category-head{padding:25px 10px;margin-bottom:20px;border-block:1px solid #ac875b55}
.menu-category-head h2{color:var(--ink);font-size:clamp(30px,4vw,44px);letter-spacing:0}
.menu-category-head .cat-note{color:#6b5c4f;font-size:15px}
.menu-category-divider{background:var(--ink);height:1px;width:75px}
.menu-item{padding:22px;gap:16px;border-color:#ab8c6a55}
.menu-item.has-photo{display:grid;grid-template-columns:minmax(0,0.85fr) minmax(0,1.15fr);align-items:stretch;gap:0;padding:0;margin-bottom:24px;border:1px solid #b4997855;background:#fbf5ea;overflow:hidden;border-radius:4px}
.menu-item-text{display:flex;flex-direction:column;align-items:stretch;justify-content:center;gap:24px;position:relative;padding:42px;isolation:isolate}
.menu-item-text::before{content:'';position:absolute;inset:12px;border:1px solid var(--ink);border-radius:44% 5% 42% 5% / 3% 40% 4% 42%;opacity:.35;z-index:-1;pointer-events:none}
.menu-item-text::after{content:'✧';position:absolute;bottom:18px;inset-inline-end:26px;color:var(--ink);opacity:.5;font-size:24px}
.menu-item-text .menu-item-main{flex:none}
.menu-item-name-row{flex-wrap:wrap;gap:8px}
.menu-item-name{font-family:var(--font-display);font-size:27px;line-height:1.25;color:var(--ink)}
html[dir=rtl] .menu-item-name{font-family:var(--font-display-ar)}
.menu-item-desc{font-size:15px;line-height:1.75;color:#67574b;margin-top:14px}
.menu-item-price{color:var(--ink);font-size:19px;font-weight:500}
.menu-item-tag{color:var(--ink);border-color:var(--ink)}
.menu-item.has-photo .menu-item-photo{width:100%;height:400px;border:0;border-radius:0;background:var(--wash)}
.menu-item-photo img{object-fit:contain;padding:12px}
.menu-item:not(.has-photo) .menu-item-text{padding:0}
.menu-item:not(.has-photo) .menu-item-text::before,.menu-item:not(.has-photo) .menu-item-text::after{display:none}
.menu-lightbox-caption{color:#fff4e5}
@media(max-width:600px){
 main{padding:24px 16px}.menu-intro{padding:10px 0 24px}.menu-intro h1{font-size:44px}
 .menu-item.has-photo{grid-template-columns:minmax(0,1fr)}
 .menu-item.has-photo .menu-item-photo{grid-row:1;height:280px}
 .menu-item-text{padding:30px;gap:16px}
 .menu-item-name{font-size:25px}.menu-item-desc{font-size:15px;margin-top:10px}
 .menu-item:not(.has-photo){flex-direction:row;align-items:baseline;padding:22px 8px}
 .menu-item:not(.has-photo) .menu-item-name{font-size:21px}
 .menu-category{margin-bottom:36px}
}
@media(prefers-reduced-motion:reduce){.menu-item-photo img{transition:none}}
.menu-item-main,.menu-item-text{min-width:0;overflow-wrap:anywhere}
.menu-category-nav{max-width:100%;min-width:0}
.menu-item-price{flex-shrink:0}
.menu-lightbox{overflow:hidden}
@media(max-width:400px){.hub-brand{font-size:clamp(20px,6.4vw,26px);white-space:normal;max-width:100%}}
@media(max-width:400px){body a.hub-brand{font-size:clamp(20px,6.4vw,26px);white-space:normal;max-width:100%}}

/* Compact three-column browsing on desktop and phones. */
.menu-category{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:stretch}
.menu-category-head{grid-column:1/-1;margin-bottom:0}
.menu-category .menu-item,.menu-category .menu-item.has-photo{display:flex;flex-direction:column;justify-content:flex-start;align-items:stretch;min-width:0;padding:0;margin:0;gap:0;background:#fbf5ea;border:1px solid #b4997855;border-radius:10px;overflow:hidden}
.menu-category .menu-item.has-photo .menu-item-photo{order:-1;width:100%;height:auto;aspect-ratio:1;flex:none;border:0;border-radius:0}
.menu-item-photo img{padding:0;object-fit:cover}
.menu-category .menu-item-text{padding:16px;gap:14px;flex:1;justify-content:space-between;text-align:center}
.menu-item-text::before,.menu-item-text::after{display:none}
.menu-item-name-row{justify-content:center}
.menu-category .menu-item-name{font-size:22px;line-height:1.3}
.menu-item-details{margin-top:10px;font-size:13px;color:#67574b}
.menu-item-details summary{cursor:pointer;padding:10px 0;text-decoration:underline;text-underline-offset:3px}
.menu-item-details summary:focus-visible{outline:2px solid #501923;outline-offset:2px}
.menu-item-details .menu-item-desc{font-size:13px;line-height:1.5;text-align:start;margin-top:4px}
.menu-category .menu-item:not(.has-photo){padding:16px;text-align:center;justify-content:space-between;gap:14px}
.menu-item-price{font-size:17px;white-space:normal;overflow-wrap:anywhere}
@media(max-width:600px){
 main{padding-inline:12px}.menu-category{gap:8px}
 .menu-category .menu-item-text,.menu-category .menu-item:not(.has-photo){padding:10px 6px;gap:10px}
 .menu-category .menu-item-name{font-size:14px;line-height:1.3}
 .menu-item-price{font-size:13px}.menu-item-tag{font-size:9px;padding:2px 4px}
 .menu-item-details{font-size:12px;margin-top:4px}.menu-item-details .menu-item-desc{font-size:12px}
}

.menu-category .menu-item-preview{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;text-overflow:ellipsis;font-size:14px;line-height:1.5;color:#67574b;text-align:start;margin:10px auto 0;max-width:100%;overflow-wrap:anywhere}
@media(max-width:600px){.menu-category .menu-item-preview{font-size:12px;line-height:1.5;margin-top:8px}}

/* Approved translucent menu panels. */
.menu-category .menu-item,.menu-category .menu-item.has-photo{background:rgba(255,255,255,.22);border-color:rgba(180,153,120,.35);box-shadow:0 3px 12px rgba(80,25,35,.025)}
.menu-category .menu-item-text{background:transparent}
.menu-category .menu-item.has-photo .menu-item-photo{border-radius:10px 10px 0 0}

/* Subtle divider separating item descriptions from prices. */
.menu-category .menu-item-price{border-top:1px solid #ad916b30;padding-top:14px;width:100%;box-sizing:border-box}
@media(max-width:600px){.menu-category .menu-item-price{padding-top:10px}}
