/* Menus families: pickup, everyday browsing and event catering stay distinct. */
[data-page="menus"] .menu-hero-copy>p { font-size: 16px; }
[data-page="menus"] .menu-hero-detail { font-size: 11px; }
[data-page="menus"] .menu-tabs { gap: 10px; }
[data-page="menus"] .menu-tabs>a { font-size: 15px; padding: 17px 20px; }
[data-page="menus"] .menu-tabs>a>span { font-size: 12px; }
[data-page="menus"] .menu-nav-order { font-size: 13px; }
[data-page="menus"] .menu-search-bar label { font-size: 14px; }
[data-page="menus"] .menu-search-bar>p { font-size: 12px; line-height: 1.6; }
.menu-family-heading { margin-bottom: 28px; max-width: 780px; }
.menu-family-heading .eyebrow { font-size: 12px; }
.menu-family-heading h2 { font-size: clamp(36px,4.3vw,54px); line-height: 1.1; letter-spacing: -1.5px; margin: 12px 0 16px; font-weight: 500; }
.menu-family-heading>p:last-child { max-width: 690px; color: var(--muted); font-size: 16px; line-height: 1.8; }
.menu-pickup-feature { display: grid; grid-template-columns: 1fr 1fr; background: #e9eddf; border-radius: 22px; overflow: hidden; }
.menu-pickup-feature>div { padding: 44px; align-self: center; }
.menu-pickup-feature h3 { font-size: clamp(35px,4vw,50px); line-height: 1.1; letter-spacing: -1.4px; margin: 18px 0 24px; font-weight: 500; }
.menu-pickup-feature h3 em { font-family: var(--serif); font-weight: 400; }
.menu-pickup-feature p:not(.eyebrow) { font-size: 15px; color: var(--muted); line-height: 1.8; margin-bottom: 24px; }
.menu-pickup-feature .button { font-size: 14px; gap: 20px; }
.menu-pickup-feature .text-link { display: flex; width: fit-content; font-size: 14px; margin-top: 22px; }
.menu-pickup-feature>img { width: 100%; height: 100%; min-height: 440px; object-fit: cover; }
.menu-family-guide { display: grid; grid-template-columns: 1fr 1fr; gap: 22px; margin: 28px 0 44px; }
.menu-family-guide>a { border: 1px solid var(--line); border-radius: 16px; padding: 26px; transition: background .2s; }
.menu-family-guide>a:hover { background: #eeeee3; }
.menu-family-guide>a>span { font-size: 11px; font-weight: 700; letter-spacing: 1.1px; }
.menu-family-guide strong { display: flex; justify-content: space-between; gap: 16px; font-size: 23px; font-weight: 500; margin: 14px 0 10px; }
.menu-family-guide p { font-size: 14px; color: var(--muted); line-height: 1.7; }
.menu-subnav { display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 25px; }
.menu-subnav a { padding: 12px 16px; border: 1px solid var(--line); border-radius: 30px; font-size: 13px; line-height: 1.5; }
.menu-subnav a:hover { background: #e9eddf; }
.menu-source-alert { margin-bottom: 48px; }
.menu-source-section,.menu-holiday-feature,[data-page="menus"] [data-category] { scroll-margin-top: 205px; }
.menu-specials-hub { margin-top: 70px; }
.menu-holiday-feature { display: grid; grid-template-columns: 1.25fr .75fr; background: var(--green); color: var(--paper); border-radius: 22px; overflow: hidden; margin-bottom: 32px; }
.menu-holiday-feature>div { padding: 42px; }
.menu-holiday-feature .eyebrow { color: var(--lime); font-size: 11px; }
.menu-holiday-feature h3 { font: italic 46px/1.12 var(--serif); letter-spacing: -1px; margin: 18px 0 22px; }
.menu-holiday-feature p:not(.eyebrow) { font-size: 15px; line-height: 1.8; }
.menu-holiday-feature .menu-holiday-note { color: #d5dfcf; font-size: 13px; margin-top: 18px; }
.menu-holiday-feature>img { width: 100%; height: 100%; object-fit: cover; min-height: 420px; }
.menu-holiday-actions { display: flex; flex-wrap: wrap; gap: 22px; align-items: center; margin-top: 28px; }
.menu-holiday-actions .button { background: var(--paper); color: var(--green); border-color: var(--paper); font-size: 14px; }
.menu-holiday-actions .button:before { background: var(--lime); }
.menu-holiday-actions .text-link { color: var(--paper); font-size: 14px; border-color: #ffffff70; }
.menu-catalog-details { border: 1px solid var(--line); border-radius: 16px; margin: 24px 0; overflow: hidden; }
.menu-catalog-details>summary { display: flex; justify-content: space-between; align-items: center; gap: 22px; padding: 24px 28px; background: #eeeee3; cursor: pointer; list-style: none; }
.menu-catalog-details>summary::-webkit-details-marker { display: none; }
.menu-catalog-details>summary strong { display: block; font-size: 22px; font-weight: 500; line-height: 1.3; }
.menu-catalog-details>summary small { display: block; font-size: 13px; color: var(--muted); margin-top: 7px; line-height: 1.6; }
.menu-disclosure-icon { font-size: 28px; line-height: 1; transition: transform .2s; flex-shrink: 0; }
.menu-catalog-details[open]>summary .menu-disclosure-icon { transform: rotate(45deg); }
.menu-details-content { padding: 32px 28px; }
.menu-catering-intro { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 24px; padding: 25px 28px; background: #e9eddf; border-radius: 16px; margin-bottom: 30px; }
.menu-catering-intro p { max-width: 600px; font-size: 15px; line-height: 1.8; color: var(--muted); }
.menu-catering-intro .button { flex-shrink: 0; font-size: 14px; }
.menu-catering-directory { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 25px; }
.menu-catering-group { border: 1px solid var(--line); border-radius: 16px; padding: 26px; }
.menu-catering-group h3 { font-size: 27px; font-weight: 500; margin: 0 0 17px; letter-spacing: -.7px; }
.menu-catering-group>a { display: flex; justify-content: space-between; align-items: center; gap: 18px; padding: 14px 0; border-top: 1px solid var(--line); font-size: 15px; line-height: 1.6; }
.menu-catering-group>a:hover { color: var(--red); }
.menu-catering-group>a>span { flex-shrink: 0; }
.menu-family-guide a:focus-visible,.menu-subnav a:focus-visible,.menu-catering-group a:focus-visible,.menu-catalog-details>summary:focus-visible { outline: 3px solid var(--red); outline-offset: 3px; }
[data-page="menus"] .menu-published-note { font-size: 13px; }
[data-page="menus"] .menu-catalog-intro>p,[data-page="menus"] .menu-group-intro,[data-page="menus"] .menu-item p { font-size: 13px; }
[data-page="menus"] .menu-item h4 { font-size: 15px; }
[data-page="menus"] .menu-price { font-size: 13px; }
[data-page="menus"] .menu-footnote { flex-wrap: wrap; font-size: 12px; }
@media(max-width:1000px) {
  [data-page="menus"] .menu-tabs>a { padding: 16px 14px; gap: 10px; font-size: 14px; }
  .menu-pickup-feature>div,.menu-holiday-feature>div { padding: 30px; }
  .menu-catering-intro { align-items: flex-start; flex-direction: column; gap: 20px; }
}
@media(max-width:680px) {
  [data-page="menus"] .menu-navigation-inner { display: block; }
  [data-page="menus"] .menu-tabs { gap: 6px; display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); width: 100%; overflow: visible; }
  [data-page="menus"] .menu-tabs>a { display: block; font-size: 13px; line-height: 1.4; white-space: normal; padding: 12px 9px; }
  [data-page="menus"] .menu-tabs>a>span { display: block; font-size: 10px; margin-bottom: 4px; }
  [data-page="menus"] .menu-nav-order { display: none; }
  .menu-family-heading { margin-bottom: 23px; }
  .menu-family-heading>p:last-child { font-size: 15px; }
  .menu-pickup-feature,.menu-holiday-feature { grid-template-columns: 1fr; }
  .menu-pickup-feature>img { min-height: 0; height: 255px; grid-row: 1; }
  .menu-pickup-feature>div,.menu-holiday-feature>div { padding: 26px 23px; }
  .menu-pickup-feature .button { font-size: 13px; padding: 15px 16px; gap: 12px; }
  .menu-pickup-feature .text-link { font-size: 13px; }
  .menu-family-guide,.menu-catering-directory { grid-template-columns: 1fr; gap: 16px; }
  .menu-family-guide>a,.menu-catering-group { padding: 23px; }
  .menu-subnav { gap: 8px; }
  .menu-subnav a { font-size: 12px; padding: 10px 12px; }
  .menu-specials-hub { margin-top: 48px; }
  .menu-holiday-feature h3 { font-size: 38px; }
  .menu-holiday-feature>img { min-height: 0; height: 220px; }
  .menu-catalog-details>summary { padding: 21px; gap: 15px; }
  .menu-catalog-details>summary strong { font-size: 20px; }
  .menu-catalog-details>summary small { font-size: 12px; }
  .menu-details-content { padding: 25px 17px; }
  .menu-catering-intro { padding: 23px; }
  .menu-catering-intro .button { font-size: 13px; }
  .menu-source-section,.menu-holiday-feature,[data-page="menus"] [data-category] { scroll-margin-top: 200px; }
}
@media(max-width:370px) {
  [data-page="menus"] .menu-tabs>a { font-size: 12px; padding: 11px 7px; }
  .menu-pickup-feature>div,.menu-holiday-feature>div { padding: 24px 18px; }
  .menu-pickup-feature .button { font-size: 12px; padding: 14px 13px; gap: 8px; }
}
@media(prefers-reduced-motion:reduce) { .menu-disclosure-icon,.menu-family-guide>a { transition: none; } }
[data-page="menus"] .menu-hero-copy>.menu-checkout-note,
[data-page="menus"] .menu-next .menu-checkout-note { font-size: 12px !important; line-height: 1.7 !important; }
[data-page="menus"] .menu-navigation[data-family="catering-menu"] .menu-nav-order { background: var(--green); }

/* Direct access to original printable menus, clear of the sticky navigation. */
.menu-hero-actions{flex-wrap:wrap;gap:16px 22px}.menu-hero-actions .menu-print-shortcut{font-size:13px;padding:15px 18px;gap:14px}
#print-takeout-menu,#print-daily-menu{scroll-margin-top:220px}
.menu-print-actions{display:flex;flex-wrap:wrap;gap:12px;margin:20px 0 28px}.menu-print-actions .button{font-size:14px;padding:15px 20px;gap:16px}
.menu-pickup-feature .menu-takeout-print{display:inline-flex;margin-top:16px}
@media(max-width:680px){#print-takeout-menu,#print-daily-menu{scroll-margin-top:220px}.menu-print-actions .button{width:100%;justify-content:space-between}.menu-hero-actions .menu-print-shortcut{min-height:48px}}
