.team-opening .collection-heading-row { margin-bottom: 38px; }
.team-owner-section { padding: 0 28px 82px; }
.owner-layout { display: grid; grid-template-columns: .92fr 1.08fr; align-items: center; gap: clamp(40px,7vw,98px); padding: 43px 48px; background: var(--paper); border-top: 2px solid var(--gold); }
.owner-portrait { min-width: 0; width: 100%; max-width: 465px; margin: 0; }
.owner-portrait figcaption { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 5px 15px; padding: 15px 0 0; color: #68717a; font-size: .875rem; }
.owner-portrait figcaption span:first-child { color: var(--charcoal); font-weight: 500; }
.owner-copy { min-width: 0; }
.owner-copy .section-kicker { margin-bottom: 19px; }
.owner-copy h2 { margin: 0 0 12px; color: var(--charcoal); font: 500 clamp(3.25rem,6vw,5.65rem)/1.05 var(--serif); letter-spacing: -.045em; }
.owner-copy h2 > span { color: var(--gold-deep); }
.owner-role { margin-bottom: 28px; color: #806032; font-size: .875rem; font-weight: 600; letter-spacing: .09em; text-transform: uppercase; }
.owner-bio { margin-bottom: 26px; color: var(--charcoal); font-size: 1.125rem; line-height: 1.85; }
.owner-priorities { display: flex; flex-wrap: wrap; gap: 9px; margin-bottom: 27px; }
.owner-priorities span { padding: 7px 11px; border: 1px solid #d8cbb7; color: #71604b; font-size: .875rem; line-height: 1.6; }
.owner-invitation { margin-bottom: 28px; color: #626a72; font-size: 1rem; line-height: 1.8; }
.team-people-section { padding-top: 0; padding-bottom: 78px; }
.team-directory-heading { display: grid; grid-template-columns: 1fr 1fr; align-items: end; gap: 65px; margin-bottom: 38px; }
.team-directory-heading .section-title { margin-bottom: 0; }
.team-directory-heading .section-lead { max-width: 470px; margin-bottom: 3px; font-size: 1rem; }
.people-grid { display: flex; flex-wrap: wrap; justify-content: center; gap: 24px; }
.person-profile { width: calc((100% - 48px) / 3); min-width: 0; border: 1px solid var(--line); background: #fff; scroll-margin-top: 120px; }
.person-portrait { margin: 0; overflow: hidden; aspect-ratio: 2 / 3; border-bottom: 1px solid var(--line); background: var(--paper); }
.person-copy { padding: 29px 26px 31px; }
.person-role { min-height: 44px; margin-bottom: 12px; color: #806032; font-size: .875rem; line-height: 1.6; }
.person-copy h3 { margin: 0 0 17px; color: var(--charcoal); font: 500 2.45rem/1.1 var(--serif); letter-spacing: -.025em; }
.person-copy > p:not(.person-role) { margin: 0; color: #626a72; font-size: 1rem; line-height: 1.8; }
.team-appointment { background: var(--charcoal); color: #fff; }
.team-appointment-inner { display: grid; grid-template-columns: 1.15fr .85fr; gap: clamp(35px,7vw,100px); align-items: center; }
.team-appointment .section-title { color: #fff; }
.team-appointment .section-kicker, .team-appointment .accent { color: #edc78e; }
.team-appointment .section-lead { color: #e3e6e8; font-size: 1rem; }
.team-appointment-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 28px; }
.team-appointment .button.outline { border-color: #abb2b9; color: #fff; }
.team-appointment .button.outline:hover { border-color: #edc78e; background: #39424c; }
.team-location-note { padding: 33px 36px; border: 1px solid rgba(255,255,255,.28); }
.team-location-note strong { display: block; margin-bottom: 15px; color: #fff; font: 500 1.65rem/1.35 var(--serif); }
.team-location-note address { margin-bottom: 24px; color: #e3e6e8; font-size: 1rem; font-style: normal; line-height: 1.8; }
.team-location-note a { display: block; color: #edc78e; font-size: 1rem; text-underline-offset: 5px; }
.team-location-note a + a { margin-top: 15px; }
.team-appointment a:focus-visible { outline-color: #edc78e; }
@media (max-width: 1100px) {
  .owner-layout { padding: 33px; gap: 45px; }
  .owner-bio { font-size: 1.0625rem; }
  .person-profile { width: calc((100% - 24px) / 2); }
  .person-role { min-height: 0; }
}
@media (max-width: 760px) {
  .team-owner-section { padding: 0 18px 54px; }
  .owner-layout { grid-template-columns: 1fr; padding: 25px; gap: 34px; }
  .owner-portrait { max-width: 500px; margin: auto; }
  .owner-copy h2 { font-size: clamp(3.25rem,12vw,5rem); }
  .owner-copy .owner-bio { font-size: 1rem; }
  .team-people-section { padding-bottom: 55px; }
  .team-directory-heading { grid-template-columns: 1fr; gap: 21px; margin-bottom: 30px; }
  .people-grid { gap: 19px; }
  .person-profile { width: calc((100% - 19px) / 2); }
  .person-copy { padding: 24px 22px 27px; }
  .team-appointment-inner { grid-template-columns: 1fr; gap: 34px; }
}
@media (max-width: 540px) {
  .owner-layout { padding: 21px; }
  .person-profile { width: 100%; }
  .person-copy h3 { font-size: 2.7rem; }
  .team-location-note { padding: 27px 24px; }
  .team-appointment-actions .button { width: 100%; }
}
