.bruma-menu-page{--menu-gutter:clamp(24px,6vw,100px)}
.bruma-menu-page .header{height:105px;padding-inline:var(--menu-gutter)}
.bruma-back-home{font-size:.875rem;border-bottom:1px solid var(--line);padding:8px 0}
.bruma-back-home:hover{color:var(--red)}
.bruma-menu-hero{position:relative;isolation:isolate;max-width:1440px;margin:100px auto 0;padding:48px var(--menu-gutter) 44px;overflow:hidden}
.bruma-hero-photo{position:absolute;z-index:-1;right:0;top:0;width:47%;height:100%;object-fit:cover;object-position:50% 45%;opacity:.75;mask-image:linear-gradient(90deg,transparent,#000 32%,#000 85%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 32%,#000 85%,transparent)}
.bruma-hero-copy{position:relative;max-width:75%}
.bruma-menu-page .eyebrow{font-size:.875rem;letter-spacing:.13em;line-height:1.5}
.bruma-menu-hero h1{font:700 clamp(64px,8.8vw,128px)/.92 Display,Impact,sans-serif;letter-spacing:-.03em;margin:24px 0}
.bruma-menu-hero h1 span{color:var(--red)}
.bruma-hero-intro{font:italic clamp(22px,2.25vw,32px)/1.35 Georgia,serif}
.bruma-menu-date{margin-top:24px;color:var(--muted);font-size:.875rem}
.bruma-category-nav{position:sticky;top:0;z-index:15;display:flex;justify-content:center;flex-wrap:wrap;gap:6px 28px;border-block:1px solid var(--line);background:#0b0a09f5;backdrop-filter:blur(12px);padding:14px 80px 14px var(--menu-gutter)}
.bruma-category-nav a{display:flex;align-items:center;min-height:44px;font-size:.875rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;border-bottom:2px solid transparent}
.bruma-category-nav a:hover,.bruma-category-nav a:focus-visible{color:var(--red);border-bottom-color:var(--red)}
.bruma-menu-sheet{max-width:1440px;margin:0 auto;padding:0 max(90px,var(--menu-gutter)) 0 var(--menu-gutter)}
.bruma-menu-sheet section{scroll-margin-top:20px}
.bruma-tastings{padding:64px 0 72px}
.bruma-section-title{margin-bottom:34px}
.bruma-menu-sheet h2{font:700 clamp(42px,5.7vw,76px)/1.05 Display,Impact,sans-serif;letter-spacing:-.02em;margin-top:12px}
.bruma-tasting-grid{display:grid;grid-template-columns:1fr 1fr;gap:36px;align-items:start}
.bruma-tasting{border-top:2px solid var(--red);padding-top:22px;min-width:0}
.tasting-heading{display:flex;justify-content:space-between;align-items:center;gap:20px}
.tasting-count{font-size:.875rem;letter-spacing:.1em;color:var(--muted)}
.tasting-heading h3{font:700 clamp(38px,4.8vw,66px)/1.1 Display,Impact,sans-serif;letter-spacing:-.01em;margin-top:8px}
.tasting-price{font:700 clamp(32px,3.5vw,48px)/1.1 Display,Impact,sans-serif;color:var(--red);text-align:right;white-space:nowrap}
.tasting-price span{display:block;font:400 .875rem/1.5 Arial,Helvetica,sans-serif;color:var(--muted)}
.tasting-option{font-size:1rem;color:var(--muted);margin-top:18px}
.tasting-steps{margin:24px 0 0;padding:0;list-style:none}
.tasting-steps li{padding:18px 0;border-top:1px solid var(--line)}
.tasting-steps h4{font:700 1.125rem/1.3 Arial,Helvetica,sans-serif;margin:0 0 7px}
.tasting-steps p{font-size:1rem;color:var(--muted);line-height:1.65}
.tasting-pairing{border-left:2px solid var(--red);padding:4px 0 4px 18px;margin-top:18px;font-size:1rem;line-height:1.75}
.tasting-pairing span{display:block;color:var(--muted);font-size:.875rem;letter-spacing:.08em;margin-bottom:6px}
.bruma-category{display:grid;grid-template-columns:minmax(170px,.8fr) minmax(0,2fr);gap:7%;border-top:1px solid var(--red);padding:52px 0 62px}
.bruma-category-heading .eyebrow{font-size:.875rem}
.bruma-dish{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;align-items:baseline;padding:25px 0;border-bottom:1px solid var(--line)}
.bruma-dish:first-child{padding-top:0}
.bruma-dish h3{font:700 clamp(20px,2vw,27px)/1.25 Arial,Helvetica,sans-serif;letter-spacing:-.03em;overflow-wrap:anywhere}
.bruma-dish div>p{color:var(--muted);font-size:1rem;line-height:1.65;margin-top:10px;max-width:640px}
.bruma-dish-price{white-space:nowrap;color:var(--red);font:700 1.75rem/1.2 Display,Impact,sans-serif}
.bruma-dish-price span{font:400 1rem Arial,Helvetica,sans-serif}
.bruma-menu-end{flex-wrap:wrap;border-top:1px solid var(--line);padding:38px 0 55px;display:flex;justify-content:space-between;align-items:center;gap:24px;font-size:1rem}
.bruma-menu-end p>span{color:var(--muted);font-size:.875rem}
.bruma-menu-end .text-link{white-space:nowrap}
.bruma-menu-page .menu-links [aria-current="page"]{color:var(--red)}
.bruma-craft{border-top:2px solid var(--red);padding:56px 0 64px}
.bruma-craft-intro{display:grid;grid-template-columns:1fr 1.3fr;gap:7%;align-items:center}
.bruma-craft-intro>p{font-size:1.125rem;line-height:1.8;color:var(--muted);max-width:650px}
.bruma-craft-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 36px;margin-top:36px}
.bruma-craft-grid article{display:grid;grid-template-columns:28px minmax(0,1fr);gap:18px;padding:26px 0;border-top:1px solid var(--line)}
.bruma-craft-index{font:italic 1rem Georgia,serif;color:var(--red);padding-top:5px}
.bruma-craft-grid h3{font-size:1.25rem;line-height:1.35;letter-spacing:-.02em;margin-bottom:10px}
.bruma-craft-grid p{font-size:1rem;line-height:1.7;color:var(--muted)}

/* The menu opens above the current page while keeping its scroll position. */
.bruma-is-open{overflow:hidden}
.bruma-menu-dialog{position:fixed;inset:0;margin:0;width:100%;height:100svh;max-width:none;max-height:none;padding:0;border:0;border-top:3px solid var(--red);background:var(--ink);color:var(--paper);overflow:hidden}
.bruma-menu-dialog[open]{display:flex;flex-direction:column}
.bruma-menu-dialog::backdrop{background:#000c}
.bruma-dialog-top{flex-shrink:0;display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:70px;padding:12px var(--menu-gutter);border-bottom:1px solid var(--line);background:var(--ink)}
.bruma-dialog-top>p{font-size:.875rem;letter-spacing:.06em;font-weight:700}
.bruma-dialog-top>p span{color:var(--muted);font-weight:400}
.bruma-dialog-close,.bruma-dialog-up,.bruma-panel-status button{display:flex;align-items:center;justify-content:center;gap:12px;border:1px solid var(--line);background:var(--ink);color:var(--paper);min-height:44px;padding:10px 14px;font-size:.875rem;line-height:1.2}
.bruma-dialog-close:hover,.bruma-dialog-close:focus-visible,.bruma-dialog-up:hover,.bruma-dialog-up:focus-visible,.bruma-panel-status button:hover{border-color:var(--red);color:var(--red)}
.bruma-dialog-content{flex:1;min-height:0;overflow-y:auto;overflow-x:clip;overscroll-behavior:contain;scrollbar-color:var(--red) var(--ink);scrollbar-width:thin}
.bruma-dialog-content .bruma-menu-hero{margin-top:0}
.bruma-dialog-content .bruma-category-nav{padding-right:var(--menu-gutter)}
.bruma-dialog-content .bruma-menu-sheet{padding-right:var(--menu-gutter)}
.bruma-dialog-content .bruma-menu-end{padding-bottom:96px}
.bruma-dialog-up{position:absolute;right:max(18px,env(safe-area-inset-right));bottom:calc(18px + env(safe-area-inset-bottom));z-index:20;background:#0b0a09ed}
.bruma-dialog-up .icon{color:var(--red)}
.bruma-panel-status{padding:56px var(--menu-gutter);font-size:1rem;color:var(--muted)}
.bruma-panel-status button{margin-top:20px}
.bruma-is-open,.bruma-is-open a,.bruma-is-open button,.bruma-menu-dialog{cursor:auto!important}
.bruma-menu-dialog a,.bruma-menu-dialog button{cursor:pointer!important}
.bruma-is-open .cursor-orbit{display:none!important}
.bruma-is-open .ticker-track,.bruma-is-open .type-lane span{animation-play-state:paused!important}
@media(max-width:900px){
  .bruma-tasting-grid{gap:26px}
  .bruma-category{grid-template-columns:1fr;gap:26px}
  .bruma-menu-sheet h2{font-size:52px}
}
@media(max-width:700px){
  .bruma-menu-page{--menu-gutter:6vw}
  .bruma-menu-page .header{height:88px}
  .bruma-menu-hero{margin-top:88px;padding-block:32px}
  .bruma-hero-copy{max-width:100%}
  .bruma-hero-photo{width:64%;opacity:.24;object-position:55% 48%;mask-image:linear-gradient(90deg,transparent,#000 50%);-webkit-mask-image:linear-gradient(90deg,transparent,#000 50%)}
  .bruma-menu-hero h1{font-size:clamp(56px,15vw,102px);margin-block:20px}
  .bruma-category-nav{justify-content:flex-start;gap:0 18px;padding:8px var(--menu-gutter)}
  .bruma-category-nav a{letter-spacing:0}
  .bruma-menu-sheet{padding-inline:var(--menu-gutter)}
  .bruma-menu-sheet section{scroll-margin-top:30px}
  .bruma-tastings{padding:38px 0 48px}
  .bruma-tasting-grid{grid-template-columns:1fr;gap:38px}
  .tasting-heading h3{font-size:54px}
  .tasting-price{font-size:44px}
  .bruma-category{padding:38px 0 46px}
  .bruma-dish{gap:14px;padding-block:22px}
  .bruma-dish h3{font-size:1.25rem}
  .bruma-menu-end{flex-direction:column;align-items:flex-start;padding-block:30px}
  .bruma-craft{padding:36px 0 42px}
  .bruma-craft-intro,.bruma-craft-grid{grid-template-columns:1fr;gap:24px}
  .bruma-craft-intro>p{font-size:1rem}
  .bruma-craft-grid{gap:0;margin-top:26px}
  .bruma-dialog-top{padding:10px 16px;gap:10px;min-height:65px}
  .bruma-dialog-top>p span{display:none}
  .bruma-dialog-close{padding-inline:12px}
  .bruma-dialog-up{right:14px;bottom:calc(14px + env(safe-area-inset-bottom))}
  body.bruma-menu-page .header{width:76px;height:64px;padding:8px 0 8px 16px}
  body.bruma-menu-page .bruma-category-nav{top:64px}
}

/* Booking stays in the reading flow, including on small screens. */
.bruma-booking{display:flex;flex-direction:column;align-items:flex-start;gap:9px;margin-top:26px;max-width:100%}
.bruma-booking-button{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;min-height:48px;max-width:100%;padding:14px 20px;border:1px solid var(--paper);background:var(--paper);color:var(--ink);font-size:1rem;font-weight:700;line-height:1.4}
.bruma-booking-button .icon{flex-shrink:0}
.bruma-booking-button:hover{background:transparent;color:var(--paper)}
.bruma-booking-button:focus-visible{outline:2px solid var(--paper);outline-offset:5px}
.bruma-booking>p{font-size:.8125rem;line-height:1.4;color:var(--muted)}
.bruma-menu-end .bruma-booking{margin-top:0}
