/* Retain the existing dropdown styling, with an explicit accessible open state. */
#sister-restaurants > button {
  border: 0;
  background: none;
  text-align: inherit;
  cursor: pointer;
}

#sister-restaurants-links[hidden] {
  display: none;
}

#sister-restaurants-links:not([hidden]) {
  display: block;
}

/* Phones: the booking button floats bottom-right (Paul, Sep 16). From 48em it sits top-right in the header. */
.c-header .new-reservation {
  position: fixed;
  top: auto;
  right: 15px;
  bottom: 15px;
  left: auto;
  z-index: 11;
}

.c-header .c-reservation-button .c-knockout-button {
  padding-top: 0;
  padding-bottom: 0;
}

.c-header .c-reservation-button {
  font-size: 1.3125em;
}

.c-header .c-reservation-button .c-knockout-button > span {
  padding: 0;
}

@media all and (min-width: 48em) {
  .c-header .new-reservation {
    position: absolute;
    top: 16px;
    right: 18px;
    bottom: auto;
  }

  .c-header .c-nav {
    padding-right: 260px;
  }
}

/* Leave room for the booking button and all five links on smaller desktops. */
@media all and (min-width: 48em) and (max-width: 68.75em) {
  .c-header .c-nav__logo {
    left: 60px;
    width: 90px;
  }

  .c-header.has-logo .c-nav-list {
    padding-left: 115px;
  }

  .c-header .c-nav-list > .c-nav-list__item > .c-nav__link {
    font-size: .625em;
  }
}

/* T8: taller map box so Butcher & Bee, Nissan Stadium and Broadway fit at a readable zoom. */
._locations-detail .c-map-wrap {
  padding-bottom: 80%;
}

/* T9 */
.menu-viewer {
  position: fixed;
  inset: 0;
  z-index: 2147483647;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 24px;
  background: rgba(0, 0, 0, .65);
}
.menu-viewer, .menu-viewer * { box-sizing: border-box; }
.menu-viewer__dialog {
  display: flex;
  flex-direction: column;
  width: 100%;
  max-width: 960px;
  height: 100%;
  max-height: 1100px;
  background: #fff;
  color: #222;
}
.menu-viewer__toolbar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
  padding: 16px;
  border-bottom: 1px solid #ccc;
}
.menu-viewer__toolbar h2 { flex: 1 1 160px; margin: 0; font-size: 24px; line-height: 1.2; }
.menu-viewer__download { color: inherit; text-decoration: underline; }
.menu-viewer__close { padding: 10px 14px; background: #fff; color: #222; border: 1px solid #222; cursor: pointer; }
.menu-viewer a:focus-visible, .menu-viewer button:focus-visible, .menu-viewer__content:focus-visible {
  outline: 3px solid #005fcc;
  outline-offset: -3px;
}
.menu-viewer__content { flex: 1; min-height: 0; overflow: auto; overscroll-behavior: contain; padding: 16px; }
.menu-viewer__content > p { margin: 0 0 12px; }
.menu-viewer__pages canvas { display: block; max-width: 100%; margin: 0 0 16px; }
@media (max-width: 600px) {
  .menu-viewer { padding: 0; }
  .menu-viewer__dialog { max-width: none; max-height: none; }
  .menu-viewer__toolbar { padding: 12px; }
  .menu-viewer__toolbar h2 { flex-basis: 100%; font-size: 22px; }
  .menu-viewer__content { padding: 8px; }
}

/* T11 */
[data-vendors]:empty { display: none; }
[data-vendors] > .o-grid { gap: 1rem; }
[data-vendors] > .o-grid > .o-grid__item { flex: 1 1 12rem; min-width: 0; padding: 0; }
[data-vendors] .c-sub { text-decoration: underline; }
[data-vendors] .c-copy { margin: .5rem 0 0; }

/* T13 */
.c-footer__logo img{opacity:.6;transition:opacity .3s ease}
.c-footer__logo img:hover{opacity:.8}
/* The navigation is 4.6875em at the header's 16px font size: 75px. */
#form{scroll-margin-top:75px}

/* Sep 16: footer newsletter is just the Sign Up button (opens the Loyalist form); centre it on phones like the rest of the footer. */
@media all and (max-width: 47.99em) {
  .c-newsletter-form__form .form-submit { float: none; display: block; margin: 10px auto; }
}
