/* Scoped to the professional section; the approved hero keeps its existing styles. */
.story-profile {
  grid-template-columns: minmax(0, 1.3fr) minmax(0, 0.9fr);
  gap: clamp(40px, 7vw, 112px);
}

.story-portrait { margin: 0; min-width: 0; width: 100%; max-width: 800px; justify-self: center; }
.story-portrait img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: contain;
  border: 1px solid #786147;
}
.story-portrait figcaption {
  margin-top: 14px;
  color: #d2cbd0;
  font-size: 10px;
  line-height: 1.7;
  letter-spacing: 0.02em;
}
.story-portrait figcaption a {
  color: inherit;
  text-decoration: underline;
  text-underline-offset: 3px;
}
.story-profile-copy { max-width: 490px; }
.story-profile .eyebrow { color: #dbc295; }
.story-profile h2 {
  font-size: clamp(58px, 6vw, 88px);
  line-height: 0.98;
}
.story-profile-copy > p:not(.eyebrow) {
  max-width: 440px;
  font-size: 15px;
  line-height: 1.85;
}
.story-profile .text-link { min-height: 44px; }

@media (max-width: 760px) {
  .story-profile { grid-template-columns: minmax(0, 1fr); gap: 38px; }
  .story-profile-copy { max-width: none; }
  .story-profile h2 { font-size: clamp(54px, 14vw, 68px); }
  .story-profile-copy > p:not(.eyebrow) { font-size: 14px; }
}
