/* Pleno Gestão — Página A Pleno — V4.1.8
   Refinamento de escala + estrutura humana da equipe.
   Extensão isolada: não redefine a arquitetura visual da Home. */
.about-more-link { margin-top: 22px; }

.about-page-hero {
  position: relative;
  overflow: hidden;
  color: var(--white);
  background: linear-gradient(135deg, var(--ink) 0%, var(--navy) 100%);
}
.about-page-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  opacity: .20;
  background-image: linear-gradient(var(--white-06) 1px, transparent 1px), linear-gradient(90deg, var(--white-06) 1px, transparent 1px);
  background-size: 72px 72px;
  mask-image: linear-gradient(to right, transparent, #000 30%, #000);
}
.about-page-hero::after {
  content: "";
  position: absolute;
  width: 650px;
  height: 650px;
  right: -255px;
  top: -315px;
  border: 1px solid var(--white-10);
  border-radius: 50%;
}
.about-page-hero-inner {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: 1.18fr .82fr;
  gap: clamp(44px, 6vw, 86px);
  align-items: end;
  min-height: 470px;
  padding-block: clamp(68px, 7vw, 92px);
}
.about-page-hero h1 {
  max-width: 760px;
  margin: 0;
  font-size: clamp(2.55rem, 4.15vw, 4.15rem);
  line-height: 1.025;
  letter-spacing: -.048em;
  font-weight: 600;
}
.about-page-hero h1 span { color: rgba(255,255,255,.56); }
.about-page-intro {
  margin: 20px 0 0;
  max-width: 700px;
  color: var(--white-78);
  font-size: clamp(.94rem, 1.08vw, 1.04rem);
  line-height: 1.65;
}
.about-page-side {
  padding-left: 32px;
  border-left: 1px solid var(--white-18);
}
.about-page-side small {
  display: block;
  margin-bottom: 12px;
  color: var(--white-62);
  font-size: .63rem;
  text-transform: uppercase;
  letter-spacing: .11em;
}
.about-page-side p {
  margin: 0;
  color: var(--white-78);
  font-size: .98rem;
  line-height: 1.68;
}

.about-page-section { padding-block: clamp(58px, 5.7vw, 82px); }
.about-page-section + .about-page-section { border-top: 1px solid var(--ink-09); }
.about-page-copy-grid {
  display: grid;
  grid-template-columns: .86fr 1.14fr;
  gap: clamp(42px, 6vw, 84px);
  align-items: start;
}
.about-page-copy-grid h2,
.leadership-head h2,
.consultants-head h2,
.multidisciplinary-copy h2 {
  max-width: 660px;
  margin: 0;
  font-size: clamp(1.9rem, 2.55vw, 2.65rem);
  line-height: 1.1;
  letter-spacing: -.038em;
  font-weight: 600;
}
.about-page-copy {
  max-width: 760px;
  color: var(--ink-76);
  font-size: .94rem;
}
.about-page-copy p { margin: 0; }
.about-page-copy p + p { margin-top: 18px; }
.about-page-principles { margin-top: 36px; }
.about-page-principles .commitment-card { min-height: 175px; }

.leadership-section { background: var(--ink-05); }
.leadership-head,
.consultants-head {
  display: grid;
  grid-template-columns: 1fr .78fr;
  gap: 48px;
  align-items: end;
  margin-bottom: 34px;
}
.leadership-head > p,
.consultants-head > p {
  margin: 0;
  max-width: 520px;
  color: var(--ink-60);
  font-size: .88rem;
  line-height: 1.7;
}

.people-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 22px;
}
.person-card {
  display: grid;
  grid-template-columns: minmax(150px, .72fr) minmax(0, 1.28fr);
  min-width: 0;
  overflow: hidden;
  border: 1px solid var(--ink-12);
  background: rgba(255,255,255,.42);
}
.person-card-light { background: var(--white); }
.person-photo {
  position: relative;
  min-height: 305px;
  overflow: hidden;
  background: linear-gradient(145deg, var(--ink) 0%, var(--navy) 100%);
}
.person-photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
  display: block;
}
.person-photo-pending {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: flex-start;
  padding: 24px;
  color: var(--white);
}
.person-photo-pending::before {
  content: "";
  position: absolute;
  inset: 0;
  opacity: .28;
  background-image: linear-gradient(var(--white-06) 1px, transparent 1px), linear-gradient(90deg, var(--white-06) 1px, transparent 1px);
  background-size: 38px 38px;
}
.person-photo-pending span,
.person-photo-pending small { position: relative; z-index: 1; }
.person-photo-pending span {
  font-size: 2.3rem;
  line-height: 1;
  font-weight: 600;
  letter-spacing: -.05em;
}
.person-photo-pending small {
  margin-top: 8px;
  color: var(--white-62);
  font-size: .58rem;
  letter-spacing: .1em;
  text-transform: uppercase;
}
.person-body { padding: clamp(24px, 2.6vw, 36px); }
.person-role {
  display: block;
  margin-bottom: 10px;
  color: var(--ink-60);
  font-size: .62rem;
  font-weight: 600;
  letter-spacing: .1em;
  text-transform: uppercase;
}
.person-body h3 {
  margin: 0;
  font-size: clamp(1.42rem, 1.8vw, 1.9rem);
  line-height: 1.1;
  letter-spacing: -.035em;
  font-weight: 600;
}
.person-domain {
  display: block;
  margin-top: 9px;
  color: var(--navy);
  font-size: .76rem;
  font-weight: 500;
  line-height: 1.5;
}
.person-body p {
  margin: 18px 0 0;
  color: var(--ink-60);
  font-size: .79rem;
  line-height: 1.72;
}
.person-link {
  display: inline-flex;
  gap: 7px;
  align-items: center;
  margin-top: 20px;
  color: var(--navy);
  font-size: .72rem;
  font-weight: 500;
  text-decoration: none;
  border-bottom: 1px solid var(--ink-18);
  padding-bottom: 3px;
}
.person-link:hover { border-bottom-color: var(--navy); }

.consultants-section { background: var(--white); }
.expertise-section { padding-top: clamp(50px, 5vw, 72px); }
.multidisciplinary-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: clamp(42px, 6vw, 82px);
  align-items: center;
}
.multidisciplinary-copy p {
  max-width: 650px;
  margin: 20px 0 0;
  color: var(--ink-60);
  font-size: .88rem;
  line-height: 1.7;
}
.expertise-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 0;
  border-top: 1px solid var(--ink-16);
}
.expertise-list span {
  padding: 14px 0;
  border-bottom: 1px solid var(--ink-16);
  color: var(--ink-76);
  font-size: .73rem;
}
.expertise-list span:nth-child(even) { padding-left: 28px; }
.about-page-final .final-cta-inner { max-width: 880px; margin-inline: auto; text-align: center; }
.about-page-final .final-cta-inner h2 {
  font-size: clamp(2rem, 3.05vw, 3rem);
  line-height: 1.08;
  letter-spacing: -.042em;
}
.about-page-final .final-actions { justify-content: center; }

@media (max-width: 1050px) {
  .person-card { grid-template-columns: 1fr; }
  .person-photo { min-height: 265px; aspect-ratio: 16 / 10; }
}
@media (max-width: 820px) {
  .about-page-hero-inner,
  .about-page-copy-grid,
  .leadership-head,
  .consultants-head,
  .multidisciplinary-grid { grid-template-columns: 1fr; }
  .about-page-hero-inner { min-height: auto; gap: 32px; padding-block: 62px; }
  .about-page-side { padding: 24px 0 0; border-left: 0; border-top: 1px solid var(--white-18); }
  .leadership-head,
  .consultants-head { gap: 14px; }
  .people-grid { grid-template-columns: 1fr; }
  .person-card { grid-template-columns: minmax(145px, .65fr) minmax(0, 1.35fr); }
  .person-photo { min-height: 290px; aspect-ratio: auto; }
}
@media (max-width: 560px) {
  .about-page-hero h1 { font-size: clamp(2.15rem, 10vw, 2.85rem); }
  .about-page-hero-inner { padding-block: 52px; }
  .about-page-section { padding-block: 52px; }
  .about-page-copy-grid h2,
  .leadership-head h2,
  .consultants-head h2,
  .multidisciplinary-copy h2 { font-size: clamp(1.85rem, 9vw, 2.35rem); }
  .person-card { grid-template-columns: 1fr; }
  .person-photo { min-height: 285px; aspect-ratio: 4 / 3; }
  .person-body { padding: 24px; }
  .expertise-list { grid-template-columns: 1fr; }
  .expertise-list span:nth-child(even) { padding-left: 0; }
  .about-page-final .final-cta-inner h2 { font-size: clamp(1.9rem, 9vw, 2.45rem); }
}
