/* Shared profile component: native layout and published roles, no legacy topcoat.
   Media columns are purposeful geometry; original portrait canvas remains 4:5. */
.vr-agent-profile-section {
  padding: var(--vr-space-8) var(--vr-space-6) var(--vr-space-12);
  color: var(--vr-color-text);
  background: var(--vr-color-surface);
  font-family: var(--vr-font-body);
  font-size: var(--vr-type-body);
  font-weight: var(--vr-weight-body);
  line-height: var(--vr-line-body);
}
.vr-agent-profile {
  display: grid;
  grid-template-columns: minmax(6rem, 8rem) minmax(0, 1fr);
  grid-template-areas: "identity identity" "portrait contacts" "details details" "biography biography";
  gap: var(--vr-space-6);
  max-width: var(--vr-layout-container);
  margin-inline: auto;
  align-items: start;
}
.vr-agent-profile__identity { grid-area: identity; min-width: 0; }
.vr-agent-profile .agent-name {
  margin: 0;
  font-family: var(--vr-font-display);
  font-size: var(--vr-type-h2);
  font-weight: var(--vr-weight-display);
  line-height: var(--vr-line-heading);
  color: var(--vr-color-text);
  overflow-wrap: anywhere;
}
.vr-agent-profile__credentials {
  margin: var(--vr-space-3) 0 0;
  color: var(--vr-color-muted);
  font-size: var(--vr-type-small);
  overflow-wrap: anywhere;
}
.vr-agent-profile__portrait { grid-area: portrait; aspect-ratio: 4 / 5; min-width: 0; }
.vr-agent-profile__photo { display: block; width: 100%; height: 100%; }
.vr-agent-profile__no-photo {
  display: grid;
  place-items: center;
  height: 100%;
  padding: var(--vr-space-3);
  background: var(--vr-color-surface-subtle);
  color: var(--vr-color-muted);
  font-size: var(--vr-type-small);
  text-align: center;
}
.vr-agent-profile__contacts {
  grid-area: contacts;
  list-style: none;
  padding: 0;
  margin: 0;
  min-width: 0;
  font-size: var(--vr-type-small);
  overflow-wrap: anywhere;
}
.vr-agent-profile__contacts li { margin: 0 0 var(--vr-space-2); }
.vr-agent-profile__contacts li > span { display: block; color: var(--vr-color-muted); }
.vr-agent-profile a { color: var(--vr-color-accent); text-underline-offset: .18em; }
.vr-agent-profile__contacts a { display: inline-flex; align-items: center; min-height: 44px; }
.vr-agent-profile a:focus-visible, .vr-agent-profile button:focus-visible { outline: 2px solid var(--vr-color-text); outline-offset: 3px; }
.vr-agent-profile__social { display: flex; flex-wrap: wrap; list-style: none; padding: 0; margin: var(--vr-space-3) 0 0; gap: var(--vr-space-2); }
.vr-agent-profile__social a { display: grid; place-items: center; min-width: 44px; min-height: 44px; font-size: var(--vr-type-h4); }
.vr-agent-profile__details { grid-area: details; min-width: 0; }
.vr-agent-profile__details h2 { font-family: var(--vr-font-body); font-size: var(--vr-type-body); font-weight: var(--vr-weight-strong); line-height: var(--vr-line-heading); margin: var(--vr-space-4) 0 var(--vr-space-2); }
.vr-agent-profile__details p { margin: 0; }
.vr-agent-profile__team img { max-width: 10rem; height: auto; }
.vr-agent-profile__biography { grid-area: biography; min-width: 0; max-width: var(--vr-layout-reading); overflow-wrap: anywhere; }
.vr-agent-profile__biography p { font-size: var(--vr-type-body); line-height: var(--vr-line-body); }
.vr-agent-profile__search { min-height: 44px; padding: var(--vr-space-3) var(--vr-space-6); margin-top: var(--vr-space-4); border: 1px solid var(--vr-color-inverse); border-radius: var(--vr-radius-control); background: var(--vr-color-inverse); color: var(--vr-color-on-inverse); font-family: var(--vr-font-body); font-size: var(--vr-type-small); font-weight: var(--vr-weight-strong); cursor: pointer; }
@media (min-width: 48rem) {
  .vr-agent-profile-section { padding: var(--vr-space-12) var(--vr-space-8); }
  .vr-agent-profile { grid-template-columns: minmax(14rem, 22.5rem) minmax(0, 1fr); grid-template-areas: "portrait identity" "portrait biography" "contacts biography" "details biography"; column-gap: var(--vr-space-16); }
  .vr-agent-profile .agent-name { font-size: var(--vr-type-h1); }
}
