.approach-heading { padding-top: calc(var(--nav-h) + 90px); padding-bottom: 76px; text-align: center; }
.approach-heading h1 { max-width: 900px; margin: 0 auto 26px; font-size: clamp(2.3rem, 4.8vw, 4.2rem); line-height: 1.12; letter-spacing: -.045em; text-wrap: balance; }
.approach-intro { max-width: 700px; margin: auto; color: var(--text-muted); font-size: 1.08rem; }
.approach-listening { display: grid; grid-template-columns: minmax(0, .85fr) minmax(0, 1fr); align-items: center; gap: clamp(36px, 7vw, 100px); padding-bottom: 90px; max-width: 1100px; }
.approach-portrait img { display: block; width: 100%; height: auto; aspect-ratio: 2 / 3; object-fit: cover; border-radius: var(--radius-card); }
.approach-portrait figcaption { margin-top: 12px; color: var(--text-muted); font-size: .8rem; }
.approach-copy h2, .approach-contact h2 { font-size: clamp(1.6rem, 3vw, 2.3rem); line-height: 1.25; letter-spacing: -.035em; margin-bottom: 22px; }
.approach-copy p { color: var(--text-muted); margin-bottom: 18px; }
.approach-reading { width: min(760px, 90%); margin: auto; }
.approach-reading > section { margin-bottom: 62px; }
.approach-training { padding: 64px 0 48px; background: var(--bg-warm); }
.approach-contact { text-align: center; padding-top: 80px; padding-bottom: 90px; }
.approach-contact > p { max-width: 660px; margin: 0 auto 30px; color: var(--text-muted); }
.approach-actions { display: flex; gap: 18px; justify-content: center; flex-wrap: wrap; }
.approach-preview { background: var(--gold-pale); padding: 18px; margin-bottom: 30px; border-radius: var(--radius); }
.approach-preview a { text-decoration: underline; }
@media (max-width: 800px) {
  .approach-listening { grid-template-columns: 1fr; gap: 30px; padding-bottom: 46px; }
  .approach-portrait { max-width: 400px; width: 100%; margin: auto; }
  .approach-heading { padding-top: calc(var(--nav-h) + 48px); padding-bottom: 42px; }
  .approach-reading > section { margin-bottom: 42px; }
  .approach-contact { padding-top: 52px; padding-bottom: 56px; }
}
