html,
body {
  max-width: 100%;
  overflow-x: hidden;
}

body {
  margin: 0;
}

.wp-site-blocks,
.wp-block-cover,
.wp-block-cover__inner-container,
.wp-block-group,
.wp-block-columns,
.wp-block-column,
.wp-block-navigation,
.wp-block-navigation__container,
.wp-block-buttons,
.wp-block-button,
.wp-block-button__link {
  box-sizing: border-box;
  max-width: 100%;
  min-width: 0;
}

.wp-block-cover h1,
.wp-block-cover p,
.wp-block-column h2,
.wp-block-column h3,
.wp-block-column p,
.wp-block-button__link {
  overflow-wrap: anywhere !important;
  word-break: break-all !important;
}

.wp-block-button__link {
  line-height: 1.35;
  white-space: normal;
}

@media (max-width: 782px) {
  .wp-block-columns:not(.is-not-stacked-on-mobile) {
    display: block;
  }

  .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column {
    flex-basis: 100% !important;
    margin-left: 0 !important;
    margin-bottom: 24px;
    width: 100%;
  }

  .alignwide,
  .wp-block-group.alignwide,
  .wp-block-columns.alignwide,
  .wp-block-cover__inner-container,
  .wp-block-cover__inner-container > .wp-block-group {
    margin-left: auto !important;
    margin-right: auto !important;
    max-width: calc(100vw - 36px) !important;
    width: calc(100vw - 36px) !important;
  }

  .wp-block-column > * {
    max-width: 100%;
    min-width: 0;
  }

  body .wp-site-blocks .wp-block-columns,
  body .wp-site-blocks .wp-block-column {
    max-width: calc(100vw - 36px) !important;
    min-width: 0 !important;
    width: calc(100vw - 36px) !important;
  }

  .wp-block-navigation__container {
    gap: 12px;
  }
}

@media (max-width: 600px) {
  .wp-block-cover {
    min-height: 460px !important;
    padding-left: 18px !important;
    padding-right: 18px !important;
  }

  .wp-block-cover h1 {
    font-size: clamp(22px, 6.6vw, 28px) !important;
    line-height: 1.16 !important;
    max-width: calc(100vw - 36px);
    overflow-wrap: anywhere !important;
    word-break: break-all;
    word-break: break-all !important;
  }

  .wp-block-cover p {
    font-size: 16px !important;
    max-width: calc(100vw - 36px);
    overflow-wrap: anywhere !important;
    word-break: break-all !important;
  }

  .wp-block-buttons {
    display: grid !important;
    gap: 12px;
    grid-template-columns: minmax(0, 1fr);
    width: 100%;
  }

  .wp-block-button,
  .wp-block-button__link {
    width: 100%;
  }
}
