/* Project B Japanese company and consulting pages. Loaded after original styles. */
body { font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, sans-serif; }
.brand, .brand-name, .brand-descriptor, .consulting-logo, .flux7-footer-copyright,
.profile-identity-logo, .consulting-package h3 { font-family: "Inter Tight", Arial, sans-serif; }
.profile-hero h1 { font-size: clamp(31px, 3.65vw, 53px); line-height: 1.38; letter-spacing: -.035em; }
.profile-history h2, .profile-details h2 { font-size: clamp(28px, 3.35vw, 47px); line-height: 1.4; letter-spacing: -.03em; }
.profile-contact h2 { font-size: clamp(27px, 3vw, 43px); line-height: 1.4; }
.profile-lead, .profile-history p, .profile-data dd { font-size: clamp(15px, 1.15vw, 17px); line-height: 1.9; overflow-wrap: normal; }
.profile-data dt { line-height: 1.65; }
.consulting-page h1 { font-size: clamp(33px, 4.1vw, 59px); line-height: 1.38; letter-spacing: -.04em; }
.consulting-section-head h2, .consulting-outro h2 { font-size: clamp(28px, 3.5vw, 49px); line-height: 1.4; letter-spacing: -.035em; }
.consulting-path h3 { font-size: clamp(29px, 3.2vw, 45px); line-height: 1.4; }
.consulting-pillar-grid h3 { font-size: clamp(20px, 2vw, 27px); line-height: 1.5; overflow-wrap: normal; }
.consulting-package h3 { font-size: clamp(25px, 2.5vw, 34px); }
.consulting-page p, .consulting-detail p, .consulting-package p, .consulting-pillar-grid p { line-height: 1.9; overflow-wrap: normal; }
.consulting-detail small { line-height: 1.8; }
.consulting-accordion summary strong { font-size: clamp(18px, 2vw, 25px); line-height: 1.5; }
.consulting-nav, .site-nav { font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, sans-serif; }
@media(max-width: 760px) {
 .profile-hero h1, .consulting-page h1 { font-size: clamp(27px, 7vw, 39px); }
 .profile-history h2, .profile-details h2, .consulting-section-head h2, .consulting-outro h2 { font-size: clamp(25px, 6vw, 36px); }
 .consulting-path h3 { font-size: clamp(26px, 6vw, 36px); }
 .consulting-page p, .profile-lead, .profile-history p { font-size: 15px; }
}

/* Japanese desktop line balance and consistent consulting card baselines. */
.profile-hero-grid > div, .profile-history-grid > *, .profile-data dd { min-width: 0; }
.profile-lead, .profile-history-grid p, .profile-data dd { line-break: strict; overflow-wrap: normal; word-break: normal; }
.profile-data dd { font-size: clamp(14px, 1.05vw, 16px); line-height: 1.75; }
.consulting-hero-grid > div { min-width: 0; }
.consulting-pillar-grid article { min-width: 0; }
.consulting-pillar-grid h3 { font-size: clamp(19px, 1.65vw, 22px); line-height: 1.5; letter-spacing: -.035em; min-height: 3em; margin: 30px 0 18px; line-break: strict; word-break: normal; overflow-wrap: normal; }
.consulting-pillar-grid p { margin: 0; line-break: strict; word-break: normal; overflow-wrap: normal; }
@media (min-width: 1050px) {
 .consulting-hero-grid { grid-template-columns: minmax(0, 1fr); gap: 25px; padding-top: 75px; padding-bottom: 65px; }
 .consulting-page h1 { font-size: clamp(38px, 3.7vw, 49px); white-space: nowrap; }
 .consulting-hero-aside { max-width: 680px; }
 .consulting-section-head h2 { max-width: none; }
 #pathways-title { font-size: clamp(34px, 3.05vw, 41px); white-space: nowrap; }
}
@media (min-width: 761px) and (max-width: 1049px) {
 .consulting-page h1 { font-size: clamp(32px, 3.8vw, 42px); }
 .consulting-hero-grid { grid-template-columns: 1fr; gap: 25px; }
 .consulting-section-head h2 { max-width: none; }
 #pathways-title { font-size: clamp(30px, 3.6vw, 37px); }
}
@media (max-width: 760px) {
 .consulting-page h1, #pathways-title { white-space: normal; }
 .consulting-pillar-grid h3 { min-height: 0; margin-bottom: 18px; }
 .consulting-pillar-grid p { margin-top: 0; }
 .profile-data dd { font-size: 15px; }
}

/* Final Japanese-only alignment adjustments: Company contact and Consulting outro. */
@media (min-width: 761px) {
  .profile-contact-inner > .button {
    align-self: flex-end;
    margin-bottom: 3px;
  }
  .consulting-outro-grid {
    align-items: start;
    grid-template-columns: minmax(0, 1.35fr) minmax(0, .65fr);
    gap: clamp(45px, 5vw, 80px);
  }
  .consulting-outro-grid > div { min-width: 0; }
  .consulting-outro-grid > div:last-child { padding-top: 52px; }
  .consulting-outro h2 {
    font-size: clamp(48px, 4.1vw, 64px);
    line-height: 1.27;
    letter-spacing: -.045em;
  }
  .consulting-outro p { font-size: clamp(16px, 1.25vw, 18px); line-height: 1.85; margin-top: 0; }
}
@media (max-width: 760px) {
  .profile-contact-inner > .button { align-self: flex-start; }
  .consulting-outro-grid { align-items: start; }
  .consulting-outro-grid > div:last-child { padding-top: 0; }
}
