/* Long translated place names must not enlarge grid columns on small screens. */
.cards > .card,
.map-shell,
.map-head {
  min-width: 0;
}

.map-review-link {
  white-space: normal;
  overflow-wrap: anywhere;
}

[data-language-summary] {
  max-width: 68ch;
  line-height: 1.65;
}

/* Use the English theme; only adapt for longer words and non-Latin scripts. */
.main,
.hero-content,
.overview-column,
.service-grid > *,
.posts > * {
  min-width: 0;
}

.hero-title,
.section-title,
.overview-column-title,
.week-session-link,
.about-list {
  overflow-wrap: anywhere;
}

.homepage .overview-cta {
  max-width: 42vw;
  white-space: normal;
  overflow-wrap: anywhere;
  text-align: center;
}

.homepage [data-language-summary] {
  margin-top: 24px;
}

/* These scripts need room for combining marks and natural word boundaries. */
:is(:lang(hi), :lang(th), :lang(ja), :lang(ko), :lang(zh)) .hero-title {
  line-height: 1.25;
  letter-spacing: normal;
}

:is(:lang(hi), :lang(th), :lang(ja), :lang(ko), :lang(zh)) :is(.homepage-h1, .week-dot, .overview-day, .overview-cta) {
  letter-spacing: normal;
}

@media (max-width: 600px) {
  .burger,
  .lang-button {
    min-width: 44px;
    min-height: 44px;
  }
}
