/* KoBiCo 1.2.2. Keep content visible rather than hiding horizontal overflow. */
@media (max-width: 640px) {
  html { box-sizing: border-box; width: 100%; }
  body { box-sizing: border-box; width: 100%; max-width: 100%; min-width: 0 !important; }
  body :is(.site, .site-content, .site-main, .content-area, .entry-content,
    .wp-site-blocks, .wp-block-group, .wp-block-columns, .wp-block-column,
    .elementor, .elementor-section, .elementor-container, .elementor-row,
    .elementor-column, .elementor-widget-wrap, .elementor-widget, .elementor-widget-container) {
    box-sizing: border-box; min-width: 0 !important; max-width: 100% !important;
  }
  :is(.entry-content, .elementor-widget-container, .wp-block-post-content) > * {
    box-sizing: border-box; max-width: 100%; min-width: 0;
  }
  :is(.entry-content, .wp-block-post-content) :is(.alignwide, .alignfull) {
    width: 100% !important; max-width: 100% !important; margin-inline: 0 !important;
  }
  :is(.entry-content, .elementor, .wp-block-post-content) :is(h1,h2,h3,h4,p,a,li,blockquote) {
    overflow-wrap: anywhere; hyphens: auto;
  }
  :is(.entry-content, .elementor, .wp-block-post-content) :is(img,video,svg) {
    max-width: 100%; height: auto;
  }
  :is(.entry-content, .elementor, .wp-block-post-content) iframe { max-width: 100%; }
  :is(.entry-content, .elementor, .wp-block-post-content) :is(input,select,textarea) {
    box-sizing: border-box; max-width: 100%; font-size: 16px;
  }
  :is(.entry-content, .elementor, .wp-block-post-content) :is(pre, .wp-block-table) {
    max-width: 100%; overflow-x: auto;
  }
  .kobico-mobile-table { display: block; width: 100%; max-width: 100%; overflow-x: auto; }
}
@media (max-width: 640px) {
  .entry-content, .wp-block-post-content { padding-inline: 12px !important; }
  .elementor-widget-wrap { padding-inline: 12px !important; }
  .elementor-widget-container { padding-inline: 0 !important; }
}
@media (max-width: 640px) {
  :is(.entry-content, .elementor-widget-container, .wp-block-post-content) :is(div,section,article,form,figure) {
    box-sizing: border-box; min-width: 0 !important; max-width: 100% !important;
  }
  .wp-block-columns { flex-wrap: wrap !important; }
  .wp-block-column { flex-basis: 100% !important; }
}
@media (max-width: 640px) {
  .entry-title, .page-title { max-width: 100% !important; overflow-wrap: anywhere !important; white-space: normal !important; hyphens: auto; font-size: 28px !important; line-height: 1.25 !important; }
  .entry-header, .page-header { box-sizing: border-box; max-width: 100%; padding-inline: 12px !important; }
}
