/* TramX Community v1.33.0 – mobile typography guard
   Scope is intentionally limited to TramX components and TramX-designed blog pages. */
@media (max-width: 680px) {
  :where(
    .tramx-shell,
    .tramx-special,
    .tramx-innotrans,
    .tramx-operator-month,
    .tramx-podcast-archive,
    .tramx-podcast-blog-promo,
    .tramx-blog-theme-content,
    .tramx-blog-category-archive,
    .tramx-blog-overview-masthead,
    .tramx-blog-archive-intro,
    .tramx-blog-overview,
    .tramx-blog-author-profile,
    .tramx-blog-inline-head
  ) :where(h1,h2,h3) {
    word-break: normal !important;
    overflow-wrap: normal !important;
    hyphens: none !important;
    text-wrap: balance;
    max-width: 100%;
  }

  :where(
    .tramx-shell,
    .tramx-special,
    .tramx-innotrans,
    .tramx-operator-month,
    .tramx-podcast-archive,
    .tramx-blog-theme-content,
    .tramx-blog-category-archive,
    .tramx-blog-overview-masthead,
    .tramx-blog-archive-intro,
    .tramx-blog-overview,
    .tramx-blog-author-profile
  ) h1 {
    font-size: clamp(1.72rem, 7.6vw, 2.05rem) !important;
    line-height: 1.08 !important;
    letter-spacing: -.035em !important;
  }

  :where(
    .tramx-shell,
    .tramx-special,
    .tramx-innotrans,
    .tramx-operator-month,
    .tramx-podcast-archive,
    .tramx-blog-theme-content,
    .tramx-blog-category-archive,
    .tramx-blog-overview-masthead,
    .tramx-blog-archive-intro,
    .tramx-blog-overview,
    .tramx-blog-author-profile
  ) h2 {
    font-size: clamp(1.38rem, 6vw, 1.7rem) !important;
    line-height: 1.14 !important;
    letter-spacing: -.025em !important;
  }

  :where(
    .tramx-shell,
    .tramx-special,
    .tramx-innotrans,
    .tramx-operator-month,
    .tramx-podcast-archive,
    .tramx-blog-theme-content,
    .tramx-blog-category-archive,
    .tramx-blog-overview-masthead,
    .tramx-blog-archive-intro,
    .tramx-blog-overview,
    .tramx-blog-author-profile
  ) h3 {
    font-size: clamp(1.08rem, 4.8vw, 1.32rem) !important;
    line-height: 1.2 !important;
  }

  .tramx-blog-list-card__title,
  .tramx-blog-related-card h3,
  .tramx-operator-card h3,
  .tramx-profile-identity h1,
  .tramx-special-hero h1,
  .tramx-inno-hero h1 {
    word-break: normal !important;
    overflow-wrap: normal !important;
    hyphens: none !important;
  }
}

@media (max-width: 420px) {
  :where(
    .tramx-shell,
    .tramx-special,
    .tramx-innotrans,
    .tramx-operator-month,
    .tramx-podcast-archive,
    .tramx-blog-theme-content,
    .tramx-blog-category-archive,
    .tramx-blog-overview-masthead,
    .tramx-blog-archive-intro,
    .tramx-blog-overview,
    .tramx-blog-author-profile
  ) h1 {
    font-size: clamp(1.55rem, 7.8vw, 1.82rem) !important;
  }

  :where(
    .tramx-shell,
    .tramx-special,
    .tramx-innotrans,
    .tramx-operator-month,
    .tramx-podcast-archive,
    .tramx-blog-theme-content,
    .tramx-blog-category-archive,
    .tramx-blog-overview-masthead,
    .tramx-blog-archive-intro,
    .tramx-blog-overview,
    .tramx-blog-author-profile
  ) h2 {
    font-size: clamp(1.28rem, 6.5vw, 1.5rem) !important;
  }
}
