/* Speaking page */

.speaking-hero { background: var(--navy); padding: 88px 0 76px; }
.speaking-hero .wrap { display: flex; gap: 56px; align-items: center; }
.speaking-hero__copy { flex: 1; min-width: 0; max-width: 640px; }
.speaking-hero__title { color: var(--ivory); font-size: 34px; line-height: 1.35; margin-top: 18px; }
.speaking-hero__lede { color: var(--nav-link); font-size: 16px; line-height: 1.65; margin-top: 20px; }
.speaking-hero__photo {
  width: 320px; height: 380px; flex: none;
  display: block; object-fit: cover; object-position: 62% 18%;
}

@media (max-width: 880px) {
  .speaking-hero .wrap { flex-direction: column-reverse; align-items: stretch; }
  .speaking-hero__copy { max-width: none; }
  .speaking-hero__photo { width: 100%; height: 260px; }
}

.topics { background: var(--ivory); padding: 96px 0 88px; }
.topics .wrap { max-width: 680px; }
.topics__intro { font-size: 15.5px; line-height: 1.7; color: var(--body-text); margin-top: 18px; }
.topics__list { display: flex; flex-direction: column; margin-top: 28px; }
.topics__list div {
  padding: 16px 0; border-top: 1px solid var(--ivory-line);
  font-size: 16px; color: var(--navy); font-family: 'Lora', Georgia, serif;
}
.topics__list div:last-child { border-bottom: 1px solid var(--ivory-line); }
.topics p.note { font-size: 14.5px; line-height: 1.65; color: var(--muted); margin-top: 26px; }
.topics p.note + p.note { margin-top: 14px; }

.speaking-style {
  background: var(--ivory-3);
  padding: 96px 0;
  border-top: 1px solid var(--ivory-line);
  border-bottom: 1px solid var(--ivory-line);
}
.speaking-style .wrap { max-width: 680px; }
.speaking-style p.intro { font-size: 15.5px; line-height: 1.7; color: var(--body-text); margin-top: 18px; }
.speaking-style__quote { margin-top: 44px; text-align: center; }
.speaking-style__quote p.quote {
  font-size: 24px; line-height: 1.55; color: var(--navy); font-style: italic;
  max-width: 600px; margin-inline: auto;
}
.speaking-style__quote cite {
  font-size: 13px; color: var(--gold-dark); margin-top: 20px; font-weight: 600;
  font-style: normal; display: block;
}

.speaking-cta { background: var(--navy); padding: 88px 0; text-align: center; }
.speaking-cta .wrap { max-width: 560px; margin-inline: auto; }
.speaking-cta p.lede { color: var(--nav-link); font-size: 16px; line-height: 1.6; }
.speaking-cta p.lead { color: var(--ivory); font-size: 22px; margin-top: 16px; }
.speaking-cta .btn-gold { margin-top: 26px; }
