/* Human-centered sections: inherit the site's Figtree and turquoise identity. */
.people-section {
  --people-accent: #36ecde;
  --people-text: #f6f8f7;
  --people-muted: #acb8b5;
  --people-surface: #091715;
  --people-line: #263a35;
  box-sizing: border-box;
  flex: none;
  width: 100%;
  padding: 100px 40px;
  color: var(--people-text);
  background: #000;
  font-family: Figtree, sans-serif;
  scroll-margin-top: 64px;
}
.people-section *, .people-section *::before, .people-section *::after { box-sizing: border-box; }
.people-section p, .people-section h2, .people-section h3, .people-section figure { margin: 0; }
.people-section picture { display: block; }
.people-inner { width: min(1120px, 100%); margin-inline: auto; }
.people-growth-grid { display: grid; grid-template-columns: 1.05fr 1fr; gap: 76px; align-items: center; }
.people-eyebrow {
  display: flex;
  align-items: center;
  gap: 10px;
  color: var(--people-accent);
  font-family: "Fragment Mono", monospace;
  font-size: 11px;
  line-height: 1.6;
  letter-spacing: .065em;
  text-transform: uppercase;
}
.people-eyebrow::before { content: ""; width: 6px; height: 6px; background: currentColor; border-radius: 50%; flex: none; }
.people-section h2 { margin-top: 22px; font-size: clamp(34px, 3.6vw, 49px); font-weight: 500; line-height: 1.08; letter-spacing: -.035em; text-wrap: balance; }
.people-section h2 em { color: var(--people-accent); font-style: normal; }
.people-description { margin-top: 24px !important; font-size: 17px; line-height: 1.7; color: var(--people-muted); }
.people-growth-photo { position: relative; padding-bottom: 36px; }
.people-growth-photo img { display: block; width: 100%; aspect-ratio: 1 / 1.03; height: auto; object-fit: cover; object-position: 48% center; border-radius: 14px; }
.people-growth-photo figcaption { position: relative; margin: -67px 24px 0; padding: 24px 26px; border: 1px solid var(--people-line); border-left: 3px solid var(--people-accent); border-radius: 8px; background: var(--people-surface); box-shadow: 0 16px 36px #0003; }
.people-growth-photo figcaption span { display: block; margin-bottom: 8px; font-size: 11px; letter-spacing: .09em; text-transform: uppercase; color: var(--people-accent); }
.people-growth-photo figcaption strong { display: block; max-width: 290px; font-size: 23px; font-weight: 500; line-height: 1.25; letter-spacing: -.02em; }
.people-learning-list { list-style: none; padding: 0; margin: 30px 0 0; display: grid; gap: 22px; }
.people-learning-list li { display: flex; gap: 15px; align-items: flex-start; }
.people-learning-list svg { width: 22px; height: 22px; margin-top: 2px; flex: none; color: var(--people-accent); }
.people-learning-list h3 { margin-bottom: 5px; font-size: 17px; line-height: 1.4; font-weight: 600; }
.people-learning-list p { font-size: 15px; line-height: 1.6; color: var(--people-muted); }
.people-connection { padding-block: 72px 112px; }
.people-connection-panel { display: grid; grid-template-columns: 1fr 1.1fr; overflow: hidden; background: var(--people-surface); border: 1px solid var(--people-line); border-radius: 16px; }
.people-connection-copy { align-self: center; padding: 48px; }
.people-connection h2 { font-size: clamp(34px, 3.4vw, 47px); }
.people-connection-photo { position: relative; min-width: 0; min-height: 510px; }
.people-connection-photo img { position: absolute; inset: 0; width: 100%; height: 100%; display: block; object-fit: cover; object-position: 65% center; }
.people-connection-photo figcaption { position: absolute; inset: auto 0 0; padding: 58px 30px 28px; background: linear-gradient(transparent, #000b); color: #fff; font-size: 15px; line-height: 1.5; }
.people-link { display: inline-flex; align-items: center; gap: 14px; min-height: 44px; margin-top: 26px; color: var(--people-text); font-size: 15px; font-weight: 500; text-decoration: none; border-bottom: 1px solid #54706a; transition: color .18s, border-color .18s; }
.people-link svg { width: 19px; height: 19px; color: var(--people-accent); transition: transform .18s; }
.people-link:hover { color: var(--people-accent); border-color: var(--people-accent); }
.people-link:hover svg { transform: translateX(4px); }
.people-link:focus-visible { outline: 2px solid var(--people-accent); outline-offset: 6px; border-radius: 2px; }
.people-principles { display: grid; grid-template-columns: repeat(3, 1fr); gap: 36px; margin-top: 32px; }
.people-principles div { padding-top: 20px; border-top: 1px solid var(--people-line); }
.people-principles h3 { margin-bottom: 9px; font-size: 18px; font-weight: 500; line-height: 1.3; }
.people-principles p { font-size: 15px; color: var(--people-muted); line-height: 1.6; }
@media (min-width: 810px) and (max-width: 1100px) {
  .people-growth-grid { gap: 40px; }
  .people-connection-copy { padding: 32px; }
  .people-growth-photo figcaption { margin-inline: 16px; padding: 22px; }
}
@media (max-width: 809px) {
  .people-section { padding: 64px 20px; scroll-margin-top: 56px; }
  .people-growth-grid { grid-template-columns: 1fr; gap: 32px; }
  .people-growth-copy { order: 0; }
  .people-section h2 { font-size: clamp(34px, 8.7vw, 44px); max-width: 560px; margin-top: 18px; }
  .people-description { margin-top: 20px !important; font-size: 16px; }
  .people-growth-photo { padding-bottom: 0; }
  .people-growth-photo img { aspect-ratio: auto; height: auto; object-position: center; }
  .people-growth-photo figcaption { margin: -36px 16px 0; padding: 20px; }
  .people-growth-photo figcaption strong { max-width: none; font-size: 22px; }
  .people-connection-panel { grid-template-columns: 1fr; border-radius: 12px; }
  .people-connection-copy { padding: 30px 24px 34px; }
  .people-connection-photo { order: -1; min-height: 0; aspect-ratio: auto; }
  .people-connection-photo img { position: static; height: auto; aspect-ratio: 4 / 3; object-position: 70% center; }
  .people-connection-photo figcaption { padding: 48px 24px 20px; font-size: 14px; }
  .people-principles { grid-template-columns: 1fr; gap: 22px; margin-top: 28px; }
  .people-principles div { padding-top: 18px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .people-link, .people-link svg { transition: none; }
}
