/* The two independent practices behind Architecture Privée. */
.ap-partners { background: #e8e2d8 !important; }
.ap-partners__heading { max-width: 900px; margin-bottom: 64px; }
.ap-partners__heading h2 { margin: 20px 0 28px; }
.ap-partners__heading > p:last-child { max-width: 660px; color: #5f5d53; line-height: 1.85; }
.ap-partners__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(35px, 7vw, 110px); }
.ap-partner { min-width: 0; display: flex; flex-direction: column; align-items: flex-start; border-top: 1px solid #a0866180; padding-top: 28px; }
.ap-partner__number { color: #6e5538; font-size: 11px; letter-spacing: .15em; text-transform: uppercase; }
.ap-partner h3 { min-height: 2.2em; margin: 30px 0 20px; font-size: clamp(30px, 3.3vw, 52px); line-height: 1.1; overflow-wrap: break-word; }
.ap-partner__person { min-height: 3.2em; font-size: 12px; line-height: 1.6; color: #625e51; letter-spacing: .04em; }
.ap-partner > p:not(.ap-partner__number):not(.ap-partner__person) { max-width: 540px; color: #55554c; font-size: 16px; line-height: 1.85; }
.ap-partner ul { margin: 20px 0 34px; padding: 0; list-style: none; width: 100%; }
.ap-partner li { border-bottom: 1px solid #a0866138; padding: 13px 0; color: #55554c; font-size: 13px; line-height: 1.6; }
.ap-partner .text-link { margin-top: auto; line-height: 1.8; }
.ap-partners__note { border-top: 1px solid #a086614d; margin: 55px 0 0; padding-top: 24px; max-width: 900px; color: #666255; font-size: 12px; line-height: 1.8; }
.ap-collaboration__lead { max-width: 690px; margin-top: 32px; color: #d1cbbf; line-height: 1.85; }
.ap-collaboration .team__roles { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.ap-collaboration .role { max-width: none; }
.ap-contact-person { display: grid; grid-template-columns: minmax(0, .7fr) minmax(0, 1.3fr); align-items: center; gap: clamp(36px, 7vw, 100px); }
.ap-contact-person figure { max-width: 390px; margin: 0; }
.ap-contact-person img { display: block; width: 100%; height: auto; filter: grayscale(1); }
.ap-contact-person h2 { margin: 18px 0 24px; }
.ap-contact-person p:not(.eyebrow) { color: #5f5d53; line-height: 1.85; }
.ap-contact-person .ap-partner__person { min-height: 0; }
.ap-contact-person .text-link { display: inline-block; margin-top: 20px; }
#dominique-perrin, #batimethode, #remy-jacquier { scroll-margin-top: 120px; }
@media (max-width: 760px) {
  .ap-partners__heading { margin-bottom: 40px; }
  .ap-partners__grid, .ap-contact-person { grid-template-columns: 1fr; gap: 50px; }
  .ap-partner h3, .ap-partner__person { min-height: 0; }
  .ap-partner h3 { font-size: clamp(30px, 7.8vw, 46px); margin-top: 22px; }
  .ap-partners__note { margin-top: 40px; }
  .ap-collaboration .team__roles { grid-template-columns: 1fr; }
  .ap-collaboration .role { min-height: 0; padding: 28px 0; border-right: 0; border-bottom: 1px solid #ffffff30; }
  .ap-collaboration .role h3 { margin: 25px 0 18px; }
  .ap-contact-person figure { width: 68%; max-width: 320px; }
}
