/* Shared rules for every page redesigned on the JPM new-theme layout. */
.investor_intro,
.division_hero_text,
.division_intro p,
.division_text_content,
.about_company_section .about_copy {
  max-width: none;
}

/* Consistent display scale across every redesigned page. Explicit line-height
   is required because Splitting.js wraps each character in its own span. */
.investor_hero .page_title,
.division_hero_title,
.division_text_page .page_title,
.research_development_section .page_title {
  font-size: clamp(48px, 6vw, 86px);
  line-height: 1.08 !important;
  letter-spacing: -0.035em !important;
  overflow-wrap: normal;
  word-break: normal;
}

.investor_intro,
.division_hero_text,
.division_intro p,
.division_text_content p,
.research_development_section .about_subheading {
  font-size: clamp(15px, 1.35vw, 18px);
  line-height: 1.75;
}

.investor_category h2,
.investor_doc_title,
.division_card h3,
.division_studio_copy h2,
.expertise_points li {
  overflow-wrap: break-word;
  word-break: normal;
}

@media (max-width: 991px) {
  .investor_hero .page_title,
  .division_hero_title,
  .division_text_page .page_title,
  .research_development_section .page_title {
    font-size: clamp(40px, 7.5vw, 58px) !important;
    line-height: 1.1 !important;
    letter-spacing: -0.025em !important;
  }

  .investor_doc_grid,
  .expertise_detail_grid {
    grid-template-columns: 1fr;
  }

  .division_grid,
  .division_studio_grid,
  .investor_categories {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 767px) {
  .investor_hero .page_title,
  .division_hero_title,
  .division_text_page .page_title,
  .research_development_section .page_title {
    font-size: clamp(34px, 9vw, 46px) !important;
    line-height: 1.12 !important;
    letter-spacing: -0.02em !important;
    overflow-wrap: break-word;
  }

  .investor_intro,
  .division_hero_text,
  .division_intro p,
  .division_text_content p,
  .research_development_section .about_subheading {
    font-size: 15px !important;
    line-height: 1.7 !important;
  }

  .investor_category h2,
  .division_card h3 {
    font-size: 17px !important;
    line-height: 1.4 !important;
  }

  .division_studio_copy h2 {
    font-size: 21px !important;
    line-height: 1.3 !important;
  }
}

@media (max-width: 575px) {
  .investor_hero {
    padding: 24px 0 38px;
  }

  .investor_hero .page_title,
  .division_hero_title,
  .division_text_page .page_title,
  .research_development_section .page_title {
    font-size: clamp(32px, 9.5vw, 42px) !important;
    line-height: 1.12 !important;
    overflow-wrap: break-word;
  }

  .investor_intro,
  .division_hero_text,
  .division_intro p,
  .division_text_content p {
    font-size: 15px;
    line-height: 1.7;
  }

  .investor_doc {
    align-items: flex-start;
    flex-wrap: wrap;
    padding: 18px;
  }

  .investor_doc_title {
    flex-basis: calc(100% - 65px);
    overflow-wrap: anywhere;
  }

  .investor_doc_actions {
    width: 100%;
    padding-left: 0;
  }

  .investor_doc_btn {
    flex: 1 1 120px;
  }

  .division_grid,
  .division_studio_grid,
  .investor_categories {
    grid-template-columns: 1fr;
  }

  .division_card h3 a {
    gap: 16px;
  }

  .investor_table_wrap {
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }

  .investor_table {
    min-width: 680px;
  }

  .investor_prose {
    max-width: none;
  }

  .investor_prose ul,
  .expertise_points {
    padding-left: 20px;
  }

  .expertise_detail_section,
  .division_products {
    padding-bottom: 75px;
  }
}
