/* Keep mobile rules after the migrated theme; desktop layouts stay intact. */
@media (max-width: 991.98px) {
  /* The theme's .megamenu.menu-about rule otherwise wins over its mobile rule. */
  .navbar .megamenu .megamenu-column,
  .navbar .megamenu.menu-about .megamenu-column {
    flex: 0 0 100%;
    max-width: 100%;
    width: 100%;
    min-width: 0;
  }
  .navbar .megamenu > .dropdown-menu.depth_0 > .container-fluid > .row {
    margin-left: 0;
    margin-right: 0;
  }
  .navbar .megamenu-column .dropdown-menu { width: 100%; }
  .navbar .navbar-nav .dropdown-item,
  .navbar .navbar-nav .nav-link {
    white-space: normal;
    overflow-wrap: anywhere;
    min-height: 44px;
  }
  .navbar .navbar-collapse {
    margin-left: -1rem;
    margin-right: -1rem;
    padding-left: 1rem;
    padding-right: 1rem;
  }
  .navbar .navbar-collapse.show {
    overflow-x: hidden;
    max-height: calc(100vh - 6rem);
    max-height: calc(100dvh - 6rem);
    overflow-y: auto;
    overscroll-behavior-y: contain;
    -webkit-overflow-scrolling: touch;
  }
  .navbar .navbar-toggler {
    min-width: 44px;
    min-height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .navbar .navbar-brand { max-width: min(220px, calc(100% - 4.5rem)); }
  main .btn { max-width: 100%; white-space: normal; }
  main a[href^="mailto:"], main .has-divider-bottom { overflow-wrap: anywhere; }
  .capricciosa-carousel .capricciosa-carousel-controls button { width: 44px; height: 44px; line-height: 44px; }
  dialog.restaurant-menu-dialog [data-menu-close] {
    min-width: 44px;
    min-height: 44px;
    position: sticky;
    z-index: 2;
    background: #f7f5ef;
    border-radius: 50%;
    top: 0;
    right: auto;
    float: right;
    margin-top: -1rem;
    margin-right: -1rem;
  }
}
