.team-slide [hidden] { display: none !important; }
.profile-trigger { position: relative; display: block; flex: none; padding: 0; border: 0; border-radius: 50%; background: transparent; color: var(--ink); -webkit-tap-highlight-color: transparent; }
.profile-trigger .headshot { display: block; }
.profile-trigger:focus-visible, .profile-toolbar button:focus-visible { outline: 4px solid var(--green); outline-offset: 7px; }
.profile-trigger:hover .headshot { box-shadow: 0 0 0 5px var(--green-50), 0 0 0 8px var(--green); }
.audience .founder h3, .audience .founder .role { width: fit-content; margin-left: auto; margin-right: auto; }
.audience .profile-open .founder h3, .audience .profile-open .founder .role { margin-left: 0; margin-right: 0; }
.team-slide.profile-open { padding: 32px 64px; }
.team-slide.profile-open > .slide-heading { display: none; }
.team-slide.profile-open .slide-body { padding-top: 0; }
.profile-toolbar { display: flex; justify-content: space-between; margin: 0 0 16px; }
.profile-toolbar button { background: transparent; border: 0; padding: 8px 0; font-size: 25px; font-weight: 700; color: var(--ink-400); }
.profile-toolbar button:hover { color: var(--green-700); }
.profile-open .founders { flex: 1; min-height: 0; grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); gap: 54px; }
.profile-open .founder { display: grid; grid-template-rows: minmax(164px, 1fr) auto; align-items: start; gap: 22px; overflow-y: auto; padding: 8px; }
.profile-transitioning .founder { overflow: visible; }
.profile-open .profile-trigger { justify-self: start; height: 100%; max-height: 380px; aspect-ratio: 1; }
.profile-open .headshot { width: 100%; height: 100%; }
.profile-open .founder h3, .profile-open .founder .role { text-align: left; }
.profile-open .founder .logos { display: none; }
.profile-open .bio-expand { display: block; margin-top: 28px; }
.profile-open .bio-expand ul { font-size: 28px; line-height: 1.4; padding-left: 28px; }
.profile-open .bio-expand li + li { margin-top: 16px; }
.profile-media { display: grid; grid-template-rows: minmax(0, 1fr); min-width: 0; min-height: 0; gap: 18px; }
.profile-media.has-two { grid-template-rows: repeat(2, minmax(0, 1fr)); }
.profile-media figure { position: relative; min-width: 0; min-height: 0; margin: 0; overflow: hidden; border-radius: 22px; background: var(--ink-50); }
.profile-media img, .profile-media video { display: block; width: 100%; height: 100%; object-fit: cover; }
.profile-media video { object-fit: contain; background: var(--ink-900); }
.profile-media figcaption { position: absolute; bottom: 0; left: 0; right: 0; padding: 48px 24px 20px; color: white; background: linear-gradient(transparent, #00171ac9); font-size: 22px; pointer-events: none; }
.profile-media figure:has(video) figcaption { top: 0; bottom: auto; padding: 18px 24px 36px; background: linear-gradient(#00171ac9, transparent); }
.profile-media-error { padding: 32px; color: var(--ink-400); font-size: 24px; }

/* Keep the shared overview; let an opened profile read naturally on a phone. */
@media (max-width: 700px) and (orientation: portrait) {
  .founder-profile-open .stage { inset: 0; width: 100%; height: 100%; transform: none !important; overflow-y: auto; }
  .founder-profile-open .team-slide.on { position: relative; min-height: 100%; padding: 24px 22px 32px; }
  .team-slide.profile-open .slide-body { flex: none; padding-top: 0; }
  .profile-toolbar { gap: 20px; margin-bottom: 16px; }
  .profile-toolbar button { font-size: 17px; min-height: 44px; }
  .profile-open .founders { grid-template-columns: 1fr; gap: 26px; flex: none; }
  .profile-open .founder { display: flex; padding: 6px; overflow: visible; gap: 18px; }
  .profile-open .profile-trigger { width: 120px; height: 120px; }
  .profile-open .headshot { width: 120px; height: 120px; }
  .profile-open .founder h3 { font-size: 36px; }
  .profile-open .founder .role { font-size: 19px; }
  .profile-open .bio-expand { margin-top: 22px; }
  .profile-open .bio-expand ul { font-size: 21px; padding-left: 22px; }
  .profile-open .bio-expand li + li { margin-top: 12px; }
  .profile-media, .profile-media.has-two { grid-template-rows: none; grid-auto-rows: min(110vw, 540px); }
  .profile-media figcaption { font-size: 17px; }
}
