@media (min-width: 641px) {
  .mode-popover {
    width: min(420px, calc(100vw - 48px));
    max-height: calc(100vh - 88px);
    gap: 5px;
    padding: 10px;
    overflow-y: auto;
  }

  .mode-popover button {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(170px, 0.95fr);
    gap: 24px;
    align-items: center;
    min-height: 54px;
    padding: 12px 14px;
  }

  .mode-popover button strong {
    min-width: 0;
    font-size: 14px;
    line-height: 1.35;
    overflow-wrap: anywhere;
  }

  .mode-popover button span {
    min-width: 0;
    font-size: 12px;
    line-height: 1.35;
    text-align: right;
    overflow-wrap: anywhere;
  }
}

@media (min-width: 641px) and (max-width: 900px) {
  .mode-popover {
    right: 16px;
    width: min(420px, calc(100vw - 32px));
  }
}

.cover-page h1 {
  margin-top: clamp(40px, 5.7vw, 58px);
  font-size: clamp(30px, 6vw, 51px);
  line-height: 0.98;
  letter-spacing: -0.05em;
  text-wrap: balance;
}

.cover-title-brand,
.cover-title-menu {
  display: block;
}

.cover-title-menu {
  margin-top: 0.08em;
}

/* English pages use one English presentation. Other languages retain the
   localized-primary + English-reference pairing used by the restaurant. */
html[lang="en"] .secondary-copy,
html[lang="en"] .menu-name-en,
html[lang="en"] .ingredients-en,
html[lang="en"] .mode-intro > span:not(.localized-primary),
html[lang="en"] .mode-card > span:not(.mode-explanation),
html[lang="en"] .mode-popover button > span:not(.mode-explanation),
html[lang="en"] .cover-hours > p[lang="en"],
html[lang="en"] .policy-page .page-heading > p[lang="en"],
html[lang="en"] .policy-footer > span:last-child,
html[lang="en"] .course-step-label > span,
html[lang="en"] .course-step-dish > p[lang="en"],
html[lang="en"] .page-footnote > span:last-child {
  display: none !important;
}
