/* Our story page. Figma: Website Concepts > about page (desktop 1440 / mobile 390). */
.pty-about + .pty-footer, .pty-about ~ .pty-footer { margin-top: 0; }

.pty-about__hero { display: grid; gap: 32px; padding: 48px 20px; }
.pty-about__portrait { aspect-ratio: 3 / 4; border-radius: 999px 999px 0 0; overflow: hidden; background: var(--pty-line); }
.pty-about__portrait img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 100%; display: block; }
.pty-about__copy { display: grid; gap: 24px; align-content: center; }
.pty-about__kicker { margin: 0; font-size: var(--pty-text-sm); font-weight: 500; line-height: 20px; letter-spacing: var(--pty-label-tracking); text-transform: uppercase; color: var(--pty-rose); }
.pty-about__heading { margin: 0; font-family: var(--pty-font-display); font-weight: var(--pty-display-weight); font-size: var(--pty-display-xl); line-height: var(--pty-line-display); letter-spacing: var(--pty-display-tracking); }
.pty-about__intro { display: grid; gap: 24px; font-size: var(--pty-text-md); line-height: 22px; }
.pty-about__intro p, .pty-about__col p { margin: 0; }
@media (min-width: 1024px) {
  .pty-about__hero { grid-template-columns: 560px minmax(0, 704px); gap: 80px; justify-content: center; align-items: center; padding: 96px 48px; }
  .pty-about__heading { line-height: 68px; }
  .pty-about__intro { font-size: var(--pty-text-lg); line-height: 26px; }
}

.pty-about__quote { padding: 48px 20px; background: var(--pty-blush); text-align: center; }
.pty-about__quote blockquote { margin: 0 auto; max-width: 960px; display: grid; gap: 16px; justify-items: center; }
.pty-about__quote p { margin: 0; font-family: var(--pty-font-display); font-style: italic; font-size: var(--pty-display-xl); line-height: var(--pty-line-display); letter-spacing: var(--pty-display-tracking); }
.pty-about__quote cite { font-style: normal; font-size: var(--pty-text-sm); font-weight: 500; line-height: 20px; letter-spacing: var(--pty-label-tracking); text-transform: uppercase; color: var(--pty-stone); }
@media (min-width: 1024px) { .pty-about__quote { padding: 96px 48px; } .pty-about__quote p { font-size: var(--pty-display-lg); line-height: 52px; } }

.pty-about__story { display: grid; gap: 64px; padding: 48px 20px 0; max-width: 1440px; margin-inline: auto; }
.pty-about__columns { display: grid; gap: 32px; }
.pty-about__col { display: grid; gap: 24px; font-size: var(--pty-text-md); line-height: 22px; }
.pty-about__col h2 { margin: 0; font-family: var(--pty-font-display); font-weight: var(--pty-display-weight); font-size: var(--pty-display-sm); line-height: var(--pty-line-display); letter-spacing: var(--pty-display-tracking); }
.pty-about__strip { display: grid; gap: 24px; }
.pty-about__strip-item { aspect-ratio: 350 / 260; overflow: hidden; background: var(--pty-line); }
.pty-about__strip-item img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 100%; display: block; }
@media (min-width: 1024px) {
  .pty-about__story { padding: 96px 48px 0; }
  .pty-about__columns { grid-template-columns: 1fr 1fr; gap: 64px; }
  .pty-about__strip { grid-template-columns: repeat(3, 1fr); }
  .pty-about__strip-item { aspect-ratio: 432 / 560; }
}

.pty-about__names { display: grid; gap: 48px; padding: 48px 20px; max-width: 1440px; margin-inline: auto; }
.pty-about__names-head { display: grid; gap: 8px; }
.pty-about__names-head h2 { margin: 0; font-family: var(--pty-font-display); font-weight: var(--pty-display-weight); font-size: var(--pty-display-md); line-height: var(--pty-line-display); letter-spacing: var(--pty-display-tracking); }
.pty-about__names-head p { margin: 0; max-width: 720px; font-size: var(--pty-text-md); line-height: 22px; color: var(--pty-stone); }
.pty-about__bios { display: grid; gap: 32px; }
.pty-bio { display: grid; gap: 8px; align-content: start; }
.pty-bio__media { display: block; aspect-ratio: 318 / 400; overflow: hidden; background: var(--pty-white); border-radius: 8px; margin-bottom: 8px; }
.pty-bio__media img { width: 100%; height: 100%; object-fit: cover; display: block; }
.pty-bio__name { margin: 0; font-family: var(--pty-font-display); font-weight: var(--pty-display-weight); font-size: 20px; line-height: 24px; letter-spacing: var(--pty-display-tracking); }
.pty-bio__text { margin: 0; font-size: var(--pty-text-sm); line-height: 20px; color: var(--pty-stone); }
.pty-bio__link { display: inline-flex; align-items: center; gap: 8px; font-size: var(--pty-text-sm); font-weight: 500; line-height: 20px; letter-spacing: var(--pty-label-tracking); text-transform: uppercase; color: var(--pty-rose); text-decoration: none; }
.pty-bio__link .pty-icon { width: 16px; height: 16px; }
.pty-bio__link:hover { text-decoration: underline; }
@media (min-width: 768px) { .pty-about__bios { grid-template-columns: 1fr 1fr; gap: 24px; } }
@media (min-width: 1024px) { .pty-about__names { padding: 96px 48px; } .pty-about__bios { grid-template-columns: repeat(4, 1fr); } }

.pty-about__cta { display: grid; gap: 24px; justify-items: center; padding: 40px 20px; background: var(--pty-rose); text-align: center; }
.pty-about__cta h2 { margin: 0; max-width: 960px; font-family: var(--pty-font-display); font-weight: var(--pty-display-weight); font-size: var(--pty-display-md); line-height: var(--pty-line-display); letter-spacing: var(--pty-display-tracking); }
.pty-about__cta .pty-btn { width: 100%; max-width: 350px; }
@media (min-width: 1024px) { .pty-about__cta { padding: 80px 48px; } .pty-about__cta h2 { font-size: var(--pty-display-lg); line-height: 52px; } .pty-about__cta .pty-btn { width: auto; } }
