.block-quote__figure {
  margin: 0;
  display: flex;
  gap: 16px;
}

.block-quote__mark {
  flex: none;
  font-family: var(--ib-font-display);
  font-size: 52px;
  font-weight: 700;
  line-height: .9;
  color: var(--ib-line);
}

.block-quote--mark .block-quote__box {
  padding: 26px 28px;
  border-radius: var(--ib-radius);
  background: var(--ib-bg-soft);
}

.block-quote--mark.ib-section--soft .block-quote__box {
  background: var(--ib-bg);
  box-shadow: var(--ib-shadow-sm);
}

.block-quote--line .block-quote__box {
  padding-left: 28px;
  border-left: 2px solid var(--ib-accent);
}

.block-quote--center .block-quote__figure {
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 8px;
}

.block-quote--center .block-quote__author {
  justify-content: center;
}

.block-quote__text {
  margin: 0;
  font-size: clamp(19px, 2.1vw, 25px);
  line-height: 1.55;
  letter-spacing: -.01em;
}

.block-quote--mark .block-quote__text {
  font-size: clamp(17px, 1.6vw, 20px);
  color: var(--ib-muted);
}

.block-quote__author {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-top: 22px;
}

.block-quote__photo {
  width: 52px;
  height: 52px;
  border-radius: 50%;
  object-fit: cover;
  display: block;
}

.block-quote__name {
  display: block;
  font-family: var(--ib-font-display);
  font-size: 15px;
  font-weight: 600;
}

.block-quote__role {
  display: block;
  font-size: 14px;
  color: var(--ib-muted);
}
