 .u-section-1 {
  min-height: 1027px;
}

.u-section-1 .u-shape-1 {
  width: calc(((100% - 1140px) / 2) + 490px);
  height: 866px;
  background-image: none;
  margin: 161px 0 0 auto;
}

.u-section-1 .u-shape-2 {
  width: calc(((100% - 1140px) / 2) + 640px);
  height: 530px;
  background-image: none;
  margin: -1027px auto 0 0;
}

.u-section-1 .u-image-1 {
  width: 1140px;
  height: 576px;
  margin: -447px auto 0;
}

.u-section-1 .u-group-1 {
  width: 456px;
  min-height: 419px;
  box-shadow: 5px 5px 20px 0 rgba(0,0,0,0.4);
  margin: -119px calc(((100% - 1140px) / 2) + 84px) 0 auto;
}

.u-section-1 .u-container-layout-1 {
  padding: 30px 50px;
}

.u-section-1 .u-text-1 {
  font-size: 2.25rem;
  font-weight: 700;
  margin: 77px 0 0;
}

.u-section-1 .u-text-2 {
  margin: 40px 0 0;
}

.u-section-1 .u-group-2 {
  width: 518px;
  min-height: 265px;
  margin: -280px auto 0 calc(((100% - 1140px) / 2) + 14px);
}

.u-section-1 .u-container-layout-2 {
  padding: 20px 0 20px 35px;
}

.u-section-1 .u-text-3 {
  line-height: 1.7;
  font-size: 1.5rem;
  font-style: italic;
  margin: 0;
}

.u-section-1 .u-shape-3 {
  width: 14px;
  height: 280px;
  margin: -265px auto 60px 80px;
}

@media (max-width: 1199px) {
   .u-section-1 {
    min-height: 1106px;
  }

  .u-section-1 .u-shape-1 {
    width: calc(((100% - 940px) / 2) + 491px);
    height: 346px;
    margin-top: 0;
    margin-right: auto;
    margin-left: 0;
  }

  .u-section-1 .u-shape-2 {
    width: calc(((100% - 940px) / 2) + 356px);
    height: 981px;
    margin-top: -221px;
    margin-right: 0;
    margin-left: auto;
  }

  .u-section-1 .u-image-1 {
    width: 940px;
    height: 475px;
    margin-top: -1046px;
  }

  .u-section-1 .u-group-1 {
    margin-top: -67px;
    margin-right: calc(((100% - 940px) / 2) + 51px);
  }

  .u-section-1 .u-group-2 {
    width: 398px;
    min-height: 386px;
    margin-top: -228px;
    margin-left: calc(((100% - 940px) / 2) + 15px);
  }

  .u-section-1 .u-shape-3 {
    height: 386px;
    margin-top: -386px;
    margin-left: 50px;
  }
}

@media (max-width: 991px) {
   .u-section-1 {
    min-height: 1096px;
  }

  .u-section-1 .u-shape-1 {
    width: calc(((100% - 720px) / 2) + 491px);
  }

  .u-section-1 .u-shape-2 {
    width: calc(((100% - 720px) / 2) + 356px);
    height: 636px;
  }

  .u-section-1 .u-image-1 {
    width: 720px;
    height: 364px;
    margin-top: -701px;
  }

  .u-section-1 .u-group-1 {
    margin-top: -106px;
    margin-right: calc(((100% - 720px) / 2) + 80px);
  }

  .u-section-1 .u-container-layout-1 {
    padding-left: 30px;
    padding-right: 30px;
  }

  .u-section-1 .u-group-2 {
    width: 697px;
    min-height: 241px;
    margin-top: 80px;
    margin-right: calc(((100% - 720px) / 2));
    margin-left: auto;
  }

  .u-section-1 .u-container-layout-2 {
    padding-left: 30px;
  }

  .u-section-1 .u-shape-3 {
    height: 241px;
    margin-top: -241px;
    margin-bottom: 38px;
  }
}

@media (max-width: 767px) {
   .u-section-1 {
    min-height: 991px;
  }

  .u-section-1 .u-shape-1 {
    width: calc(((100% - 540px) / 2) + 491px);
    height: 262px;
  }

  .u-section-1 .u-shape-2 {
    width: calc(((100% - 540px) / 2) + 356px);
    height: 463px;
    margin-top: -137px;
  }

  .u-section-1 .u-image-1 {
    width: 540px;
    height: 294px;
    margin-top: -527px;
  }

  .u-section-1 .u-group-1 {
    width: 365px;
    min-height: 388px;
    margin-top: -72px;
    margin-right: calc(((100% - 540px) / 2) + 42px);
  }

  .u-section-1 .u-group-2 {
    width: 506px;
    margin-top: 20px;
    margin-right: calc(((100% - 540px) / 2));
  }

  .u-section-1 .u-container-layout-2 {
    padding-left: 10px;
  }

  .u-section-1 .u-shape-3 {
    margin-bottom: 59px;
  }
}

@media (max-width: 575px) {
   .u-section-1 {
    min-height: 1121px;
  }

  .u-section-1 .u-shape-1 {
    width: calc(((100% - 340px) / 2) + 306px);
    height: 247px;
  }

  .u-section-1 .u-shape-2 {
    width: 304px;
    height: 412px;
  }

  .u-section-1 .u-image-1 {
    width: 340px;
    height: 184px;
    margin-top: -476px;
  }

  .u-section-1 .u-group-1 {
    width: 297px;
    min-height: 380px;
    margin-top: -34px;
    margin-right: calc(((100% - 340px) / 2) + 15px);
  }

  .u-section-1 .u-container-layout-1 {
    padding: 25px;
  }

  .u-section-1 .u-text-1 {
    font-size: 1.5rem;
  }

  .u-section-1 .u-group-2 {
    width: 306px;
    min-height: 440px;
    margin-top: 46px;
    margin-right: calc(((100% - 340px) / 2));
  }

  .u-section-1 .u-shape-3 {
    height: 430px;
    margin-top: -440px;
    margin-bottom: 60px;
  }
}