.profile-page-inner { width: 100%; }
.profile-welcome {
  max-width: 820px;
  margin: 26px 0 0;
  color: #53645d;
  font-size: clamp(17px, 1.55vw, 20px);
  line-height: 1.85;
  word-break: keep-all;
}
.profile-story-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
  margin-top: 48px;
}
.profile-story {
  min-height: 190px;
  padding: 30px 26px;
  background: #eef5f0;
  border-radius: 22px;
}
.profile-story:nth-child(2) { background: #f6f2e8; }
.profile-story:nth-child(3) { background: #edf2f4; }
.profile-story span,
.profile-story strong,
.profile-story p { display: block; }
.profile-story span {
  color: #66776f;
  font-size: 13px;
  font-weight: 800;
}
.profile-story strong {
  margin-top: 28px;
  color: #244a3d;
  font-size: clamp(21px, 2vw, 27px);
  line-height: 1.35;
  word-break: keep-all;
}
.profile-story p {
  margin: 9px 0 0;
  color: #66736e;
  font-size: 14px;
}
.profile-basic {
  margin-top: 52px;
  padding-top: 34px;
  border-top: 1px solid #dce4df;
}
.profile-basic h2 {
  margin: 0 0 14px;
  color: #29453b;
  font-size: 18px;
}
.profile-basic dl { margin: 0; }
.profile-basic dl > div {
  display: grid;
  grid-template-columns: 110px minmax(0, 1fr);
  gap: 20px;
  padding: 15px 0;
  border-bottom: 1px solid #e5ebe7;
}
.profile-basic dt {
  color: #718079;
  font-size: 14px;
  font-weight: 700;
}
.profile-basic dd {
  margin: 0;
  color: #344b42;
  font-size: 15px;
  font-weight: 700;
  word-break: keep-all;
}
@media(max-width:760px) {
  .profile-welcome br { display: none; }
  .profile-story-grid { grid-template-columns: 1fr; margin-top: 36px; }
  .profile-story { min-height: auto; }
  .profile-basic dl > div { grid-template-columns: 82px minmax(0, 1fr); gap: 12px; }
}

/* Organization chart: audit is shown separately from the board. */
.profile-organization { margin-top: 52px; padding-top: 34px; border-top: 1px solid #dce4df; }
.profile-organization h2 { margin: 0 0 26px; color: #29453b; font-size: 24px; }
.organization-chart { display: grid; grid-template-columns: minmax(0, 2fr) minmax(0, 1fr); gap: 28px; padding: 36px 28px; background: #fff; border: 1px solid #e5ebe7; border-radius: 24px; }
.organization-board { min-width: 0; }
.organization-person { overflow: hidden; text-align: center; border: 1px solid #dce4df; border-radius: 16px; background: #f7faf8; }
.organization-role { display: block; padding: 28px 12px; color: #27634f; background: #eef5f0; font-size: 20px; font-weight: 800; }
.organization-chair { width: calc((100% - 24px) / 2); margin: 0 auto; position: relative; }
.organization-chair .organization-role { color: #fff; background: #27634f; }
.organization-directors { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; position: relative; margin-top: 48px; }
.organization-directors::before { content: ""; position: absolute; width: calc(50% + 12px); left: calc(25% - 6px); top: -24px; height: 24px; border: solid #a6beb1; border-width: 2px 2px 0; }
.organization-directors::after { content: ""; position: absolute; left: calc(50% - 1px); top: -48px; height: 24px; border-left: 2px solid #a6beb1; }
.organization-audit { display: flex; align-items: center; padding-left: 28px; border-left: 1px dashed #d3ddd7; }
.organization-audit .organization-person { width: 100%; background: #faf8f2; border-color: #e7e0d2; }
.organization-audit .organization-role { background: #f6f2e8; color: #6b604a; }
@media(max-width:560px) {
  .organization-chart { grid-template-columns: 1fr; padding: 26px 18px; gap: 28px; }
  .organization-directors { gap: 16px; }
  .organization-directors::before { width: calc(50% + 8px); left: calc(25% - 4px); }
  .organization-chair { width: calc((100% - 16px) / 2); }
  .organization-audit { padding: 24px 0 0; border-left: 0; border-top: 1px dashed #d3ddd7; justify-content: center; }
  .organization-audit .organization-person { width: calc((100% - 16px) / 2); }
}
