/*
 * Readability tuning
 * Scope: content + sidebar typography and spacing
 */

/* Desktop readability tuning (content + sidebar) */
@media screen and (min-width: 1025px) {
  .container,
  .site-body-container {
    max-width: min(1240px, calc(100% - 72px)) !important;
  }

  .main-section--col--two {
    width: 70% !important;
    padding-right: 2rem !important;
  }

  .sub-section--col--two {
    width: 30% !important;
    padding-left: 1rem !important;
  }

  .page-section p {
    font-size: 1.12rem !important;
    line-height: 1.78 !important;
    margin-bottom: 1.45rem !important;
    letter-spacing: 0.01em;
  }

  .entry-content li {
    font-size: 1.05rem !important;
    line-height: 1.72 !important;
  }

  .sub-section h3 {
    font-size: 1.08rem !important;
    line-height: 1.4 !important;
    margin-bottom: 0.85rem;
  }

  .ranking-title {
    font-size: 0.93rem !important;
    line-height: 1.5 !important;
  }

  .ranking-title p {
    font-size: 0.84rem !important;
    line-height: 1.45 !important;
  }
}

/* Mobile/Tablet readability tuning (content + sidebar) */
@media screen and (max-width: 1024px) {
  .container,
  .site-body-container {
    max-width: calc(100% - 40px) !important;
  }

  .main-section--col--two,
  .sub-section--col--two {
    width: 100% !important;
    padding: 0 !important;
  }

  .main-section {
    margin-bottom: 2rem;
  }

  .sub-section {
    margin-top: 1.75rem;
    padding-top: 1.25rem;
    border-top: 1px solid #e6e6e6;
  }

  .page-section p {
    font-size: 1.08rem !important;
    line-height: 1.72 !important;
    margin-bottom: 1.35rem !important;
    letter-spacing: 0.01em;
  }

  .entry-content li {
    font-size: 1.03rem !important;
    line-height: 1.68 !important;
  }

  .sub-section h3 {
    font-size: 1.2rem !important;
    line-height: 1.35 !important;
    margin-bottom: 0.9rem;
  }

  .ranking-title {
    font-size: 0.98rem !important;
    line-height: 1.55 !important;
  }

  .ranking-title p {
    font-size: 0.88rem !important;
    line-height: 1.5 !important;
  }
a.um-user-bookmarks-button.um-user-bookmarks-add-button {
    border: solid 3px #6091d3 !important;
    border-radius: 10px;
    padding: 0.5em 1em;
    color: #6091d3;
    font-weight: bold;
    margin-bottom: 2em;
    display: block;
    box-sizing: content-box;
    width: max-content;
}
}

@media screen and (max-width: 767px) {
  .container,
  .site-body-container {
    max-width: calc(100% - 28px) !important;
  }

  .page-section p {
    font-size: 1.1rem !important;
    line-height: 1.78 !important;
    margin-bottom: 1.4rem !important;
  }

  .entry-content li {
    font-size: 1.05rem !important;
    line-height: 1.75 !important;
  }

  .category-sec li {
    font-size: 0.9rem !important;
    line-height: 1.4 !important;
    margin-left: 0.75rem !important;
    margin-bottom: 0.4rem;
  }

  .sub-section {
    margin-top: 1.5rem;
    padding-top: 1rem;
  }

  .sub-section h3 {
    font-size: 1.12rem !important;
    line-height: 1.35 !important;
  }

  .ranking-item a {
    margin-bottom: 0.9rem;
  }

  .ranking-title {
    font-size: 0.98rem !important;
    line-height: 1.55 !important;
  }

  .ranking-title p {
    font-size: 0.86rem !important;
    line-height: 1.45 !important;
  }

  .lastest-list_large a .related-textarea b {
    font-size: 1rem !important;
    line-height: 1.45 !important;
  }

  .related-date {
    font-size: 0.82rem !important;
  }

  .lastest-list_large a .related-textarea .related-excerpt {
    font-size: 0.94rem !important;
    line-height: 1.55 !important;
  }
}
