.about-page { padding: 90px 5vw 0; }
.about-hero { max-width: 1440px; margin: 0 auto; padding: 40px 0 60px; display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(280px, .9fr); gap: clamp(40px, 8vw, 140px); align-items: start; }
.about-hero > div:first-child { text-align: center; }
.about-hero h1 { max-width: 850px; margin: 22px 0 0; font-family: var(--serif); font-size: clamp(64px, 9vw, 150px); font-weight: 400; line-height: .92; letter-spacing: -.07em; }
.about-hero h1 em { color: var(--plum); }
.about-hero-mission { text-align: left; }
.about-hero-mission h2 { margin: 16px 0 30px; font-size: clamp(34px, 4vw, 64px); line-height: 1; letter-spacing: -.06em; }
.about-hero-mission .about-copy { max-width: 560px; margin: 0; font-size: clamp(17px, 1.35vw, 22px); }
.about-section { max-width: 1440px; margin: 0 auto; padding: 65px 0; border-top: 1px solid var(--line); }
.about-section#founding-team { padding-bottom: clamp(56px, 7vw, 110px); }
.about-section#mission { text-align: center; }
.about-section-heading { max-width: 620px; margin-bottom: 58px; }
.about-section#mission .about-section-heading { margin-left: auto; margin-right: auto; }
.about-section h2 { margin: 16px 0 0; font-size: clamp(44px, 5.5vw, 88px); line-height: 1; letter-spacing: -.06em; }
.about-copy { max-width: 850px; margin-left: auto; font-size: clamp(20px, 2vw, 30px); line-height: 1.35; }
.about-section#mission .about-copy { margin-left: auto; margin-right: auto; }
.about-copy p + p { margin-top: 26px; }
.team-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.team-card { min-height: 300px; padding: 28px; border: 1px solid var(--line); border-radius: 10px; background: #fafafa; display: flex; flex-direction: column; justify-content: flex-start; }
.team-card:nth-child(1) { background: #FBE4FA; }
.team-card:nth-child(2) { background: #FBE0FA; }
.team-card:nth-child(3) { background: #E8D5F8; }
.team-card:nth-child(4) { background: #F3DDF8; }
.team-card:nth-child(5) { background: #DCE3FC; }
.team-card:nth-child(6) { background: #DDF6FD; }
.team-card-photo { width: 100%; aspect-ratio: 3 / 4; object-fit: cover; object-position: center; border-radius: 6px; background: var(--paper); border: 1px dashed var(--line); }
.team-card > div:last-child { padding-top: 34px; }
.team-card h3 { width: max-content; margin: 14px 0 8px; position: relative; left: 50%; transform: translateX(-50%); font-size: 25px; letter-spacing: -.08em; text-align: center; white-space: nowrap; }
.team-card p { margin: 0; color: #555; line-height: 1.45; text-align: center; }
.team-tags { display: flex; flex-wrap: wrap; align-content: flex-start; justify-content: center; gap: 6px; min-height: 60px; margin: 0 auto; max-width: 100%; }
.team-tags span { display: inline-flex; align-items: center; min-height: 24px; padding: 3px 9px; border-radius: 999px; background: var(--lavender); color: var(--ink); font-size: 10px; line-height: 1.1; letter-spacing: .01em; white-space: nowrap; }
.team-tags span:nth-child(2) { background: var(--cyan); }
.team-tags span:nth-child(3) { background: var(--plum); }
.team-tags span:nth-child(4) { background: var(--blue); }
.team-tags span:nth-child(5) { background: var(--pink); }
.team-tags span:nth-child(6) { background: var(--lavender); }
.about-footer { margin-top: 40px; padding: 34px 0; border-top: 1px solid var(--line); display: flex; justify-content: space-between; gap: 20px; font-size: 13px; color: #666; background: var(--paper); }
@media(max-width:1200px) {
  .team-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media(max-width:720px) {
  .about-page { padding: 80px 20px 0; }
  .about-hero { padding: 40px 0 50px; display: block; }
  .about-hero h1 { font-size: clamp(58px, 17vw, 100px); }
  .about-hero-mission { margin-top: 52px; }
  .about-hero-mission h2 { font-size: clamp(42px, 11vw, 68px); }
  .about-hero-mission .about-copy { font-size: 21px; }
  .about-section { padding: 55px 0; }
  .about-copy { margin: 0; font-size: 21px; }
  .about-section#mission .about-copy { margin-left: auto; margin-right: auto; }
  .team-grid { grid-template-columns: 1fr; }
  .team-card { min-height: 230px; }
  .about-footer { display: block; }
  .about-footer > * + * { display: block; margin-top: 14px; }
}
