.page-hero{padding:64px 0 56px;text-align:center}.page-hero .wrap{max-width:760px}.breadcrumb{font-size:13.5px;color:var(--muted);margin-bottom:14px}.breadcrumb .sep{margin:0 8px}.breadcrumb a:hover{color:var(--navy)}.page-hero h1{margin:0 0 10px;font-family:var(--ff-serif);font-size:35px;color:var(--navy);letter-spacing:.12em}.page-hero p{margin:0;color:var(--ink-soft);font-size:15.5px}body[data-page=menu] .page-hero{background:linear-gradient(180deg,#141f2a99,#141f2a75),url(/assets/top.jpeg) center/cover no-repeat}body[data-page=menu] .page-hero .breadcrumb,body[data-page=menu] .page-hero p{color:#ffffffd1}body[data-page=menu] .page-hero h1{color:#fff}.menu-section{padding:64px 0 80px;background:#fff}.menu-placeholder{max-width:680px;margin:0 auto;font-size:16px;color:var(--ink-soft);line-height:2;text-align:center}.menu-category-block{margin-bottom:56px}.menu-category-block:last-child{margin-bottom:0}.menu-category-title{font-family:var(--ff-serif);font-size:21px;color:var(--navy);letter-spacing:.1em;margin:0 0 24px;padding-bottom:10px;border-bottom:1px solid var(--line)}.menu-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:24px}.menu-card{display:block;background:#fff;border:1px solid var(--line);overflow:hidden;transition:box-shadow .2s,transform .2s}.menu-card:hover{box-shadow:0 14px 30px #1c2b3a29;transform:translateY(-4px)}.menu-card-img{aspect-ratio:4 / 3;background:var(--bg-soft);display:flex;align-items:center;justify-content:center;overflow:hidden}.menu-card-img img{width:100%;height:100%;object-fit:contain}.menu-card-noimg{font-size:48px;opacity:.5}.menu-card-body{padding:18px}.menu-season{display:inline-block;background:var(--bg-soft);color:var(--ink-soft);font-size:12px;padding:2px 10px;margin-bottom:8px;letter-spacing:.05em}.menu-name{font-family:var(--ff-serif);font-size:17px;color:var(--navy);margin:0 0 6px;letter-spacing:.06em}.menu-desc{font-size:14.5px;color:var(--ink-soft);line-height:1.9;margin:0 0 12px;letter-spacing:.02em}.menu-price{font-family:var(--ff-serif);font-size:16px;color:var(--gold);margin:0}.menu-detail{max-width:760px;margin:0 auto}.menu-detail-media{max-width:640px;margin:0 auto 34px}.menu-detail-noimg{width:100%;aspect-ratio:4 / 3;border:1px solid var(--line);background:var(--bg-soft);display:flex;align-items:center;justify-content:center;font-size:64px;opacity:.5}.menu-slideshow{position:relative;width:100%;border:1px solid var(--line);background:var(--bg-soft);overflow:hidden}.menu-slideshow-track{position:relative;width:100%;aspect-ratio:4 / 3}.menu-slide{position:absolute;inset:0;opacity:0;transition:opacity .4s ease;pointer-events:none}.menu-slide[data-active=true]{opacity:1;pointer-events:auto}.menu-slide img{width:100%;height:100%;object-fit:contain;display:block}.menu-slideshow-arrow{position:absolute;top:50%;transform:translateY(-50%);width:38px;height:38px;border:none;border-radius:50%;background:#1c2b3a8c;color:#fff;font-size:23px;line-height:1;display:flex;align-items:center;justify-content:center;transition:background .2s;z-index:2}.menu-slideshow-arrow:hover{background:#1c2b3ae6;transform:translateY(-50%) scale(1.06)}.menu-slideshow-arrow.prev{left:10px}.menu-slideshow-arrow.next{right:10px}.menu-slideshow-dots{position:absolute;bottom:12px;left:0;right:0;display:flex;justify-content:center;gap:8px;z-index:2}.menu-slideshow-dot{width:8px;height:8px;padding:0;border:none;border-radius:50%;background:#ffffff8c;transition:background .2s,transform .2s}.menu-slideshow-dot[data-active=true]{background:var(--gold);transform:scale(1.25)}.menu-detail-name{font-family:var(--ff-serif);font-size:27px;color:var(--navy);letter-spacing:.08em;margin:8px 0 12px}.menu-detail-price{font-family:var(--ff-serif);font-size:23px;color:var(--gold);margin:0 0 20px}.menu-detail-lead{font-size:16.5px;color:var(--ink);line-height:2;margin:0 0 24px;letter-spacing:.03em}.menu-detail-desc{color:var(--navy-deep);font-size:18px;line-height:1.9;letter-spacing:.02em;margin:40px 0 0}.menu-detail-desc.cms-rich-text>*:first-child{margin-top:0}.menu-detail-desc.cms-rich-text>*:last-child{margin-bottom:0}.menu-detail-desc.cms-rich-text h1,.menu-detail-desc.cms-rich-text h2,.menu-detail-desc.cms-rich-text h3,.menu-detail-desc.cms-rich-text h4,.menu-detail-desc.cms-rich-text h5,.menu-detail-desc.cms-rich-text h6{color:var(--navy-deep);font-family:var(--ff-sans);font-weight:700;line-height:1.45;letter-spacing:.02em;margin:2.4em 0 .9em}.menu-detail-desc.cms-rich-text h1{font-size:34px}.menu-detail-desc.cms-rich-text h2{font-size:30px}.menu-detail-desc.cms-rich-text h3{font-size:24px}.menu-detail-desc.cms-rich-text h4{font-size:20px}.menu-detail-desc.cms-rich-text p{margin:0 0 1.35em}.menu-detail-desc.cms-rich-text strong{font-weight:700}.menu-detail-desc.cms-rich-text em{font-style:italic}.menu-detail-desc.cms-rich-text a{color:#4f46e5;text-decoration:underline;text-underline-offset:3px}.menu-detail-desc.cms-rich-text ul,.menu-detail-desc.cms-rich-text ol{margin:0 0 2.2em 1.6em;padding:0}.menu-detail-desc.cms-rich-text li{margin:.35em 0;padding-left:.15em}.menu-detail-desc.cms-rich-text blockquote{border-left:3px solid #d4d6e2;margin:2.4em 0;padding:.7em 0 .7em 32px}.menu-detail-desc.cms-rich-text blockquote>*:last-child{margin-bottom:0}.menu-detail-desc.cms-rich-text code{background:var(--bg-soft);border-radius:3px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.9em;padding:.12em .35em}.menu-detail-desc.cms-rich-text pre{background:var(--navy-deep);color:#fff;overflow-x:auto;padding:18px 20px;margin:2em 0}.menu-detail-desc.cms-rich-text pre code{background:transparent;border-radius:0;color:inherit;padding:0}.menu-detail-desc.cms-rich-text img{max-width:100%;height:auto;margin:2em 0}.menu-detail-desc.cms-rich-text table{border-collapse:collapse;width:100%;max-width:100%;margin:2.4em 0}.menu-detail-desc.cms-rich-text table td,.menu-detail-desc.cms-rich-text table th{border:1px solid #d4d6e2;color:var(--navy-deep);padding:18px 24px;text-align:left;vertical-align:top;word-break:break-word}.menu-detail-desc.cms-rich-text table th{font-weight:700}.menu-back{margin-top:32px;font-size:14px}.menu-back a:hover{color:var(--gold)}@media(max-width:768px){.menu-detail-media{margin-bottom:28px}}@media(max-width:560px){body[data-page=menu] .page-hero{background-position:center 40%}.page-hero{padding:40px 0 32px}.page-hero h1{font-size:27px}.menu-detail-name{font-size:23px}}
