.menu-page{background:var(--paper)}.menu-page .header{background:var(--paper);color:var(--ink)}.menu-page .header .brand-logo img{filter:none}.menu-page .header.scrolled{background:var(--paper)}
.menu-layout{display:grid;grid-template-columns:320px minmax(0,1fr);gap:36px;max-width:1440px;margin:0 auto;padding:96px 70px 100px;min-height:100svh;align-items:start}
.menu-products{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px 60px}.menu-product{display:flex;flex-direction:column;align-items:center;padding:0;text-align:center;width:100%;min-width:0}.menu-product-photo{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:cover;border-radius:8% 9% 7% 8% / 6% 8% 9% 7%;margin-bottom:14px}.photo-pending{background:#ded9d3;color:#77716a;display:grid;place-items:center;font-size:10px;letter-spacing:.08em}.menu-product-name{font-family:var(--serif);font-size:22px;line-height:1.2}.menu-product-flavour{font-size:12px;line-height:1.5;margin-top:8px}.menu-product-price{font-size:16px;margin-top:24px}.menu-product-price sup{font-size:10px}.menu-product-more{font-size:12px;margin-top:7px}.menu-product:hover .menu-product-more{text-decoration:underline;text-underline-offset:4px}.menu-detail-price{margin-top:22px;font-size:20px}
@media(max-width:1000px){.menu-products{gap:30px 20px}}
@media(max-width:700px){.menu-products{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 20px}.menu-product-name{font-size:21px}.menu-product-price{margin-top:20px}}
.menu-sidebar{position:sticky;top:96px;height:calc(100svh - 130px);min-height:480px;border-right:1px solid var(--line);padding-right:36px;display:flex;flex-direction:column}
.menu-sidebar h2{font-size:30px;line-height:1.25;margin-bottom:45px;letter-spacing:-.025em}.menu-sidebar h2 em{display:block;font-size:39px;margin-top:8px}.menu-categories{display:flex;flex-direction:column;align-items:flex-start;gap:14px;font-family:var(--serif);font-size:22px}.menu-categories .menu-category{margin-left:30px}.menu-categories a:hover{text-decoration:underline;text-underline-offset:6px}.menu-categories a[aria-current]{font-style:italic;text-decoration:underline;text-underline-offset:6px}.menu-home{font-family:var(--serif);font-size:20px;margin-top:auto;padding-top:50px;text-decoration:underline;text-underline-offset:6px}
.menu-main{min-width:0}.menu-main h1{font-family:var(--serif);font-size:42px;line-height:1.1;font-weight:200;font-style:italic;letter-spacing:-.03em;margin:0 0 40px}.menu-construction{border-block:1px solid var(--line);padding:22px 0;display:flex;align-items:center;gap:12px;font-size:11px;letter-spacing:.13em}.menu-construction:before{content:'';width:5px;height:5px;border:1px solid currentColor;border-radius:50%;flex:none}.menu-section{scroll-margin-top:100px;padding:50px 0 45px;border-bottom:1px solid var(--line)}.menu-section:last-child{border-bottom:0}.menu-section-heading{display:flex;align-items:baseline;justify-content:space-between;gap:24px;margin-bottom:32px}.menu-number{font-family:var(--serif);font-size:30px}.menu-section h2{font-size:30px;text-align:right}.menu-empty{font-family:var(--serif);font-size:22px;line-height:1.5;text-align:center;padding:25px 10px 35px;color:#77716a}.menu-page footer{margin-top:0}
@media(max-width:1000px){.menu-layout{grid-template-columns:240px minmax(0,1fr);padding-inline:32px;gap:28px}.menu-sidebar{padding-right:25px}.menu-sidebar h2{font-size:27px}.menu-sidebar h2 em{font-size:34px}}
@media(max-width:700px){.menu-layout{display:block;padding:85px 20px 60px}.menu-sidebar{height:auto;min-height:0;position:static;border-right:0;padding:0;margin-bottom:35px}.menu-sidebar h2{font-size:24px;margin-bottom:20px}.menu-sidebar h2 em{display:inline;font-size:29px;margin:0 0 0 8px}.menu-categories{flex-direction:row;align-items:center;overflow-x:auto;gap:24px;padding:10px 0 16px;border-block:1px solid var(--line);font-size:20px}.menu-categories a{white-space:nowrap;flex:none}.menu-categories .menu-category{margin-left:0}.menu-home{margin-top:18px;padding:0;font-size:17px}.menu-main h1{font-size:37px;margin-bottom:25px}.menu-section{padding:35px 0 25px}.menu-section h2{font-size:28px}.menu-number{font-size:26px}.menu-empty{font-size:21px}.menu-construction{font-size:10px}}
.menu-detail-image{display:block;width:min(100%,320px);height:auto;max-height:50dvh;object-fit:contain;margin:0 auto 28px}
.menu-detail{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:32px;align-items:stretch}.menu-detail .menu-detail-image{width:100%;max-height:none;margin:0}.menu-detail-info{display:flex;flex-direction:column;min-width:0}.menu-detail-info .menu-detail-price{margin-top:auto;padding-top:28px}
@media(max-width:600px){.menu-detail{grid-template-columns:1fr;gap:24px}.menu-detail .menu-detail-image{width:min(100%,260px);max-height:42dvh;margin-inline:auto}}
.menu-detail-footer{margin-top:auto;padding-top:28px}.menu-detail-info .menu-allergen-note{border-block:1px solid var(--line);padding:18px 0;font-size:13px;line-height:1.6}.menu-trace-price{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;margin-top:18px;align-items:start}.menu-detail-info .menu-trace-note{font-size:12px;line-height:1.6}.menu-price-block{text-align:right}.menu-price-label{display:block;font-size:12px;margin-bottom:8px}.menu-detail-info .menu-price-block .menu-detail-price{padding:0;margin:0;white-space:nowrap}
.menu-starter-footer{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;border-top:1px solid var(--line);padding-top:18px;align-items:start}.menu-allergen-list{min-height:20px}.menu-detail--starter .menu-detail-image{border-radius:9% 7% 8% 5% / 7% 9% 7% 6%}
.menu-allergen-list:not(:empty){font-size:13px;line-height:1.5;margin-bottom:12px}
.menu-product-unit,.menu-price-unit{display:block;font-size:11px;margin-top:4px}

.drink-group + .drink-group{margin-top:60px}.drink-group h3{font-family:var(--serif);font-size:28px;font-weight:200;line-height:1.2;margin:0 0 30px}.drink-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 55px;margin:0}.drink-row{display:flex;justify-content:space-between;align-items:baseline;gap:20px;font-family:var(--serif);font-size:21px;line-height:1.4;min-width:0}.drink-row dd{margin:0;white-space:nowrap}.drink-row sup{font-size:11px}@media(max-width:700px){.drink-list{grid-template-columns:1fr;gap:12px}.drink-group h3{font-size:26px;margin-bottom:24px}}

.drink-note{font-size:.7em}

.wine-group + .wine-group{margin-top:60px}.wine-group h3{font-family:var(--serif);font-size:28px;font-weight:200;line-height:1.2;margin:0 0 20px}.wine-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:55px}.wine-table{width:100%;border-collapse:collapse;table-layout:fixed}.wine-table thead td{width:auto}.wine-table thead th{font-size:11px;font-weight:400;width:64px;text-align:right;padding:0 0 20px}.wine-table tbody th{font-family:var(--serif);font-size:21px;font-weight:400;text-align:left;padding:0 12px 18px 0;vertical-align:top;overflow-wrap:break-word}.wine-table tbody td{text-align:right;font-family:var(--serif);font-size:19px;vertical-align:top;padding:0 0 18px;white-space:nowrap}.wine-table sup{font-size:11px}@media(max-width:700px){.wine-columns{grid-template-columns:1fr;gap:20px}.wine-group h3{font-size:26px}.wine-table thead th{width:64px}}

.drink-milk-note{font-size:14px;line-height:1.5;margin-top:24px}

.kids-description{display:block;font-family:var(--sans);font-size:13px;line-height:1.5;margin-top:8px}
.tasting-menus{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px}.tasting-menu{display:flex;flex-direction:column;min-width:0}.tasting-heading h3{font-family:var(--serif);font-size:36px;line-height:1.15;font-weight:200;margin:12px 0 18px}.tasting-heading .eyebrow{font-size:10px;line-height:1.6}.tasting-intro{font-size:14px;line-height:1.7;margin:0 0 28px}.tasting-courses{list-style:none;padding:0;margin:0}.tasting-courses li{border-top:1px solid var(--line);padding:20px 0}.tasting-menu h4{font-family:var(--serif);font-size:22px;line-height:1.3;font-weight:200;margin:0 0 10px}.tasting-courses p,.tasting-drinks p{font-size:13px;line-height:1.7;margin:0}.tasting-courses p+p{margin-top:8px}.tasting-drinks{border-top:1px solid var(--line);padding:20px 0 28px}.tasting-menu .tasting-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;border-top:1px solid var(--line);margin:auto 0 0;padding:22px 0 0}.tasting-price{font-family:var(--serif);font-size:30px;margin:0}.tasting-price span{display:block;font-family:var(--sans);font-size:11px;margin-top:5px}@media(max-width:1000px){.tasting-menus{grid-template-columns:1fr;gap:55px}}
.tasting-menus{align-items:start}.tasting-menu{display:block}.tasting-summary{display:flex;align-items:center;justify-content:space-between;gap:20px;cursor:pointer;list-style:none;border-block:1px solid var(--line);padding:18px 0}.tasting-summary::-webkit-details-marker{display:none}.tasting-summary h3{font-family:var(--serif);font-size:36px;line-height:1.15;font-weight:200;margin:0}.tasting-toggle::before{content:'+';font-size:24px}.tasting-menu[open] .tasting-toggle::before{content:'−'}.tasting-summary:focus-visible{outline:2px solid currentColor;outline-offset:5px}.tasting-body{display:flex;flex-direction:column;padding-top:24px}.tasting-menu:not([open])>.tasting-body{display:none}.tasting-heading .eyebrow{margin-bottom:16px}
@media(max-width:700px){
  .menu-sidebar h2{font-size:21px}
  .menu-sidebar h2 em{font-size:25px}
  .menu-categories{font-size:18px}
  .menu-home{font-size:15px}
  .menu-main h1{font-size:31px}
  .menu-section h2{font-size:24px;line-height:1.15}
  .menu-number{font-size:22px}
  .menu-product-name{font-size:18px;line-height:1.25}
  .menu-product-price{font-size:15px}
  .drink-group h3,.wine-group h3{font-size:23px}
  .drink-row,.wine-table tbody th{font-size:18px;line-height:1.45}
  .wine-table tbody td{font-size:17px}
  .tasting-summary h3,.tasting-heading h3{font-size:29px}
  .tasting-menu h4{font-size:20px}
  .tasting-price{font-size:26px}
  .content-dialog .menu-detail-price{font-size:18px}
  .menu-detail-info .menu-trace-note{font-size:12px}
  .menu-detail-info .menu-allergen-note{font-size:13px}
}
@media(max-width:700px){
  .menu-sidebar{display:contents}
  .menu-categories{position:-webkit-sticky;position:sticky;top:64px;z-index:30;background:var(--paper)}
  .menu-home{display:block;margin:18px 0 35px}
  html:has(body.menu-page){scroll-padding-top:128px}
  .menu-section{scroll-margin-top:0}
}
@media(max-width:600px){.menu-categories{top:62px}}
.tasting-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.tasting-actions .pill{min-width:0;padding:8px 14px;font-size:13px}.gift-presentation>.eyebrow{text-align:center}.gift-presentation>h2{text-align:center}.content-dialog .gift-intro{font-family:var(--serif);font-size:23px;text-align:center;line-height:1.4;margin-bottom:24px}.content-dialog .gift-price{font-family:var(--serif);font-size:34px;line-height:1.2;text-align:center;border-block:1px solid var(--line);padding:20px 0;margin-bottom:28px}.gift-price span{display:block;font-family:var(--sans);font-size:12px;margin-top:6px}.gift-request{border-top:1px solid var(--line);padding-top:24px}.gift-request .place-links{margin-top:20px}@media(max-width:700px){.content-dialog .gift-intro{font-size:20px}.content-dialog .gift-price{font-size:29px}}



/* Optional editorial badge, positioned within the product photo. */
.menu-product{position:relative}
.menu-product-badge{position:absolute;top:10px;right:10px;padding:6px 9px;border:1px solid rgba(255,255,255,.38);border-radius:999px;background:rgba(235,230,224,.92);color:#39372f;font-size:10px;font-weight:400;line-height:1.2;letter-spacing:.025em;pointer-events:none}
@media(max-width:700px){.menu-product-badge{top:8px;right:8px;font-size:9px;padding:5px 7px}}

.content-dialog .experience-presentation>h2{margin-bottom:28px;text-align:center;font-size:30px;font-weight:200;line-height:1.2}.experience-presentation .tasting-menus{grid-template-columns:1fr;gap:28px}.experience-presentation .tasting-summary h3{font-size:26px;font-weight:200}.tasting-conditions strong{font-weight:700}@media(max-width:700px){.content-dialog .experience-presentation>h2{font-size:26px}.experience-presentation .tasting-summary h3{font-size:23px}}

.content-dialog .experience-presentation .tasting-price{font-family:var(--serif);font-size:30px;line-height:1.2;margin:0}.content-dialog .experience-presentation .tasting-price span{font-family:var(--sans);font-size:11px;line-height:1.5}@media(max-width:700px){.content-dialog .experience-presentation .tasting-price{font-size:26px}}


.pairing-offers{margin-top:40px;border-top:1px solid var(--line);padding-top:28px}.pairing-offers>h3{font-family:var(--serif);font-size:28px;font-weight:200;margin:0 0 24px}.pairing-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px}.pairing-option h4{font-family:var(--serif);font-size:23px;font-weight:200;margin:0 0 12px}.pairing-option>p{font-size:13px;line-height:1.7;margin:0}.pairing-option .pairing-price{font-family:var(--serif);font-size:26px;margin-top:18px}.pairing-price sup{font-size:.6em}@media(max-width:700px){.pairing-options{grid-template-columns:1fr;gap:28px}.pairing-offers>h3{font-size:25px}.pairing-option h4{font-size:21px}.pairing-option .pairing-price{font-size:23px}}

.menu-product-minimum{display:block;font-size:10px;line-height:1.5;margin-top:3px;opacity:.8;font-weight:400}

.menu-product-badge--vegan{display:inline-flex;align-items:center;gap:4px;color:#59634f;background:rgba(234,229,225,.95);border-color:rgba(89,99,79,.25)}.menu-product-badge--vegan svg{flex:none}

.experience-coming-soon{padding:12px 0 22px}.experience-coming-soon h4{font-family:var(--serif);font-size:24px;font-weight:200;line-height:1.25;margin:0 0 12px}.experience-coming-soon p{font-size:13px;line-height:1.7;margin:0}.content-dialog .experience-coming-soon p{font-size:13px;line-height:1.7}@media(max-width:700px){.experience-coming-soon h4{font-size:22px}}
