/* Polar Hub: about page (post 29) module layout. Scoped to .ph-about. */
.ph-about {
  --ph-ink: #183442;
  --ph-muted: #526570;
  --ph-link: #244e63;
  --ph-visited: #555e70;
  --ph-rule: #d6e0e5;
  --ph-ice: #f2f6f8;
  --ph-accent: #1e88c7;
  --ph-dark: #132f3e;
  color: var(--ph-ink);
  text-align: left;
  font-family: "Helvetica Neue", "PingFang SC", "Microsoft YaHei", sans-serif;
  font-size: 16px;
  line-height: 1.8;
}
.ph-about *, .ph-about *::before, .ph-about *::after { box-sizing: border-box; }
.ph-about a { color: var(--ph-link); text-underline-offset: 5px; }
.ph-about a:visited { color: var(--ph-visited); }
.ph-about a:hover { color: var(--ph-ink); }
.ph-about img { display: block; max-width: 100%; }
.ph-about .ph-wrap { width: min(1160px, calc(100% - 64px)); margin: 0 auto; }
.ph-about .ph-section { padding: 64px 0; }
.ph-about h2 { margin: 0; color: var(--ph-ink); font-size: clamp(28px, 2.5vw, 36px); font-weight: 600; line-height: 1.4; text-align: left; text-shadow: none; text-wrap: balance; }
.ph-about h3 { color: var(--ph-ink); font-weight: 600; line-height: 1.5; text-align: left; text-shadow: none; }
.ph-about .ph-section-head { margin-bottom: 32px; }
.ph-about .ph-section-intro { margin: 12px 0 0; color: var(--ph-muted); font-size: 15px; line-height: 1.8; }
.ph-about section[id] { scroll-margin-top: 96px; }

/* module 1: intro facts + columns */
.ph-about .ph-about-lead { max-width: 860px; margin: 0 0 32px; font-size: clamp(17px, 1.4vw, 19px); line-height: 1.9; color: var(--ph-ink); }
.ph-about-facts { display: grid; grid-template-columns: repeat(4, 1fr); gap: 24px; margin: 0 0 40px; padding: 24px 0; border-top: 1px solid var(--ph-rule); border-bottom: 1px solid var(--ph-rule); }
.ph-about-facts > div { border-right: 1px solid var(--ph-rule); padding-right: 16px; }
.ph-about-facts > div:last-child { border: 0; }
.ph-about-facts dt { margin-bottom: 4px; color: var(--ph-muted); font-size: 12px; }
.ph-about-facts dd { margin: 0; color: var(--ph-ink); font-size: 14px; line-height: 1.7; }
.ph-about-cols { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 40px; }
.ph-about-cols > div { border-top: 1px solid var(--ph-rule); padding-top: 20px; }
.ph-about-cols h3 { margin: 0 0 12px; font-size: 21px; }
.ph-about-cols p { margin: 0; color: var(--ph-muted); font-size: 16px; line-height: 1.9; }

/* module 2: mission */
.ph-about-mission { background: var(--ph-ice); }
.ph-about-mission-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 40px; }
.ph-about-mission-card { border-top: 1px solid #bdcdd5; padding-top: 22px; }
.ph-about-mission-card h3 { margin: 0 0 10px; font-size: 22px; }
.ph-about-mission-card p { margin: 0; color: var(--ph-muted); font-size: 16px; line-height: 1.9; }
.ph-about-paths { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin-top: 36px; }
.ph-about .ph-about-paths-label { color: var(--ph-muted); font-size: 13px; }
.ph-about .ph-about-paths a { display: inline-flex; align-items: center; min-height: 40px; padding: 4px 18px; border: 1px solid var(--ph-rule); border-radius: 999px; background: #fff; color: var(--ph-link); font-size: 14px; text-decoration: none; }
.ph-about .ph-about-paths a:hover { border-color: var(--ph-ink); color: var(--ph-ink); }

/* module 3: governance */
.ph-about .ph-about-sub { margin: 48px 0 20px; padding-left: 12px; border-left: 4px solid var(--ph-accent); font-size: 22px; }
.ph-about .ph-about-sub:first-of-type { margin-top: 8px; }
.ph-about .ph-about-sub-note { display: inline-block; margin-left: 10px; padding-left: 10px; border-left: 1px solid var(--ph-rule); color: var(--ph-muted); font-size: 12px; font-weight: 400; letter-spacing: 0; }
.ph-about .ph-group-title { margin: 28px 0 14px; color: var(--ph-muted); font-size: 15px; font-weight: 600; letter-spacing: 2px; }
.ph-grid { display: grid; gap: 16px; }
.ph-grid-3 { grid-template-columns: repeat(3, 1fr); }
.ph-member { display: flex; flex-direction: column; padding: 18px 20px; border: 1px solid var(--ph-rule); border-radius: 10px; background: #fff; }
.ph-member b { margin-bottom: 2px; color: var(--ph-ink); font-size: 16px; font-weight: 700; }
.ph-member i { margin-bottom: 6px; color: var(--ph-accent); font-size: 13px; font-style: normal; }
.ph-member span { color: var(--ph-muted); font-size: 14px; line-height: 1.7; }

/* ambassadors: eyebrow role + name + body */
.ph-ambassador i { display: block; margin-bottom: 8px; color: var(--ph-accent); font-size: 12px; font-weight: 500; letter-spacing: 1px; }
.ph-ambassador b { margin-bottom: 10px; font-size: 19px; }
.ph-ambassador span { font-size: 14px; line-height: 1.8; }
.ph-ambassador span a { display: inline-block; margin-top: 8px; }

/* founders: standalone feature cards */
.ph-founder-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 40px; }
.ph-founder-card { display: grid; grid-template-columns: 180px minmax(0, 1fr); gap: 24px; padding: 24px; border: 1px solid var(--ph-rule); border-radius: 12px; background: #fff; box-shadow: 0 2px 12px rgba(22, 66, 91, .06); }
.ph-founder-photo img { width: 180px; height: 180px; object-fit: cover; object-position: center top; border-radius: 10px; }
.ph-founder-copy h4 { margin: 0; color: var(--ph-ink); font-size: 22px; font-weight: 700; line-height: 1.4; }
.ph-founder-copy .ph-founder-role { margin: 2px 0 12px; color: var(--ph-accent); font-size: 14px; }
.ph-founder-copy p:not(.ph-founder-role) { margin: 0; color: var(--ph-muted); font-size: 14px; line-height: 1.85; }

/* module 5: timeline + honors */
.ph-about-history { background: var(--ph-ice); }
.ph-timeline { position: relative; margin: 0; padding: 0 0 0 28px; list-style: none; }
.ph-timeline::before { content: ""; position: absolute; top: 6px; bottom: 6px; left: 6px; width: 2px; background: #bdcdd5; }
.ph-timeline li { position: relative; display: grid; grid-template-columns: 140px minmax(0, 1fr); gap: 24px; padding: 0 0 28px; }
.ph-timeline li:last-child { padding-bottom: 0; }
.ph-timeline li::before { content: ""; position: absolute; top: 9px; left: -28px; width: 10px; height: 10px; margin-left: 2px; border: 2px solid var(--ph-accent); border-radius: 50%; background: #fff; }
.ph-about .ph-timeline time { color: var(--ph-accent); font-size: 14px; font-weight: 600; font-variant-numeric: tabular-nums; }
.ph-about .ph-timeline h3 { margin: 0 0 6px; font-size: 17px; }
.ph-about .ph-timeline p { margin: 0; color: var(--ph-muted); font-size: 15px; line-height: 1.85; }
.ph-about-honors { margin-top: 44px; padding-top: 8px; }
.ph-honor-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px 32px; margin: 0; padding: 0; list-style: none; }
.ph-honor-list li { position: relative; padding-left: 20px; color: var(--ph-muted); font-size: 15px; line-height: 1.8; }
.ph-honor-list li::before { content: ""; position: absolute; top: .7em; left: 2px; width: 8px; height: 8px; border-radius: 50%; background: var(--ph-accent); }

/* module 6: contact */
.ph-about-contact-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 40px; }
.ph-about-contact-grid h3 { margin: 0 0 8px; font-size: 16px; }
.ph-about-contact-grid p { margin: 0; color: var(--ph-muted); font-size: 15px; line-height: 1.8; }
.ph-about-contact-grid > div { border-top: 1px solid var(--ph-rule); padding-top: 18px; }

/* ambassadors */
.ph-about .ph-about-source { margin: 24px 0 0; padding-top: 16px; border-top: 1px solid var(--ph-rule); color: var(--ph-muted); font-size: 13px; }

@media (max-width: 900px) {
  .ph-about .ph-wrap { width: calc(100% - 40px); }
  .ph-about .ph-section { padding: 48px 0; }
  .ph-about-facts { grid-template-columns: repeat(2, 1fr); }
  .ph-about-facts > div:nth-child(2) { border: 0; }
  .ph-about-cols, .ph-founder-grid, .ph-about-mission-grid, .ph-about-contact-grid, .ph-honor-list { grid-template-columns: 1fr; gap: 24px; }
  .ph-grid-3 { grid-template-columns: repeat(2, 1fr); }
  .ph-founder-card { grid-template-columns: 120px minmax(0, 1fr); gap: 18px; padding: 18px; }
  .ph-founder-photo img { width: 120px; height: 120px; }
  .ph-timeline li { grid-template-columns: 1fr; gap: 4px; }
}
@media (max-width: 600px) {
  .ph-grid-3 { grid-template-columns: 1fr; }
  .ph-founder-card { grid-template-columns: 1fr; }
  .ph-founder-photo img { width: 140px; height: 140px; }
}
.ph-about a:focus-visible { outline: 2px solid #307091; outline-offset: 5px; }
