.about-page { background: #fff; }
.about-breadcrumb { margin-top: 28px; }
.about-hero { padding-top: 38px; }
.about-hero-heading { display: grid; grid-template-columns: 1.05fr 1fr; gap: clamp(32px, 6vw, 100px); align-items: end; }
.about-hero h1 { margin: 0; font-size: clamp(64px, 6.7vw, 96px); line-height: .98; letter-spacing: -.025em; }
.about-hero-heading p { margin: 0 0 28px; max-width: 42ch; font-size: clamp(19px, 1.6vw, 23px); line-height: 1.5; }
.about-place { margin: 48px 0 0; }
.about-place img { display: block; width: 100%; height: auto; max-height: 760px; object-fit: contain; background: #fff; }
.about-place figcaption { margin-top: 12px; font-size: 13px; line-height: 1.5; color: #535353; }
.about-services { margin-top: 100px; }
.about-services article { display: grid; grid-template-columns: 1.05fr 1fr; gap: clamp(32px, 6vw, 100px); padding: 44px 0 48px; border-top: 1px solid #d7d7d4; }
.about-page h2 { margin: 0; font-size: clamp(40px, 4.1vw, 60px); line-height: 1.03; letter-spacing: -.02em; }
.about-services p, .about-team p, .about-visit p { max-width: 47ch; margin: 0 0 24px; font-size: 17px; line-height: 1.65; }
.about-links { display: flex; flex-wrap: wrap; align-items: center; gap: 18px 30px; }
.about-page .text-link { min-height: 44px; }
.about-team { display: grid; grid-template-columns: 1.05fr 1fr; gap: clamp(32px, 6vw, 100px); margin-top: 72px; padding-bottom: 96px; }
.about-team h2 { margin-bottom: 24px; }
.about-team-list { margin: 0; }
.about-team-list > div { display: grid; grid-template-columns: 1fr 1.25fr; align-items: baseline; gap: 20px; padding: 23px 0; border-top: 1px solid #d7d7d4; }
.about-team-list dt { font-family: 'Barlow Condensed', sans-serif; font-weight: 600; font-size: 34px; line-height: 1.1; }
.about-team-list dd { margin: 0; font-size: 15px; line-height: 1.6; }
.about-visit { display: grid; grid-template-columns: 1.05fr 1fr; gap: clamp(32px, 6vw, 100px); padding-top: 64px; padding-bottom: 78px; background: #f3f3f0; }
.about-page .button { border-radius: 12px; }
@media (max-width: 760px) {
  .about-breadcrumb { margin-top: 23px; }
  .about-hero { padding-top: 30px; }
  .about-hero-heading, .about-services article, .about-team, .about-visit { grid-template-columns: 1fr; gap: 26px; }
  .about-hero h1 { font-size: clamp(56px, 16vw, 76px); }
  .about-hero-heading p { font-size: 19px; margin-bottom: 15px; }
  .about-place { margin-top: 30px; }
  .about-place img { max-height: none; }
  .about-services { margin-top: 54px; }
  .about-services article { padding: 31px 0 34px; gap: 19px; }
  .about-page h2 { font-size: 43px; }
  .about-team { margin-top: 40px; padding-bottom: 56px; }
  .about-team-list > div { padding: 19px 0; }
  .about-team-list dt { font-size: 30px; }
  .about-visit { padding-top: 42px; padding-bottom: 48px; }
}

/* Family history follows the existing PB editorial grid. */
.about-story{display:grid;grid-template-columns:1.05fr 1fr;gap:clamp(32px,6vw,100px);align-items:start;margin-top:72px;padding-top:40px;border-top:1px solid var(--line)}
.about-story p{max-width:47ch;margin:0 0 20px;font-size:17px;line-height:1.65}
.about-story+.about-services{margin-top:56px}
@media(max-width:760px){.about-story{grid-template-columns:1fr;gap:22px;margin-top:42px;padding-top:30px}.about-story+.about-services{margin-top:34px}.about-story p{font-size:16px}}
