/* Мобильная читаемость.
   Тема 2020 года жёстко задаёт .content_wrap ширину 280px до 479px и 440px до 767px,
   из-за чего на современных экранах в строку помещается 3-5 слов. Возвращаем резину. */

@media (max-width: 767px) {
  .content_wrap,
  .content_container,
  .menu_style_side .content_wrap,
  .menu_style_side .content_container {
    width: auto !important;
    max-width: 100% !important;
    padding-left: 18px !important;
    padding-right: 18px !important;
    box-sizing: border-box !important;
  }

  .body_style_fullwide .content_wrap {
    padding-left: 18px !important;
    padding-right: 18px !important;
  }

  /* секции Elementor тоже прибиты к пиксельной ширине */
  .elementor-section.elementor-section-boxed > .elementor-container,
  .elementor-section.elementor-section-justified.elementor-section-boxed > .elementor-container {
    width: auto !important;
    max-width: 100% !important;
  }

  /* сам текст решения */
  .post_content,
  .post_content p,
  .post_content li,
  .post_content span {
    font-size: 16px !important;
    line-height: 1.6 !important;
  }
  .post_content p { margin-bottom: 1em !important; }

  /* заголовок дела: строки не должны слипаться */
  h1.post_title,
  .post_header h1 {
    font-size: 22px !important;
    line-height: 1.25 !important;
    word-break: normal;
    hyphens: auto;
  }

  /* карточка метаданных */
  .case_info_wrapper { width: auto !important; }
  .case_info_wrapper .case_info_title { font-size: 13px !important; }
  .case_info_wrapper .case_info_description { font-size: 15px !important; }

  /* Предупреждение об иностранном агенте задано в 2rem и занимает целый экран.
     Правило точечное, по идентификатору виджета, чтобы не задеть остальную шапку. */
  .elementor-element-f65c355,
  .elementor-element-f65c355 > .elementor-widget-container,
  .elementor-element-f65c355 p {
    font-size: 15px !important;
    line-height: 1.45 !important;
    word-spacing: normal !important;
  }

  /* длинные ссылки и названия дел не должны рвать вёрстку */
  .post_content a,
  .post_title a { overflow-wrap: break-word; word-break: break-word; }

  /* таблица перечня решений прокручивается, а не ломает страницу */
  table { display: block; overflow-x: auto; -webkit-overflow-scrolling: touch; }
}

@media (max-width: 479px) {
  .content_wrap,
  .content_container,
  .menu_style_side .content_wrap,
  .menu_style_side .content_container {
    width: auto !important;
    padding-left: 14px !important;
    padding-right: 14px !important;
  }
  h1.post_title, .post_header h1 { font-size: 20px !important; }
}
