.company-intro {
  padding: 180px 8% 80px;
  background: #fff;
  border-bottom: 1px solid var(--line);
}

.company-intro h1 {
  font-size: clamp(36px, 4.4vw, 60px);
  letter-spacing: .14em;
}

.company-profile {
  max-width: 1320px;
  margin: auto;
  padding: 95px 8% 120px;
  display: grid;
  grid-template-columns: 34% 66%;
}

.company-profile h2 {
  font-size: 28px;
  line-height: 1.9;
}

.company-profile dl {
  margin: 0;
}

.company-profile dl > div {
  display: grid;
  grid-template-columns: 130px 1fr;
  gap: 25px;
  padding: 25px 0;
  border-bottom: 1px solid var(--line);
}

.company-profile dl > div:first-child {
  padding-top: 0;
}

.company-profile dt {
  color: var(--muted);
}

.company-profile dd {
  margin: 0;
}

.company-team {
  padding: 110px 8% 130px;
  background: #f7f8f8;
}

.team-heading,
.company-team > .member,
.specialists {
  width: min(1160px, 100%);
  margin-inline: auto;
}

.team-heading {
  display: grid;
  grid-template-columns: 34% 66%;
  padding-bottom: 65px;
}

.team-heading h2 {
  font-size: clamp(28px, 3vw, 42px);
  line-height: 1.8;
  letter-spacing: .08em;
}

.member {
  display: grid;
  grid-template-columns: 34% 66%;
  border-top: 1px solid var(--line);
  padding: 55px 0 65px;
}

.member-title {
  padding-right: 45px;
}

.member-title > p {
  color: var(--gold);
  font-size: 14px;
  letter-spacing: .1em;
  margin-bottom: 12px;
}

.member-title h3 {
  font-size: clamp(27px, 2.8vw, 38px);
  letter-spacing: .1em;
  line-height: 1.55;
}

.member-body {
  color: var(--ink);
}

.member-body ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.member-body li {
  position: relative;
  padding-left: 1.2em;
  line-height: 2.05;
}

.member-body li::before {
  content: '';
  position: absolute;
  left: 0;
  top: 1em;
  width: 5px;
  height: 5px;
  border: 1px solid var(--gold);
  border-radius: 50%;
}

.career > div,
.career.compact > div {
  display: grid;
  grid-template-columns: 118px 1fr;
  gap: 28px;
  padding: 0 0 26px;
}

.career > div:last-child,
.career.compact > div:last-child {
  padding-bottom: 0;
}

.career time {
  color: var(--gold);
  line-height: 1.7;
}

.career p {
  line-height: 2.05;
}

.career.compact {
  margin-top: 32px;
  padding-top: 28px;
  border-top: 1px solid var(--line);
}

.specialists {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0 55px;
  border-top: 1px solid var(--line);
}

.specialists .member {
  display: block;
  border-top: 0;
  padding: 55px 0;
}

.specialists .member:nth-child(n+3) {
  border-top: 1px solid var(--line);
}

.specialists .member-title {
  padding: 0 0 28px;
}

.specialists .member-title h3 {
  font-size: 30px;
}

.member-name-only {
  grid-column: 1 / -1;
}

.member-name-only .member-title {
  padding-bottom: 0;
}

.company-page footer .footer-brand {
  font: 24px Georgia, serif;
  letter-spacing: .08em;
}

@media (max-width: 760px) {
  .company-intro {
    padding: 135px 7% 55px;
  }

  .company-profile {
    display: block;
    padding: 55px 7% 80px;
  }

  .company-profile > div:first-child {
    margin-bottom: 40px;
  }

  .company-profile dl > div {
    grid-template-columns: 1fr;
    gap: 6px;
    padding: 20px 0;
  }

  .company-profile h2 {
    font-size: 26px;
  }

  .company-profile br {
    overflow-wrap: anywhere;
  }

  .company-team {
    padding: 75px 7% 90px;
  }

  .team-heading,
  .member,
  .specialists {
    display: block;
  }

  .team-heading {
    padding-bottom: 45px;
  }

  .team-heading h2 {
    font-size: 29px;
  }

  .member {
    padding: 42px 0 50px;
  }

  .member-title {
    padding: 0 0 32px;
  }

  .member-title h3 {
    font-size: 29px;
  }

  .career > div,
  .career.compact > div {
    grid-template-columns: 82px 1fr;
    gap: 17px;
  }

  .career time,
  .career p,
  .member-body li {
    font-size: 14px;
  }

  .specialists .member {
    border-top: 1px solid var(--line);
    padding: 40px 0;
  }

  .specialists .member-title {
    padding-bottom: 22px;
  }

  .specialists .member-name-only .member-title {
    padding-bottom: 0;
  }
}
