.hotel-menu-shelf{margin:24px 0;padding:22px;border:1px solid var(--season-soft,#f5dfbd);border-radius:24px;background:var(--season-canvas,#fffaf2)}
.hotel-menu-heading h2{margin:5px 0 8px;font-size:clamp(1.35rem,3vw,1.8rem);line-height:1.2}.hotel-menu-heading p{margin:0 0 18px;max-width:65ch;color:#536052}
.hotel-menu-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.hotel-menu-card{display:flex;align-items:stretch;min-width:0;background:#fff;border-radius:18px;overflow:hidden;border:1px solid #e6e9df}
.hotel-menu-card>img{width:112px;flex:0 0 112px;object-fit:cover;filter:none}.hotel-menu-copy{padding:16px;min-width:0}.hotel-menu-copy h3{margin:0 0 6px;font-size:1.12rem}.hotel-menu-copy p{margin:0 0 12px;font-size:.9rem;line-height:1.5;color:#536052}
.menu-link-row{display:flex;flex-wrap:wrap;gap:8px}.menu-link-row .btn{white-space:normal;text-align:left;min-height:44px;line-height:1.35;max-width:100%;border-color:#d8e3ca;background:#f5f8ef;color:#25462e}.menu-link-row .btn:hover{background:#e8f1db}.menu-link-row .btn:focus-visible{outline:3px solid #9d6b24;outline-offset:3px}.hotel-venue-menus{margin:22px 0;padding:16px;border-radius:16px;background:#f5f8ef}.hotel-venue-menus h3{margin:0 0 12px}
@media(max-width:760px){.hotel-menu-grid{grid-template-columns:1fr}.hotel-menu-shelf{padding:16px}.hotel-menu-card>img{width:88px;flex-basis:88px}.hotel-menu-copy{padding:14px}}
@media(max-width:360px){.hotel-menu-card>img{width:64px;flex-basis:64px}.hotel-menu-copy{padding:12px}}

#modal[data-presentation="menu"]{width:min(940px,96vw);max-height:92dvh}#modal[data-presentation="menu"] .modalbody{padding:0;background:#f4f5f1}.menu-page-viewer{display:flex;flex-direction:column;gap:12px;padding:12px}.menu-page-viewer img{display:block;width:100%;height:auto;border-radius:6px;box-shadow:0 3px 15px #00000012}
