.page-content {
  margin-top: 105px; }
  .page-content .container {
    overflow: hidden; }
  .page-content .module {
    padding: 56px 0; }
    .page-content .module-white {
      background-color: var(--white); }
    .page-content .module-grey {
      background-color: var(--bg_grey); }
  .page-content img {
    width: 100%;
    height: auto; }

.page-template-builder-page .site-footer {
  padding-top: 60px;
  background: var(--bg_grey); }

@media (max-width: 767px) {
  .m-title {
    text-align: center; } }

.m-title__title {
  position: relative;
  padding: 44px 0 0; }
  @media (max-width: 575px) {
    .m-title__title {
      padding: 44px 24px 0; } }
  .m-title__title::after {
    position: absolute;
    content: '';
    top: 0;
    left: 0;
    width: 64px;
    height: 4px;
    border-radius: 2px;
    background-color: var(--light_blue); }
    @media (max-width: 767px) {
      .m-title__title::after {
        left: 50%;
        transform: translateX(-50%); } }

.m-title__subtitle {
  padding: 32px 0 0; }
  @media (max-width: 575px) {
    .m-title__subtitle {
      padding: 32px 24px 0; } }
  .m-title__subtitle span {
    color: var(--light_blue); }

.m-banner__banner {
  height: 420px;
  position: relative;
  opacity: .8;
  box-shadow: 0px 4px 10px 0px #00000040;
  border-radius: 4px;
  overflow: hidden; }
  @media (max-width: 991px) {
    .m-banner__banner {
      height: 380px; } }
  @media (max-width: 767px) {
    .m-banner__banner {
      height: 280px; } }
  @media (max-width: 575px) {
    .m-banner__banner {
      height: 240px; } }
  .m-banner__banner .banner-image {
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover; }

.m-banner__content {
  margin-top: 96px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 48px; }
  @media (max-width: 991px) {
    .m-banner__content {
      margin-top: 48px; } }
  @media (max-width: 767px) {
    .m-banner__content {
      margin-top: 32px;
      display: flex;
      flex-direction: column;
      gap: 24px;
      text-align: center; } }
  @media (max-width: 575px) {
    .m-banner__content {
      padding: 0 24px; } }
  .m-banner__content-title span {
    color: var(--light_blue); }

.m-blocks__content {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 48px;
  margin-bottom: 76px; }
  @media (max-width: 767px) {
    .m-blocks__content {
      display: flex;
      flex-direction: column;
      gap: 24px;
      text-align: center;
      padding: 0 24px;
      margin-bottom: 42px; } }
  .m-blocks__content-title span {
    color: var(--light_blue); }

.m-blocks__list {
  display: flex;
  align-items: flex-start;
  gap: 0; }
  @media (max-width: 1199px) {
    .m-blocks__list {
      flex-wrap: wrap;
      row-gap: 0 !important; } }
  @media (max-width: 767px) {
    .m-blocks__list {
      gap: 24px !important;
      row-gap: 24px !important; } }
  .m-blocks__list.list-2 {
    gap: 64px; }
    @media (max-width: 991px) {
      .m-blocks__list.list-2 {
        gap: 24px; } }
    .m-blocks__list.list-2 .card {
      margin: 0; }
  .m-blocks__list.list-3 {
    gap: 46px; }
    @media (max-width: 991px) {
      .m-blocks__list.list-3 {
        gap: 24px;
        row-gap: 24px !important; }
        .m-blocks__list.list-3 .card {
          flex: 1 1 calc(50% - 12px);
          margin-top: 0; }
          .m-blocks__list.list-3 .card-3 {
            max-width: calc(50% - 12px);
            margin: 0 auto; } }
  .m-blocks__list.list-4 {
    gap: 38px; }
    @media (max-width: 1199px) {
      .m-blocks__list.list-4 {
        gap: 24px; }
        .m-blocks__list.list-4 .card {
          flex: 1 1 calc(50% - 12px); }
          .m-blocks__list.list-4 .card-3 {
            margin-top: 0; }
          .m-blocks__list.list-4 .card-4 {
            margin-top: 36px; } }
  .m-blocks__list .card {
    flex: 1;
    padding: 32px 24px 24px;
    border-radius: 4px;
    height: fit-content; }
    @media (max-width: 767px) {
      .m-blocks__list .card {
        margin: 0 !important;
        flex: auto !important;
        width: 100% !important;
        max-width: 100% !important; } }
    .m-blocks__list .card-2 {
      margin-top: 36px; }
    .m-blocks__list .card-3 {
      margin-top: 72px; }
    .m-blocks__list .card-4 {
      margin-top: 108px; }
    .m-blocks__list .card__header {
      display: flex;
      flex-direction: column;
      gap: 24px; }
      @media (max-width: 767px) {
        .m-blocks__list .card__header {
          flex-direction: row;
          align-items: center; } }
      .m-blocks__list .card__header-icon {
        width: 36px;
        height: 36px;
        flex-shrink: 0; }
    .m-blocks__list .card__body {
      margin-top: 24px; }

.m-blocks.module-white .card {
  background-color: var(--bg_grey); }

.m-blocks.module-grey .card {
  background-color: var(--white); }

.m-content__body {
  display: flex;
  justify-content: space-between;
  align-items: stretch;
  gap: 60px; }
  @media (max-width: 1199px) {
    .m-content__body {
      gap: 40px; } }
  @media (max-width: 991px) {
    .m-content__body {
      gap: 24px; } }
  .m-content__body.text-left {
    flex-direction: row; }
  .m-content__body.text-right {
    flex-direction: row-reverse; }
  @media (max-width: 991px) {
    .m-content__body.text-top {
      flex-direction: column; } }
  @media (max-width: 991px) {
    .m-content__body.text-bottom {
      flex-direction: column-reverse; }
      .m-content__body.text-bottom .m-content__body-text {
        text-align: center; } }
  .m-content__body-text {
    width: calc(50% - 30px);
    text-align: left;
    display: flex;
    flex-direction: column;
    justify-content: center; }
    @media (max-width: 1199px) {
      .m-content__body-text {
        width: calc(50% - 20px); } }
    @media (max-width: 991px) {
      .m-content__body-text {
        width: 100%; } }
    @media (max-width: 767px) {
      .m-content__body-text {
        text-align: center; } }
    @media (max-width: 575px) {
      .m-content__body-text {
        padding: 0 24px; } }
    .m-content__body-text .content-title {
      margin-bottom: 32px; }
      @media (max-width: 575px) {
        .m-content__body-text .content-title {
          margin-bottom: 24px; } }
    .m-content__body-text .content-subtitle {
      display: block;
      color: var(--dark_blue);
      margin-bottom: 24px; }
      @media (max-width: 575px) {
        .m-content__body-text .content-subtitle {
          margin-bottom: 16px; } }
  .m-content__body-image {
    position: relative;
    min-height: 600px;
    width: calc(50% - 30px); }
    @media (max-width: 1199px) {
      .m-content__body-image {
        width: calc(50% - 20px); } }
    @media (max-width: 991px) {
      .m-content__body-image {
        width: 100%;
        min-height: auto;
        height: 480px; } }
    @media (max-width: 767px) {
      .m-content__body-image {
        height: 400px; } }
    @media (max-width: 575px) {
      .m-content__body-image {
        height: 360px; } }
    .m-content__body-image .content-image {
      position: absolute;
      width: 100%;
      height: 100%;
      object-fit: cover; }
      @media (max-width: 991px) {
        .m-content__body-image .content-image {
          object-fit: contain; } }

.m-text__body {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 120px; }
  @media (max-width: 1199px) {
    .m-text__body {
      gap: 80px; } }
  @media (max-width: 991px) {
    .m-text__body {
      gap: 60px; } }
  @media (max-width: 767px) {
    .m-text__body {
      display: flex;
      flex-direction: column;
      text-align: center;
      gap: 24px; } }
  @media (max-width: 575px) {
    .m-text__body {
      padding: 0 24px; } }
  .m-text__body-title span {
    color: var(--light_blue); }

.m-cta {
  padding: 160px 0 !important;
  text-align: center; }
  @media (max-width: 1199px) {
    .m-cta {
      padding: 120px 0 !important; } }
  @media (max-width: 991px) {
    .m-cta {
      padding: 100px 0 !important; } }
  @media (max-width: 767px) {
    .m-cta {
      padding: 80px 0 !important; } }
  @media (max-width: 575px) {
    .m-cta {
      padding: 60px 0 !important; } }
  .m-cta__title {
    margin-bottom: 32px;
    padding: 0 24px; }
    .m-cta__title span {
      color: var(--light_blue); }
  .m-cta__button {
    margin: 0 auto;
    padding: 10px 44px;
    gap: 12px;
    width: fit-content;
    box-shadow: 0px 4px 10px 0px #00000040; }
