section.page-section.landing > section {
  flex: 0 0 auto;
  display: flex;
  padding-block: var(--theme-page-spacing-block-primary);
}

section.page-section.landing section.description {
  flex-basis: 55%;
  flex-direction: column;
  padding-inline-start: var(--theme-page-spacing-inline-primary);
}

section.page-section.landing section.description h1 {
  margin-block-end: 2vh;
}

section.page-section.landing section.description summary {
  display: flex;
  flex-direction: column;
  font-size: var(--theme-font-size-header-4);
  line-height: var(--theme-line-height-secondary);
  margin-block-end: calc(var(--theme-page-spacing-block-primary) * 1.25);
}

section.page-section.landing section.illustration {
  flex-basis: 45%;
  justify-content: center;
  padding-inline: var(--theme-page-spacing-inline-primary);
}

section.page-section:is(.landing, .why-us) section.illustration figure {
  flex-direction: column;
  gap: 2vh;
  transform-style: preserve-3d;
  perspective: var(--transformation-perspective);
}

section.page-section.landing section.illustration figure> :is(img, figcaption) {
  transform: rotateY(calc(var(--theme-illustration-transform-rotate-y-primary) * -1));
}

section.page-section.landing section.illustration figure img {
  border-radius: 6% / 5%;
  box-shadow: var(--theme-box-shadow-inset-primary) var(--theme-box-shadow-inset-primary) var(--theme-box-shadow-blur-primary) var(--theme-box-shadow-color-primary);
}

section.page-section.landing section.illustration figure figcaption {
  font-size: var(--theme-font-size-secondary);
}

section.page-section.why-us {
  flex-direction: column;
}

section.page-section.why-us h3 {
  padding-block-start: var(--theme-page-spacing-block-primary);
  padding-inline: var(--theme-page-spacing-inline-primary);
  text-align: center;
}

section.page-section.why-us article.reason {
  display: flex;
  padding-block: calc(var(--theme-page-spacing-block-primary) * 1.2);
}

section.page-section.why-us article.reason:nth-of-type(odd) {
  flex-direction: row-reverse;
}

section.page-section.why-us article.reason section {
  flex: 0 0 auto;
  display: flex;
  justify-content: center;
}

section.page-section.why-us article.reason section.description {
  flex-basis: 60%;
  flex-direction: column;
}

section.page-section.why-us article.reason:nth-of-type(odd) section.description {
  padding-inline-end: var(--theme-page-spacing-inline-primary);
}

section.page-section.why-us article.reason:nth-of-type(even) section.description {
  padding-inline-start: var(--theme-page-spacing-inline-primary);
}

section.page-section.why-us article.reason section.description h4 {
  margin-block-end: 0.8em;
}

section.page-section.why-us article.reason section.illustration {
  flex-basis: 40%;
  align-items: center;
  padding-inline: var(--theme-page-spacing-inline-primary);
}

section.page-section.why-us article.reason section.illustration figure img {
  --page-why-us-reason-illustration-transform-rotate-y: var(--theme-illustration-transform-rotate-y-primary);
  --page-why-us-reason-illustration-box-shadow-inset: calc(var(--theme-box-shadow-inset-primary) * -1);

  border-radius: 6% / 9%;
  transform: rotateY(var(--page-why-us-reason-illustration-transform-rotate-y));
  box-shadow: var(--page-why-us-reason-illustration-box-shadow-inset) var(--theme-box-shadow-inset-primary) var(--theme-box-shadow-blur-primary) var(--theme-box-shadow-color-primary);
}

section.page-section.why-us article.reason:nth-of-type(even) section.illustration figure img {
  --page-why-us-reason-illustration-transform-rotate-y: calc(var(--theme-illustration-transform-rotate-y-primary) * -1);
  --page-why-us-reason-illustration-box-shadow-inset: var(--theme-box-shadow-inset-primary);
}

@media (max-width: 992px) {
  section.page-section:is(.landing) {
    flex-direction: column;
  }

  section.page-section.landing section.description {
    padding-inline-end: var(--theme-page-spacing-inline-primary);
  }

  section.page-section.landing section.illustration {
    padding-block-start: 0;
  }

  section.page-section:is(.landing, .why-us) section.illustration figure {
    --transformation-perspective: none;

    padding-inline: var(--theme-page-spacing-inline-primary);
  }

  section.page-section.why-us article.reason:is(:nth-of-type(even), :nth-of-type(odd)) {
    flex-direction: column;
  }

  section.page-section.why-us article.reason:is(:nth-of-type(even), :nth-of-type(odd)) section.description {
    padding-inline: var(--theme-page-spacing-inline-primary);
  }

  section.page-section.why-us article.reason:is(:nth-of-type(even), :nth-of-type(odd)) section.illustration {
    padding-block-start: var(--theme-page-spacing-block-primary);
  }
}