.jcc-about-team {
  background: #ededeb !important;
  border-top: 1px solid #d8d8d4;
  border-bottom: 1px solid #d8d8d4;
}

.jcc-about-team .jcc-team-intro {
  max-width: 780px;
  margin-bottom: clamp(52px, 7vw, 84px);
}

.jcc-about-team .jcc-team-intro h2 {
  margin-bottom: 18px;
}

.jcc-about-team .jcc-team-intro p {
  max-width: 720px;
  margin: 0;
  color: #555;
  font-size: 18px;
  line-height: 1.72;
}

.jcc-team-profiles {
  display: grid;
  gap: clamp(70px, 9vw, 112px);
}

.jcc-team-profile {
  display: grid;
  grid-template-columns: minmax(280px, .72fr) minmax(0, 1.48fr);
  gap: clamp(38px, 6vw, 82px);
  align-items: start;
  padding-top: clamp(42px, 6vw, 68px);
  border-top: 1px solid #c9c9c5;
}

.jcc-team-profile:first-child {
  padding-top: 0;
  border-top: 0;
}

.jcc-team-portrait {
  position: sticky;
  top: 116px;
  margin: 0;
  overflow: hidden;
  aspect-ratio: 3 / 4;
  background: #111;
  box-shadow: 0 22px 52px rgba(17, 17, 17, .14);
}

.jcc-team-portrait img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
}

.jcc-team-copy {
  min-width: 0;
}

.jcc-team-copy h3 {
  margin: 0 0 6px !important;
  color: #202020 !important;
  font-size: clamp(32px, 4vw, 52px) !important;
  line-height: 1.08 !important;
}

.jcc-team-role {
  margin: 0 0 28px !important;
  color: #5d5d5d !important;
  font-size: 12px !important;
  font-weight: 700;
  letter-spacing: .16em;
  line-height: 1.5 !important;
  text-transform: uppercase;
}

.jcc-team-copy > p,
.jcc-team-biography p,
.jcc-team-biography li {
  max-width: none !important;
  color: #4c4c4c !important;
  font-size: 16.5px;
  line-height: 1.78;
}

.jcc-team-copy > p {
  margin: 0 0 16px !important;
}

.jcc-team-credentials {
  display: grid;
  gap: 6px;
  margin: 0 0 24px;
  padding: 0;
  color: #4c4c4c;
  font-size: 15px;
  line-height: 1.55;
  list-style: none;
}

.jcc-team-credentials li {
  margin: 0;
  padding: 0;
}

.jcc-team-biography {
  margin-top: 30px;
  border-top: 1px solid #cacac6;
  border-bottom: 1px solid #cacac6;
}

.jcc-team-biography summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding: 19px 0;
  color: #242424;
  cursor: pointer;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .1em;
  line-height: 1.45;
  list-style: none;
  text-transform: uppercase;
}

.jcc-team-biography summary::-webkit-details-marker {
  display: none;
}

.jcc-team-biography summary::after {
  content: "+";
  flex: none;
  color: #626262;
  font-family: Arial, sans-serif;
  font-size: 24px;
  font-weight: 400;
  line-height: 1;
}

.jcc-team-biography[open] summary::after {
  content: "\2212";
}

.jcc-team-biography-inner {
  padding: 8px 0 34px;
}

.jcc-team-biography h4 {
  margin: 34px 0 14px;
  color: #222;
  font-family: "Libre Caslon Text", Georgia, serif;
  font-size: clamp(19px, 1.7vw, 22px);
  font-weight: 400;
  line-height: 1.35;
}

.jcc-team-biography h4:first-child {
  margin-top: 8px;
}

.jcc-team-biography p {
  margin: 0 0 16px;
}

.jcc-team-biography ul {
  margin: 12px 0 22px;
  padding-left: 22px;
}

.jcc-team-biography li {
  margin: 5px 0;
  padding-left: 4px;
}

@media (max-width: 840px) {
  .jcc-team-profile {
    grid-template-columns: 1fr;
    gap: 34px;
  }

  .jcc-team-portrait {
    position: static;
    width: min(100%, 430px);
  }
}

@media (max-width: 520px) {
  .jcc-about-team .jcc-team-intro {
    margin-bottom: 46px;
  }

  .jcc-about-team .jcc-team-intro p {
    font-size: 16px;
  }

  .jcc-team-profiles {
    gap: 68px;
  }

  .jcc-team-profile {
    padding-top: 46px;
  }

  .jcc-team-copy h3 {
    font-size: 34px !important;
  }

  .jcc-team-copy > p,
  .jcc-team-biography p,
  .jcc-team-biography li {
    font-size: 16px;
    line-height: 1.72;
  }

  .jcc-team-biography summary {
    align-items: flex-start;
    padding: 18px 0;
    font-size: 12px;
  }
}
/* About-page architectural hero: shorter first view with copy above the fold. */
.page-about.jcc-page-support .jcc-about-architecture-hero {
  min-height: clamp(500px, 58vh, 620px);
  padding: 0;
  background-color: #111;
  background-image:
    linear-gradient(90deg, rgba(8, 9, 10, .9) 0%, rgba(8, 9, 10, .78) 38%, rgba(8, 9, 10, .38) 68%, rgba(8, 9, 10, .12) 100%),
    var(--hero-image);
  background-position: center, center;
  background-size: cover, cover;
}

.page-about.jcc-page-support .jcc-about-architecture-hero .hero-grid {
  min-height: inherit;
  align-items: center;
}

.page-about.jcc-page-support .jcc-about-architecture-hero .hero-copy {
  max-width: 660px;
  margin-top: 0;
  padding: clamp(74px, 9vh, 104px) 0 clamp(52px, 7vh, 76px);
}

@media (max-width: 840px) {
  .page-about.jcc-page-support .jcc-about-architecture-hero {
    min-height: 520px;
    background-image:
      linear-gradient(90deg, rgba(8, 9, 10, .9) 0%, rgba(8, 9, 10, .76) 58%, rgba(8, 9, 10, .34) 100%),
      var(--hero-image);
    background-position: center, 64% center;
  }

  .page-about.jcc-page-support .jcc-about-architecture-hero .hero-copy {
    margin-top: 0;
    padding: 72px 0 48px;
  }
}

@media (max-width: 520px) {
  .page-about.jcc-page-support .jcc-about-architecture-hero {
    min-height: 500px;
  }

  .page-about.jcc-page-support .jcc-about-architecture-hero .hero-copy {
    padding: 58px 0 42px;
  }
}
/* Match the Home hero action hierarchy and labels. */
.page-about .jcc-about-architecture-hero .jcc-about-hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 30px;
}

.page-about .jcc-about-architecture-hero .jcc-about-hero-actions .button {
  display: inline-flex;
  width: auto;
  min-width: 0;
  min-height: 52px;
  align-items: center;
  justify-content: center;
  padding: 15px 24px;
  border: 1px solid #a4a4a4;
  border-radius: 1px;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.page-about .jcc-about-architecture-hero .jcc-about-hero-actions .button-dark {
  background: #a4a4a4;
  color: #212121;
}

.page-about .jcc-about-architecture-hero .jcc-about-hero-actions .button-secondary {
  background: transparent;
  border-color: rgba(250, 250, 250, .72);
  color: #fafafa;
}

.page-about .jcc-about-architecture-hero .jcc-about-hero-actions .button-dark:hover,
.page-about .jcc-about-architecture-hero .jcc-about-hero-actions .button-dark:focus-visible {
  background: #d2d2d2;
  border-color: #d2d2d2;
}

.page-about .jcc-about-architecture-hero .jcc-about-hero-actions .button-secondary:hover,
.page-about .jcc-about-architecture-hero .jcc-about-hero-actions .button-secondary:focus-visible {
  background: rgba(250, 250, 250, .1);
  border-color: #fafafa;
}

@media (max-width: 520px) {
  .page-about .jcc-about-architecture-hero .jcc-about-hero-actions {
    display: grid;
  }

  .page-about .jcc-about-architecture-hero .jcc-about-hero-actions .button {
    width: 100%;
  }
}
