.fv {
  padding: 220px 0 220px;
}
@media screen and (max-width: 640px) {
  .fv {
    padding: 120px 0 120px;
  }
}
.fv__text {
  margin-top: 60px;
}
@media screen and (max-width: 640px) {
  .fv__text {
    margin-top: 90px;
  }
}
.fv__text p {
  margin: 0;
}

.role-change {
  padding: 100px 0 150px;
}
@media screen and (max-width: 640px) {
  .role-change {
    padding: 80px 0 100px;
  }
}
.role-change__lead {
  margin-top: 130px;
}
@media screen and (max-width: 640px) {
  .role-change__lead {
    margin-top: 80px;
  }
}
.role-change__lead p {
  margin: 0;
}
.role-change__source {
  margin: 16px 0 0;
  font-size: 16px;
  line-height: 1.7;
  text-decoration: underline;
}
@media screen and (max-width: 640px) {
  .role-change__source {
    font-size: 13px;
  }
}
.role-change__source a {
  color: inherit;
}
.role-change .charts-css-wrap {
  padding: 120px 0 0;
}
@media screen and (max-width: 640px) {
  .role-change .charts-css-wrap .charts-css.column tbody {
    aspect-ratio: 1/1;
  }
}
@media screen and (max-width: 640px) {
  .role-change .charts-css-wrap .charts-css.column.data-spacing-20 tbody tr {
    padding-inline: 5px;
  }
}
.role-change .charts-css-wrap .column tbody td {
  transform-origin: bottom;
  -webkit-animation: revealing-bars 3s linear infinite;
          animation: revealing-bars 3s linear infinite;
}
@-webkit-keyframes revealing-bars {
  0% {
    transform: scaleY(0);
  }
  30% {
    transform: scaleY(1);
  }
}
@keyframes revealing-bars {
  0% {
    transform: scaleY(0);
  }
  30% {
    transform: scaleY(1);
  }
}
.role-change .charts-css-wrap .charts-css.column {
  --labels-size: 3.5rem;
}
@media screen and (max-width: 640px) {
  .role-change .charts-css-wrap .charts-css.column {
    --labels-size: 2.5rem;
  }
}
.role-change__body {
  margin-top: 95px;
}
@media screen and (max-width: 640px) {
  .role-change__body {
    margin-top: 70px;
  }
}
.role-change__body p {
  margin: 0;
}

.dark-section-wrap {
  position: relative;
  overflow: hidden;
  color: #fff;
  z-index: 0;
}

.dark-section-bg {
  background-color: #181818;
  position: fixed;
  inset: 0;
  margin: auto;
  opacity: 0;
  visibility: hidden;
  z-index: 0;
}

.design-value,
.web-possibility {
  position: relative;
  z-index: 1;
}

.design-value {
  padding: 150px 0 150px;
}
@media screen and (max-width: 640px) {
  .design-value {
    padding: 100px 0 100px;
  }
}
.design-value__text {
  margin-top: 120px;
}
@media screen and (max-width: 640px) {
  .design-value__text {
    margin-top: 80px;
  }
}
.design-value__text p {
  margin: 0;
}

.web-possibility {
  padding: 150px 0 150px;
}
@media screen and (max-width: 640px) {
  .web-possibility {
    padding: 100px 0 100px;
  }
}
.web-possibility__lead {
  margin: 115px 0 0;
}
@media screen and (max-width: 640px) {
  .web-possibility__lead {
    margin-top: 80px;
  }
}
.web-possibility__list {
  margin-top: 105px;
}
@media screen and (max-width: 640px) {
  .web-possibility__list {
    margin-top: 70px;
  }
}
.web-possibility__item {
  margin-top: 80px;
}
@media screen and (max-width: 640px) {
  .web-possibility__item {
    margin-top: 50px;
  }
}
.web-possibility__item:first-child {
  margin-top: 0;
}
.web-possibility__item p {
  margin: 0;
}
.web-possibility__item-title {
  margin-bottom: 18px;
}

.light-section-wrap {
  position: relative;
  overflow: hidden;
  z-index: 0;
}

.light-section-bg {
  background-color: #F2F0EC;
  position: fixed;
  inset: 0;
  margin: auto;
  opacity: 0;
  visibility: hidden;
  z-index: 0;
}

.self-contained {
  padding: 150px 0 150px;
}
@media screen and (max-width: 640px) {
  .self-contained {
    padding: 100px 0 100px;
  }
}
.self-contained__text {
  margin-top: 115px;
}
@media screen and (max-width: 640px) {
  .self-contained__text {
    margin-top: 80px;
  }
}
.self-contained__text p {
  margin: 0;
}
.self-contained__text p:nth-child(5) {
  margin-bottom: 48px;
}

.technical-partner {
  padding: 150px 0 150px;
}
@media screen and (max-width: 640px) {
  .technical-partner {
    padding: 100px 0 100px;
  }
}
.technical-partner__lead {
  margin-top: 130px;
}
@media screen and (max-width: 640px) {
  .technical-partner__lead {
    margin-top: 80px;
  }
}
.technical-partner__lead p {
  margin: 0;
}
.technical-partner__message {
  margin-top: 145px;
}
@media screen and (max-width: 640px) {
  .technical-partner__message {
    margin-top: 100px;
  }
}
.technical-partner__message-text {
  margin-top: 70px;
}
@media screen and (max-width: 640px) {
  .technical-partner__message-text {
    margin-top: 50px;
  }
}
.technical-partner__message-text p {
  margin: 0;
}
.technical-partner__closing {
  margin: 80px 0 0;
  font-size: clamp(26px, 14.2448979592px + 1.5306122449vw, 32px);
  font-weight: 700;
  line-height: 1.7;
}
@media screen and (max-width: 640px) {
  .technical-partner__closing {
    margin-top: 50px;
    font-size: 22px;
  }
}

.support-list {
  margin-top: 115px;
}
@media screen and (max-width: 640px) {
  .support-list {
    margin-top: 70px;
  }
}
.support-list__title {
  margin: 0;
  font-weight: 400;
}
.support-list__items {
  margin: 65px 0 0;
}
.support-list__item {
  display: grid;
  grid-template-columns: 220px 1fr;
  gap: 40px;
  margin-top: 62px;
}
@media screen and (max-width: 640px) {
  .support-list__item {
    grid-template-columns: 1fr;
    gap: 0px;
    margin-top: 40px;
  }
}
.support-list__item:first-child {
  margin-top: 0;
}
@media screen and (max-width: 640px) {
  .support-list__item:first-child {
    margin-top: 40px;
  }
}
.support-list__item dt {
  font-weight: 700;
}
.support-list__item dd {
  margin: 0;
}

.grow-business {
  padding: 150px 0 150px;
}
@media screen and (max-width: 640px) {
  .grow-business {
    padding: 100px 0 100px;
  }
}
.grow-business__lead {
  margin-top: 120px;
}
@media screen and (max-width: 640px) {
  .grow-business__lead {
    margin-top: 80px;
  }
}
.grow-business__lead p {
  margin: 0;
}
.grow-business__lead p:nth-child(3) {
  margin-bottom: 32px;
}
.grow-business__items {
  margin-top: 100px;
}
@media screen and (max-width: 640px) {
  .grow-business__items {
    margin-top: 60px;
  }
}
.grow-business__item {
  margin-top: 70px;
}
@media screen and (max-width: 640px) {
  .grow-business__item {
    margin-top: 40px;
  }
}
.grow-business__item:first-child {
  margin-top: 0;
}
@media screen and (max-width: 640px) {
  .grow-business__item:first-child {
    margin-top: 40px;
  }
}
.grow-business__item h3 {
  margin-bottom: 18px;
}
.grow-business__item p {
  margin: 0;
}

.cta {
  padding: 100px 0 125px;
  background-color: #F2F0EC;
  text-align: center;
}
@media screen and (max-width: 640px) {
  .cta {
    text-align: left;
  }
}
.cta__lead {
  margin: 28px 0 0;
}
.cta__button {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  max-width: 690px;
  min-height: 80px;
  margin: 100px auto 0;
  border-radius: 8px;
  background-color: #496d80;
  color: #fff;
  line-height: 1.7;
  box-shadow: 0 6px 8px rgba(0, 0, 0, 0.2);
}
@media screen and (max-width: 640px) {
  .cta__button {
    margin: 60px auto 0;
  }
}
.cta__button:hover {
  color: #fff;
}
.cta__text {
  margin-top: 95px;
}
@media screen and (max-width: 640px) {
  .cta__text {
    margin-top: 60px;
  }
}
.cta__text p {
  margin: 0;
}