/* Shared project-agent cards. Reuses the original local portraits and brand fonts. */
.project-agents {
  --project-agent-portrait-size:200px;
  box-sizing:border-box;
  padding:clamp(36px,4vw,56px) 4vw!important;
  min-height:0!important;
  height:auto!important;
  border:0!important;
  gap:24px!important;
  scroll-margin-top:100px;
}
.project-agents > .e-con-inner {
  display:grid!important;
  grid-template-columns:minmax(0,1fr);
  width:100%!important;
  max-width:960px!important;
  min-height:0!important;
  margin:0 auto!important;
  padding:0!important;
  gap:24px!important;
}
.project-agents .project-agent-card,
.project-agents.project-agent-card {
  box-sizing:border-box;
  display:grid!important;
  grid-template-columns:var(--project-agent-portrait-size) minmax(0,1fr)!important;
  align-items:center!important;
  gap:clamp(24px,4vw,44px)!important;
  width:100%!important;
  max-width:960px!important;
  height:auto!important;
  min-height:0!important;
  margin:0 auto!important;
  padding:clamp(20px,2.8vw,28px)!important;
  border:1px solid #292929!important;
  border-radius:20px!important;
  background:#0b0b0b!important;
}
/* Existing custom project pages have the section and card on the same element. */
.project-agents.project-agent-card {
  width:calc(100% - 8vw)!important;
  margin:32px auto 48px!important;
}
.project-agents .project-agent-card + .project-agent-card { margin-top:24px!important; }
.project-agents .project-agent-media {
  display:block!important;
  width:var(--project-agent-portrait-size)!important;
  max-width:100%!important;
  min-width:0!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  align-self:center!important;
}
.project-agents .project-agent-media > .elementor-widget,
.project-agents .project-agent-media > .elementor-widget > .elementor-widget-container {
  width:100%!important;
  margin:0!important;
  padding:0!important;
  line-height:0;
}
.project-agents img.project-agent-portrait {
  display:block!important;
  box-sizing:border-box;
  width:var(--project-agent-portrait-size)!important;
  max-width:100%!important;
  height:auto!important;
  aspect-ratio:4 / 5!important;
  object-fit:cover!important;
  object-position:50% 25%;
  border:0!important;
  border-radius:12px!important;
  margin:0!important;
}
.project-agents img.project-agent-portrait--tall { object-position:50% 10%; }
.project-agents .project-agent-copy {
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  justify-content:center!important;
  gap:16px!important;
  width:100%!important;
  min-width:0!important;
  min-height:0!important;
  padding:0!important;
  margin:0!important;
  text-align:left!important;
}
.project-agents .project-agent-heading {
  display:block!important;
  width:100%!important;
  min-height:0!important;
  padding:0!important;
  margin:0!important;
}
.project-agents .project-agent-heading .elementor-widget-heading { text-align:left!important; }
.project-agents .project-agent-name {
  font-family:var(--e-global-typography-primary-font-family,"the-seasons"),serif!important;
  font-size:clamp(28px,2.8vw,36px)!important;
  font-weight:300!important;
  line-height:1.15!important;
  letter-spacing:normal!important;
  margin:0!important;
  color:#eee;
}
.project-agents .project-agent-kicker {
  margin:0!important;
  color:#6dc2df!important;
  font-size:11px!important;
  line-height:1.5!important;
  letter-spacing:.14em!important;
  text-transform:uppercase;
}
.project-agents .project-agent-copy > p:not(.project-agent-kicker) {
  margin:0!important;
  color:#bdbdbd;
  font-size:15px!important;
  line-height:1.5!important;
}
.project-agents .project-agent-contacts {
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:flex-start!important;
  gap:14px 24px!important;
  width:100%!important;
  min-width:0!important;
  min-height:0!important;
  padding:0!important;
  margin:0!important;
}
.project-agents .project-agent-contact {
  display:flex!important;
  flex-direction:column!important;
  flex:0 0 auto;
  align-items:flex-start!important;
  justify-content:center!important;
  gap:4px!important;
  width:auto!important;
  max-width:100%!important;
  min-width:0!important;
  min-height:44px!important;
  padding:4px 0!important;
  margin:0!important;
  border:0!important;
  border-radius:0!important;
  background:none!important;
  color:#eee;
  text-decoration:none;
  overflow-wrap:anywhere;
}
.project-agents .project-agent-contacts > .project-agent-contact { flex:1 1 190px; }
.project-agents .project-agent-contact::before { display:none!important; }
.project-agents .project-agent-contact .elementor-heading-title,
.project-agents .project-agent-contact {
  font-family:var(--e-global-typography-text-font-family,"avenir-lt-pro"),sans-serif!important;
  font-size:16px!important;
  font-weight:400!important;
  line-height:1.5!important;
}
.project-agents .project-agent-contact .project-agent-contact-label,
.project-agents .project-agent-contact-label {
  font-size:11px!important;
  line-height:1.5!important;
  letter-spacing:.08em!important;
  text-transform:uppercase;
  color:#a6a6a6!important;
}
.project-agents .project-agent-contact:hover,
.project-agents .project-agent-contact:hover .elementor-heading-title:not(.project-agent-contact-label) { color:#6dc2df!important; }
.project-agents .project-agent-actions {
  display:flex!important;
  flex-wrap:wrap!important;
  gap:4px 24px!important;
  min-width:0!important;
  width:100%!important;
  margin:0!important;
  padding:0!important;
  text-align:left!important;
  flex-grow:0!important;
}
.project-agents .project-agent-actions a {
  display:inline-flex!important;
  align-items:center!important;
  min-height:44px;
  font-size:14px!important;
  line-height:1.5!important;
  white-space:normal;
}
.project-agents .project-agent-actions .elementor-button { padding:10px 20px!important; }
.project-agents a:focus-visible { outline:2px solid #6dc2df;outline-offset:5px; }
.project-agents .project-agent-empty { display:none!important; }
.project-agents .project-agent-card--no-portrait { grid-template-columns:minmax(0,1fr)!important; }
.project-agents .project-agent-card--no-portrait .project-agent-actions { justify-content:center; }
@media(max-width:600px) {
  .project-agents { --project-agent-portrait-size:150px;padding-block:28px!important; }
  .project-agents .project-agent-card,
  .project-agents.project-agent-card {
    grid-template-columns:minmax(0,1fr)!important;
    gap:22px!important;
    padding:20px!important;
    border-radius:16px!important;
  }
  .project-agents.project-agent-card { margin-block:24px 36px!important; }
  .project-agents .project-agent-copy { gap:14px!important; }
  .project-agents .project-agent-name { font-size:29px!important; }
  .project-agents .project-agent-contacts > .project-agent-contact { flex-basis:100%; }
}
