@media (max-width: 768px) {
  html,
  body {
    max-width: 100%;
    overflow-x: hidden;
  }

  body {
    -webkit-text-size-adjust: 100%;
  }

  .core {
    width: auto !important;
    max-width: none !important;
    padding-left: 15px !important;
    padding-right: 15px !important;
  }

  img,
  iframe,
  embed,
  object,
  video {
    max-width: 100% !important;
  }

  img {
    height: auto;
  }

  header #logo,
  header #slogan {
    float: none !important;
    display: block;
    width: 100% !important;
    text-align: center;
  }

  header #logo img {
    width: auto !important;
    max-width: 280px !important;
    height: auto !important;
    margin-left: auto;
    margin-right: auto;
  }

  #nav_main nav,
  #nav_main #search {
    float: none !important;
    width: 100% !important;
  }

  #nav_main nav ul,
  #nav_main nav li {
    float: none !important;
  }

  #nav_main nav ul {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
    margin: 0;
    padding: 0;
  }

  #nav_main nav li {
    display: block;
  }

  #nav_main nav a {
    display: block;
    line-height: 1.25;
    white-space: normal;
  }

  #search {
    margin-top: 8px;
  }

  .input-group {
    width: 100%;
  }

  .halfs,
  .thirds,
  .quarters,
  .sixths,
  .flexbox {
    display: block !important;
  }

  .halfs .col,
  .thirds .col,
  .quarters .col,
  .sixths .col,
  .flexbox .col,
  .col,
  .col_long,
  .col_short {
    float: none !important;
    width: 100% !important;
    max-width: none !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .eyecatcher,
  .xolslider,
  .xolslider_image,
  .xolslider_output {
    width: 100% !important;
  }

  .xolslider_image img {
    width: 100% !important;
    height: auto !important;
  }

  .xolslider .xolslider_output .xolslider_caption {
    margin: 1em !important;
    padding: 1em !important;
  }

  .xolslider .xolslider_output .xolslider_caption h1,
  .xolslider .xolslider_output .xolslider_caption h2 {
    font-size: 22px !important;
    line-height: 1.2;
  }

  .post {
    max-width: none !important;
    width: auto !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  .post h1,
  .post h2 {
    overflow-wrap: anywhere;
  }

  .post p,
  .post li,
  .post table {
    font-size: 16px !important;
    line-height: 1.6 !important;
  }

  .featured_image,
  .featured_image.alt {
    width: 100% !important;
    max-width: 100% !important;
  }

  .featured_image .featured_image_caption {
    padding: 1em !important;
  }

  .alignleft,
  .alignright,
  div.alignleft,
  div.alignright,
  a img.alignleft,
  a img.alignright {
    float: none !important;
    display: block;
    max-width: 100% !important;
    margin: 0 auto 1em !important;
  }

  .navigation .prev,
  .navigation .next,
  .pull-left,
  .pull-right {
    float: none !important;
    width: 100% !important;
    max-width: none !important;
    text-align: left !important;
    margin-bottom: .75em;
  }

  table {
    display: block;
    width: 100% !important;
    overflow-x: auto;
  }
}
