/* Stage 03 B2: approved brand-content family only. */

:is(
  [data-dpp-module="brand.hero"],
  [data-dpp-module="research.hero"],
  [data-dpp-module="company.hero"]
) {
  min-height: 712px;
}

:is(
  [data-dpp-module="brand.hero"],
  [data-dpp-module="research.hero"],
  [data-dpp-module="company.hero"]
).dpp-hero--has-media::after {
  background: linear-gradient(90deg, rgb(7 8 7 / 84%) 0%, rgb(7 8 7 / 60%) 54%, rgb(7 8 7 / 32%) 100%);
}

:is(
  [data-dpp-module="brand.hero"],
  [data-dpp-module="research.hero"],
  [data-dpp-module="company.hero"]
) .dpp-hero__content {
  padding-block: 120px;
}

:is(
  [data-dpp-module="brand.hero"],
  [data-dpp-module="research.hero"],
  [data-dpp-module="company.hero"]
) .dpp-rich-text {
  color: rgb(255 255 255 / 82%);
  font-size: 14px;
  font-weight: 300;
  line-height: 1.9;
  max-width: 680px;
}

:is(
  [data-dpp-module="brand.hero"],
  [data-dpp-module="research.hero"],
  [data-dpp-module="company.hero"]
) .dpp-eyebrow {
  color: var(--dpp-white);
  font-size: 10px;
  font-weight: 700;
  gap: 10px;
  letter-spacing: 2px;
  line-height: 15px;
  margin-bottom: 25px;
}

:is(
  [data-dpp-module="brand.hero"],
  [data-dpp-module="research.hero"],
  [data-dpp-module="company.hero"]
) .dpp-eyebrow::before {
  background: var(--dpp-white) !important;
  flex: 0 0 20px;
  height: 2px;
  width: 20px;
}

.dpp-b2-section,
.dpp-b2-section .dpp-collection__item {
  min-height: 0 !important;
}

.dpp-b2-section {
  background: var(--dpp-white);
  color: var(--dpp-ink);
  padding-block: 128px;
}

.dpp-b2-heading {
  margin-bottom: 72px;
  max-width: 940px;
}

.dpp-b2-heading > .dpp-eyebrow {
  color: #676a66;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 2px;
  line-height: 15px;
  margin-bottom: 25px;
}

.dpp-b2-heading > .dpp-eyebrow::before {
  background: var(--dpp-orange);
  flex: 0 0 20px;
  height: 2px;
  width: 20px;
}

.dpp-b2-heading h2 {
  font-size: clamp(48px, 4.2vw, 57.25px);
  font-weight: 500;
  letter-spacing: -0.045em;
  line-height: 1.15;
  margin: 0;
}

.dpp-b2-heading__subtitle {
  color: var(--dpp-muted);
  font-size: 15px;
  font-weight: 300;
  line-height: 1.9;
  margin: 22px 0 0;
  max-width: 820px;
}

.dpp-b2-heading.is-inverse,
.dpp-b2-heading.is-inverse > .dpp-eyebrow,
.dpp-b2-heading.is-inverse h2 {
  color: var(--dpp-white);
}

.dpp-b2-heading.is-inverse > .dpp-eyebrow::before {
  background: var(--dpp-white) !important;
}

[data-dpp-module="brand.values"] .dpp-b2-heading > .dpp-eyebrow {
  color: var(--dpp-ink);
  font-size: 14px;
  letter-spacing: 2.8px;
  line-height: 21px;
}

.dpp-b2-heading.is-inverse .dpp-b2-heading__subtitle {
  color: rgb(255 255 255 / 78%);
}

.dpp-b2-prose {
  color: #343532;
  font-size: 18px;
  font-weight: 300;
  line-height: 1.95;
}

.dpp-b2-prose p {
  margin: 0 0 24px;
}

.dpp-b2-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  list-style: none;
  margin: 30px 0 0;
  padding: 0;
}

.dpp-b2-tags li {
  border: 1px solid var(--dpp-line);
  border-radius: 999px;
  color: var(--dpp-muted);
  font-size: 11px;
  line-height: 1;
  padding: 9px 13px;
}

/* A01-A08: brand story and declaration. */
.dpp-b2-section--brand-story {
  padding-bottom: 0;
}

[data-dpp-module="brand.story"] .dpp-b2-story__chapter {
  background: transparent;
  border-top: 1px solid var(--dpp-line);
  color: var(--dpp-ink);
  display: grid;
  gap: 80px;
  grid-template-columns: minmax(240px, 0.48fr) minmax(0, 1.52fr);
  min-height: 0;
  overflow: visible;
  padding-block: 88px;
}

[data-dpp-module="brand.story"] .dpp-b2-story__chapter:last-child {
  background: transparent;
  border-bottom: 1px solid var(--dpp-line);
  color: var(--dpp-ink);
  min-height: 0;
}

.dpp-b2-story__topic {
  align-self: start;
  display: grid;
  gap: 26px;
  position: sticky;
  top: 154px;
}

.dpp-b2-story__topic span {
  color: var(--dpp-orange-deep);
  font-family: "Alibaba PuHuiTi", "Microsoft YaHei", sans-serif;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 1.2px;
  line-height: 15px;
}

.dpp-b2-story__topic h3 {
  color: #171816;
  font-family: "Alibaba PuHuiTi", "Microsoft YaHei", sans-serif;
  font-size: clamp(36px, 3.75vw, 54px);
  font-weight: 500;
  letter-spacing: 0;
  line-height: 1.3;
  margin: 0;
}

.dpp-b2-story__copy {
  max-width: 940px;
}

.dpp-b2-story__copy .dpp-b2-prose {
  color: #343532;
  font-family: "Alibaba PuHuiTi", "Microsoft YaHei", sans-serif;
  font-size: clamp(18px, 1.28vw, 18.432px);
  font-weight: 300;
  letter-spacing: 0;
  line-height: 1.78;
}

.dpp-b2-story__copy blockquote {
  border-left: 3px solid var(--dpp-orange);
  font-size: 21px;
  font-weight: 500;
  line-height: 1.7;
  margin: 34px 0 0;
  padding-left: 24px;
}

.dpp-b2-story__declaration {
  background: var(--dpp-orange);
  color: var(--dpp-white);
  margin-block: 112px;
  padding: 64px;
}

.dpp-b2-story__declaration h3 {
  font-size: clamp(42px, 4.2vw, 53px);
  font-weight: 500;
  letter-spacing: -0.045em;
  line-height: 1.5;
  margin: 0 0 34px;
  max-width: 960px;
}

.dpp-b2-story__declaration .dpp-b2-prose {
  color: rgb(255 255 255 / 82%);
  max-width: 760px;
}

.dpp-b2-story__declaration strong {
  display: block;
  font-size: clamp(24px, 2.2vw, 32px);
  font-weight: 500;
  margin-top: 42px;
}

/* A09-A13: mission, vision and values. */
.dpp-b2-section--brand-purpose {
  border-bottom: 1px solid var(--dpp-line);
  border-top: 1px solid var(--dpp-line);
}

.dpp-b2-purpose__grid {
  border-top: 1px solid var(--dpp-ink);
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.dpp-b2-purpose__card {
  background: var(--dpp-white);
  border-color: var(--dpp-line);
  display: flex;
  flex-direction: column;
  padding: 52px 48px 52px 0;
}

.dpp-b2-purpose__card + .dpp-b2-purpose__card {
  border-left: 1px solid var(--dpp-line);
  padding-left: 48px;
}

.dpp-b2-purpose__label {
  font-size: clamp(25px, 2.6vw, 36px);
  font-weight: 500;
  letter-spacing: -0.03em;
  margin: 0 0 96px;
}

.dpp-b2-purpose__card h3 {
  font-size: clamp(36px, 4vw, 54px);
  font-weight: 400;
  letter-spacing: -0.04em;
  line-height: 1.35;
  margin: 0 0 24px;
}

.dpp-b2-purpose__card .dpp-b2-prose {
  color: var(--dpp-muted);
  font-size: 14px;
}

.dpp-b2-values__grid {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.dpp-b2-values__card {
  background: var(--dpp-white);
  border: 1px solid var(--dpp-line);
  display: flex;
  flex-direction: column;
  padding: 28px;
}

[data-dpp-module="brand.values"] .dpp-b2-values__card:nth-child(3n + 2) {
  background: var(--dpp-white);
  border-top-color: var(--dpp-line);
}

[data-dpp-module="brand.purpose"] .dpp-b2-purpose__card:nth-child(3n + 2) {
  background: var(--dpp-white);
  border-top-color: var(--dpp-line);
}

[data-dpp-module="brand.purpose"] .dpp-b2-purpose__card--mission {
  border-left-color: transparent;
}

[data-dpp-module="brand.purpose"] .dpp-b2-purpose__card--vision {
  border-right-color: transparent;
}

.dpp-b2-values__card > span,
.dpp-b2-needs__item > span,
.dpp-b2-engineering__card > span,
.dpp-b2-research-module > span,
.dpp-b2-tests__card > span,
.dpp-b2-capability > span,
.dpp-b2-team__card > span {
  color: var(--dpp-orange-deep);
  font-size: 10px;
  letter-spacing: 0.12em;
}

.dpp-b2-values__card h3 {
  font-size: 30px;
  font-weight: 500;
  margin: 70px 0 8px;
}

[data-dpp-module="brand.values"] .dpp-b2-heading h2 {
  font-size: clamp(54px, 5.42vw, 78px);
  font-weight: 500;
  letter-spacing: -0.045em;
  line-height: 1.15;
}

:is(
  [data-dpp-module="brand.purpose"],
  [data-dpp-module="brand.values"],
  [data-dpp-module="research.capabilities"],
  [data-dpp-module="research.tests"],
  [data-dpp-module="company.capabilities"]
) .dpp-b2-tags {
  gap: 6px;
}

:is(
  [data-dpp-module="brand.purpose"],
  [data-dpp-module="brand.values"],
  [data-dpp-module="research.capabilities"],
  [data-dpp-module="company.capabilities"]
) .dpp-b2-tags li {
  background: transparent;
  border: 1px solid var(--dpp-ink);
  border-radius: 0;
  color: var(--dpp-ink);
  font-size: 9px;
  line-height: 13.5px;
  padding: 6px 8px;
}

.dpp-b2-values__card h4 {
  font-size: 12px;
  font-weight: 500;
  line-height: 1.5;
  margin: 0 0 24px;
}

.dpp-b2-values__card .dpp-b2-prose {
  color: var(--dpp-muted);
  font-size: 12px;
}

/* R01-R06: needs and engineering system. */
.dpp-b2-needs__list {
  border-bottom: 1px solid var(--dpp-line);
}

.dpp-b2-needs__item {
  align-items: start;
  background: var(--dpp-white);
  border-top: 1px solid var(--dpp-line);
  display: grid;
  gap: 24px;
  grid-template-columns: 70px 150px 120px 1fr 120px 1fr;
  padding-block: 34px;
}

.dpp-b2-needs__item h3 {
  font-size: 38px;
  font-weight: 500;
  line-height: 1.5;
  margin: 0;
}

.dpp-b2-needs__item strong {
  color: var(--dpp-orange-deep);
  font-size: 12px;
  padding-top: 8px;
}

.dpp-b2-needs__item p {
  color: #3f413e;
  font-size: 14px;
  line-height: 1.9;
  margin: 0;
}

.dpp-b2-section--research-engineering {
  background: var(--dpp-warm);
}

.dpp-b2-engineering__grid {
  display: grid;
  gap: 18px;
  grid-template-columns: repeat(6, minmax(0, 1fr));
}

.dpp-b2-engineering__card {
  background: var(--dpp-white);
  border-top: 4px solid var(--dpp-orange);
  box-shadow: 0 18px 50px rgb(21 22 20 / 8%);
  display: flex;
  flex-direction: column;
  min-height: 430px;
  overflow: visible !important;
  padding: 26px 24px;
  position: relative;
}

.dpp-b2-engineering__number {
  color: var(--dpp-orange-deep);
  font-size: 34px;
  font-weight: 300;
  line-height: 1;
}

.dpp-b2-engineering__title {
  color: var(--dpp-ink);
  font-size: 22px;
  font-weight: 500;
  letter-spacing: -0.02em;
  line-height: 1.35;
  margin: 42px 0 12px;
}

.dpp-b2-engineering__subtitle {
  color: #343532;
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0;
  line-height: 1.7;
  margin: 0 0 24px;
}

.dpp-b2-engineering__description {
  border-top: 1px solid var(--dpp-line);
  color: var(--dpp-muted);
  font-size: 11px;
  font-weight: 300;
  line-height: 1.75;
  margin-top: auto;
  padding-top: 18px;
}

.dpp-b2-engineering__connector {
  align-items: center;
  background: var(--dpp-orange);
  border-radius: 50%;
  color: var(--dpp-white);
  display: flex;
  font-size: 17px;
  font-style: normal;
  height: 34px;
  justify-content: center;
  line-height: 1;
  position: absolute;
  right: -27px;
  top: calc(50% - 17px);
  width: 34px;
  z-index: 2;
}

.dpp-b2-engineering__footer {
  border-top: 1px solid var(--dpp-ink);
  margin-top: 52px;
  padding-top: 20px;
  text-align: center;
}

.dpp-b2-engineering__footer span {
  font-size: 13px;
  font-weight: 500;
  letter-spacing: 0.14em;
}

/* R07-R10: six vertical research rows and interaction. */
.dpp-b2-research-modules {
  border-bottom: 1px solid var(--dpp-line);
}

.dpp-b2-research-module {
  background: var(--dpp-white);
  border-top: 1px solid var(--dpp-line);
  display: grid;
  gap: 20px;
  grid-template-columns: 70px 1fr;
  padding-block: 37px;
  transition: transform 200ms ease;
}

[data-dpp-module="research.capabilities"] .dpp-b2-research-module:nth-child(3n + 2) {
  background: var(--dpp-white);
  border-top-color: var(--dpp-line);
}

[data-dpp-module="research.capabilities"] .dpp-b2-research-module {
  border-top: 1px solid var(--dpp-line) !important;
}

[data-dpp-module="research.dimensions"] .dpp-b2-needs__item:nth-child(3n + 2) {
  background: var(--dpp-white);
  border-top-color: var(--dpp-line);
}

[data-dpp-module="research.dimensions"] .dpp-b2-needs__item {
  border-top: 1px solid var(--dpp-line) !important;
}

.dpp-b2-research-module:hover,
.dpp-b2-research-module:focus-visible {
  transform: translateX(14px);
}

.dpp-b2-research-module h3 {
  font-size: 29px;
  font-weight: 500;
  line-height: 1.5;
  margin: 0 0 8px;
}

.dpp-b2-research-module h4 {
  font-size: 12px;
  font-weight: 500;
  line-height: 1.5;
  margin: 0 0 17px;
}

.dpp-b2-research-module .dpp-b2-prose {
  color: var(--dpp-muted);
  font-size: 13px;
  line-height: 1.9;
  max-width: 900px;
}

/* R11-R13: validation band. */
.dpp-b2-section--research-tests {
  background: var(--dpp-orange);
  color: var(--dpp-white);
}

.dpp-b2-tests__grid {
  border-left: 1px solid rgb(255 255 255 / 42%);
  border-top: 1px solid rgb(255 255 255 / 42%);
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
}

.dpp-b2-tests__card {
  border-bottom: 1px solid rgb(255 255 255 / 42%);
  border-right: 1px solid rgb(255 255 255 / 42%);
  padding: 28px;
}

[data-dpp-module="research.tests"] .dpp-b2-tests__card:nth-child(3n + 2) {
  border-top-color: rgb(255 255 255 / 42%);
}

.dpp-b2-tests__number {
  color: var(--dpp-white);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 1.2px;
  line-height: 15px;
}

[data-dpp-module="research.tests"] .dpp-b2-tests__number {
  color: var(--dpp-white);
}

.dpp-b2-tests__title {
  font-size: 26px;
  font-weight: 500;
  letter-spacing: -0.02em;
  line-height: 1.25;
  margin: 60px 0 18px;
}

.dpp-b2-tests__subtitle {
  color: var(--dpp-white);
  font-size: 13px;
  font-weight: 500;
  letter-spacing: 0;
  line-height: 1.65;
  margin: -4px 0 12px;
}

.dpp-b2-tests__description {
  color: rgb(255 255 255 / 82%);
  font-size: 12px;
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.85;
  margin: 0;
}

.dpp-b2-tests__tags {
  margin-top: 60px;
}

.dpp-b2-tests__tags li {
  background: transparent;
  border-color: rgb(255 255 255 / 58%);
  border-radius: 0;
  color: var(--dpp-white);
  font-size: 9px;
  line-height: 13.5px;
  padding: 6px 8px;
}

/* C03-C07: company narrative and capabilities. */
.dpp-b2-company-about__layout {
  align-items: stretch;
  display: grid;
  gap: 80px;
  grid-template-columns: 1.2fr 0.8fr;
}

.dpp-b2-company-about__copy {
  font-size: 18px;
  line-height: 2;
}

.dpp-b2-company-about__facts {
  background: var(--dpp-warm);
  box-sizing: border-box;
  height: 100%;
  margin: 0;
  padding: 30px;
}

.dpp-b2-company-about__facts > div {
  border-bottom: 1px solid var(--dpp-line);
  padding: 14px 0;
}

.dpp-b2-company-about__facts dt {
  font-size: 10px;
  margin-bottom: 6px;
}

.dpp-b2-company-about__facts dd {
  font-size: 13px;
  line-height: 1.7;
  margin: 0;
}

.dpp-b2-capabilities__grid {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.dpp-b2-capability {
  background: var(--dpp-warm);
  padding: 28px;
}

.dpp-b2-capability h3 {
  font-size: 28px;
  font-weight: 500;
  margin: 35px 0 6px;
}

.dpp-b2-capability h4 {
  font-size: 12px;
  line-height: 1.6;
  margin: 0 0 18px;
}

.dpp-b2-capability p {
  color: var(--dpp-muted);
  font-size: 12px;
  line-height: 1.8;
}

/* C08-C10: team. */
.dpp-b2-section--company-team {
  background: var(--dpp-ink);
  color: var(--dpp-white);
}

.dpp-b2-team__photo {
  aspect-ratio: 16 / 7;
  background: #252621;
  border-radius: 0;
  max-height: 560px;
  width: 100%;
}

.dpp-b2-team__photo .dpp-media__image {
  object-fit: cover;
}

.dpp-b2-team__photo--empty {
  align-items: center;
  color: rgb(255 255 255 / 48%);
  display: flex;
  justify-content: center;
  letter-spacing: 0.12em;
}

.dpp-b2-team__grid {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-top: 10px;
}

[data-dpp-module="company.team"] .dpp-b2-team__card,
[data-dpp-module="company.team"] .dpp-b2-team__card:nth-child(3n + 2) {
  background: #232420;
  border: 1px solid #363733;
  display: block;
  padding: 25px;
}

.dpp-b2-team__card h3 {
  font-size: 25px;
  font-weight: 500;
  margin: 30px 0 10px;
}

.dpp-b2-team__card p {
  color: #aaa;
  font-size: 12px;
  line-height: 1.8;
}

/* C11-C16: unlimited journey and natural document flow. */
.dpp-b2-journey__list {
  border-bottom: 1px solid var(--dpp-line);
}

[data-dpp-module="company.journey"] .dpp-b2-journey__item {
  align-items: start;
  border-top: 1px solid var(--dpp-line);
  display: grid;
  gap: 32px;
  grid-template-columns: 220px 260px minmax(0, 1fr);
  padding-block: 28px;
}

.dpp-b2-journey__year {
  color: var(--dpp-orange-deep);
  font-size: 32px;
  font-weight: 500;
  line-height: 1.15;
  white-space: nowrap;
}

.dpp-b2-journey__title {
  font-size: 25px;
  font-weight: 500;
  line-height: 1.5;
  margin: 0;
}

.dpp-b2-journey__description {
  color: var(--dpp-muted);
  font-size: 13px;
  line-height: 1.9;
  margin: 0;
}

/* C17: Work with us. */
.dpp-b2-section--company-contact {
  background: var(--dpp-warm);
}

[data-dpp-module="company.contact"] .dpp-b2-heading {
  margin-bottom: 34px;
}

.dpp-b2-contact {
  padding-block: 0;
}

.dpp-b2-contact__details {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  margin-bottom: 20px;
  max-width: 1040px;
}

.dpp-b2-contact__actions {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(3, minmax(168px, max-content));
  justify-content: start;
}

.dpp-b2-contact__detail,
.dpp-b2-contact__action {
  min-width: 0;
}

.dpp-b2-contact__label {
  color: var(--dpp-muted);
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 1.8px;
  line-height: 13.5px;
  margin: 0 0 8px;
}

.dpp-b2-contact__value {
  color: var(--dpp-ink);
  display: block;
  font-size: 14px;
  font-weight: 300;
  letter-spacing: 0;
  line-height: 1.7;
}

.dpp-b2-contact__link {
  align-items: center;
  border: 1px solid var(--dpp-ink);
  color: var(--dpp-ink);
  display: flex;
  font-size: 13px;
  font-weight: 500;
  gap: 20px;
  justify-content: space-between;
  line-height: 1.4;
  min-height: 48px;
  min-width: 168px;
  padding: 10px 18px;
  text-decoration: none;
}

.dpp-b2-contact__action:first-child .dpp-b2-contact__link {
  background: var(--dpp-orange);
  border-color: var(--dpp-orange);
  color: var(--dpp-white);
}

.dpp-b2-contact__link:hover,
.dpp-b2-contact__link:focus-visible {
  background: var(--dpp-ink);
  color: var(--dpp-white);
}

.dpp-b2-contact small {
  color: var(--dpp-muted);
  display: block;
  font-size: 12px;
  line-height: 1.8;
  margin-top: 12px;
}

@media (min-width: 821px) and (max-width: 1180px) {
  .dpp-b2-engineering__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .dpp-b2-engineering__card:nth-child(3) .dpp-b2-engineering__connector {
    bottom: -26px;
    left: calc(50% - 17px);
    right: auto;
    top: auto;
    transform: rotate(90deg);
  }
}

/* Remove only the B2 historical fixed-height simulation. */
@media (min-width: 1181px) {
  :is(
    [data-dpp-module="brand.story"],
    [data-dpp-module="brand.purpose"],
    [data-dpp-module="brand.values"],
    [data-dpp-module="research.dimensions"],
    [data-dpp-module="research.engineering"],
    [data-dpp-module="research.capabilities"],
    [data-dpp-module="research.tests"],
    [data-dpp-module="company.about"],
    [data-dpp-module="company.capabilities"],
    [data-dpp-module="company.team"],
    [data-dpp-module="company.journey"],
    [data-dpp-module="company.contact"]
  ) {
    height: auto !important;
    min-height: 0 !important;
  }
}

@media (max-width: 1100px) {
  .dpp-b2-needs__item {
    grid-template-columns: 55px 110px 90px 1fr;
  }

  .dpp-b2-needs__item strong:nth-of-type(2),
  .dpp-b2-needs__item p:nth-of-type(2) {
    grid-column: 3 / -1;
  }

  .dpp-b2-tests__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 820px) {
  :is(
    [data-dpp-module="brand.hero"],
    [data-dpp-module="research.hero"],
    [data-dpp-module="company.hero"]
  ) {
    min-height: 680px;
  }

  :is(
    [data-dpp-module="brand.hero"],
    [data-dpp-module="research.hero"],
    [data-dpp-module="company.hero"]
  ) .dpp-hero__content {
    padding-block: 88px 70px;
  }

  .dpp-b2-section {
    padding-block: 90px;
  }

  .dpp-b2-heading {
    margin-bottom: 48px;
  }

  .dpp-b2-heading h2 {
    font-size: clamp(38px, 11vw, 48px);
  }

  [data-dpp-module="brand.story"] .dpp-b2-story__chapter {
    gap: 24px;
    grid-template-columns: 1fr;
    padding-block: 64px;
  }

  .dpp-b2-story__topic {
    position: static;
  }

  .dpp-b2-story__declaration {
    margin-block: 78px;
    padding: 42px 30px;
  }

  .dpp-b2-purpose__grid,
  .dpp-b2-values__grid,
  .dpp-b2-engineering__grid,
  .dpp-b2-tests__grid,
  .dpp-b2-company-about__layout,
  .dpp-b2-capabilities__grid,
  .dpp-b2-team__grid,
  .dpp-b2-contact__actions {
    grid-template-columns: 1fr;
  }

  .dpp-b2-purpose__card,
  .dpp-b2-purpose__card + .dpp-b2-purpose__card {
    border-left: 0;
    border-top: 1px solid var(--dpp-line);
    padding: 40px 0;
  }

  .dpp-b2-purpose__label {
    margin-bottom: 64px;
  }

  .dpp-b2-needs__item {
    gap: 16px;
    grid-template-columns: 44px 1fr;
  }

  .dpp-b2-needs__item > * {
    grid-column: 2 !important;
  }

  .dpp-b2-needs__item > span {
    grid-column: 1 !important;
    grid-row: 1 / 6;
  }

  .dpp-b2-research-module {
    grid-template-columns: 44px 1fr;
  }

  .dpp-b2-research-module:hover,
  .dpp-b2-research-module:focus-visible {
    transform: none;
  }

  .dpp-b2-team__photo {
    aspect-ratio: 4 / 3;
  }

  .dpp-b2-engineering__card {
    min-height: 0;
  }

  .dpp-b2-engineering__connector {
    bottom: -26px;
    left: calc(50% - 17px);
    right: auto;
    top: auto;
    transform: rotate(90deg);
  }

  [data-dpp-module="company.journey"] .dpp-b2-journey__item {
    gap: 10px;
    grid-template-areas:
      "date"
      "title"
      "description";
    grid-template-columns: minmax(0, 1fr);
  }

  [data-dpp-module="company.journey"] .dpp-b2-journey__year {
    font-size: 28px;
    grid-area: date;
  }

  [data-dpp-module="company.journey"] .dpp-b2-journey__title {
    grid-area: title;
  }

  [data-dpp-module="company.journey"] .dpp-b2-journey__description {
    grid-area: description;
  }

  .dpp-b2-contact {
    padding-block: 0;
  }

  .dpp-b2-contact__details {
    margin-bottom: 24px;
  }

  .dpp-b2-contact__value {
    font-size: 14px;
  }

  .dpp-b2-contact__link {
    min-height: 52px;
  }
}

@media (max-width: 390px) {
  .dpp-b2-prose,
  .dpp-b2-story__copy .dpp-b2-prose {
    font-size: 17px;
  }

  .dpp-b2-values__card,
  .dpp-b2-engineering__card,
  .dpp-b2-tests__card,
  .dpp-b2-capability,
  .dpp-b2-team__card {
    padding: 24px;
  }

  .dpp-b2-tests__tags {
    gap: 7px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .dpp-b2-research-module {
    transition: none;
  }

  .dpp-b2-research-module:hover,
  .dpp-b2-research-module:focus-visible {
    transform: none;
  }
}
