/* Host-page layout only. Cards, data, and swipe behavior use the homepage assets. */
body.modal-open { overflow: hidden; }
#people, #story-dialog {
  --paper: #f3f0e8;
  --ink: #292d24;
  --soft: #666b5e;
  --line: #d3d4c8;
  --olive: #525e45;
  --serif: Hahmlet, KnockSans, Georgia, serif;
  --sans: KnockSans, 'Pretendard', 'Malgun Gothic', sans-serif;
}
#people { padding: 77px 5.2% 0; max-width: 1720px; margin: auto; }
#people .section-top { display: flex; align-items: center; justify-content: space-between; color: var(--olive); padding-bottom: 28px; border-bottom: 1px solid var(--line); }
#people .section-top .eyebrow { margin: 0; }
#people .section-number { font-size: 10px; letter-spacing: .5px; }
#people .people-heading { display: grid; grid-template-columns: 1.25fr 1fr; gap: 50px; align-items: end; }
#people h2 { font: 400 clamp(34px,3.7vw,55px)/1.4 var(--serif); letter-spacing: -.065em; }
#people.people .people-heading h2 { font-size: clamp(38px,3.5vw,52px); line-height: 1.55; letter-spacing: -.055em; }
#people .carousel-top { display: flex; align-items: center; }
#people .carousel-controls { display: flex; align-items: center; }
#people .carousel-controls button { border: 1px solid #a9b19c; background: transparent; font-size: 17px; }
#people .carousel-controls button:disabled { opacity: .28; cursor: default; }
#people .carousel-controls button:not(:disabled):hover { background: #dee2d3; }
#people .carousel-controls > span { text-align: center; font: 11px/1 var(--sans); color: var(--soft); font-variant-numeric: tabular-nums; }
#story-dialog { padding: 0; border: 0; background: var(--paper); color: var(--ink); max-height: 88svh; max-width: 700px; width: calc(100% - 40px); overscroll-behavior: contain; }
#story-dialog::backdrop { background: #141b15b8; backdrop-filter: blur(5px); }
#story-dialog .dialog-shell { padding: 35px 45px 38px; }
#story-dialog .dialog-top { display: flex; align-items: center; justify-content: space-between; border-bottom: 1px solid var(--line); padding: 0 0 20px; margin: 0 0 28px; }
#story-dialog .dialog-close { font: 32px/1 var(--sans); width: 44px; height: 44px; background: transparent; border: 0; }
#story-dialog .dialog-cohort { font-size: 12px; color: var(--olive); margin-bottom: 5px; }
#story-dialog h2 { font: 400 38px/1.4 var(--serif); letter-spacing: -.065em; }
#story-dialog .dialog-content { font-size: 15px; line-height: 2.15; color: #505847; letter-spacing: -.02em; margin-top: 30px; }
#story-dialog .dialog-content p + p { margin-top: 22px; }
#story-dialog .dialog-content h3 { font: 600 13px var(--sans); color: #293024; margin-top: 36px; margin-bottom: 12px; }
@media (max-width: 1000px) {
  #people { padding-inline: 5%; }
  #people .people-heading { gap: 35px; }
}
@media (max-width: 700px) {
  #people .people-heading { display: block; }
  #people .section-top { padding-bottom: 21px; }
  #people .section-top .eyebrow { font-size: 8px; letter-spacing: 1.6px; }
  #people .section-number { font-size: 9px; }
  #people.people .people-heading h2 { font-size: clamp(30px,8.2vw,32px); line-height: 1.58; }
  #story-dialog .dialog-shell { padding: 20px 25px 32px; }
  #story-dialog .dialog-top { padding-bottom: 14px; margin-bottom: 22px; }
  #story-dialog h2 { font-size: 32px; }
  #story-dialog .dialog-content { font-size: 14px; line-height: 2.1; margin-top: 24px; }
}
