gt-block-content-heading-image {
  display: grid;
  width: 100%;
  background-color: #fff;
  box-shadow: 0 0 21px rgba(var(--color__blue-900-rgb),.21);
  grid-template-areas: "heading" "content" "image"
}
@container (min-width:768px) {
  gt-block-content-heading-image {
    grid-template-areas: "heading content" "image content";
    grid-template-columns: auto calc(1% * var(--content-width,55));
    grid-template-rows: auto auto;
    align-items: stretch;
    gap: 0
  }
  gt-block-content-heading-image:has(.block-image *) {
    grid-template-rows: 1fr 1fr
  }
}
gt-block-content-heading-image .block-heading {
  display: flex;
  flex-direction: column;
  justify-content: center;
  grid-area: heading;
  position: relative;
  padding: clamp(30px,5cqw,90px);
  background-color: var(--heading-overlay-color-solid,rgba(var(--color__blue-800-rgb),1))
}
gt-block-content-heading-image .block-heading .background-image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: clip;
  z-index: 0
}
gt-block-content-heading-image .block-heading .background-image > img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 0
}
gt-block-content-heading-image .block-heading:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: var(--heading-overlay-color,rgba(var(--color__blue-800-rgb),.8));
  z-index: 1
}
gt-block-content-heading-image .block-heading :is(h2:first-child,h2:nth-child(2)) {
  position: relative;
  z-index: 2;
  margin: 0;
  line-height: 1;
  color: var(--heading-text-color,#fff)
}
gt-block-content-heading-image .block-image {
  position: relative;
  grid-area: image
}
gt-block-content-heading-image .block-image > * {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover
}
gt-block-content-heading-image .block-content {
  grid-area: content;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: clamp(30px,5cqw,60px)
}
gt-block-content-heading-image .block-content .acf-innerblocks-container > :first-child {
  margin-top: 0
}
gt-block-content-heading-image .block-content .acf-innerblocks-container > :last-child {
  margin-bottom: 0
}
gt-block-content-heading-image .block-content .acf-innerblocks-container > * {
  width: 100%
}
gt-block-content-heading-image .block-content .acf-innerblocks-container:is(:empty,:has(p:empty:only-child)) {
  display: none
}
gt-block-content-heading-image .block-content .acf-innerblocks-container + ul.icon-list {
  margin-top: clamp(30px,5cqw,60px)
}
gt-block-content-heading-image .block-content ul.icon-list {
  display: grid;
  list-style: none;
  margin: 0;
  padding: 0;
  gap: 15px
}
gt-block-content-heading-image .block-content ul.icon-list li.icon-list-item {
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: center;
  gap: clamp(20px,3cqw,40px);
  margin: 0;
  padding: 0
}
gt-block-content-heading-image .block-content ul.icon-list li.icon-list-item .icon-image > img {
  width: 52px;
  height: 42px;
  object-fit: contain
}
gt-block-content-heading-image .block-content ul.icon-list li.icon-list-item .icon-text {
  font-family: Eurostile,sans-serif;
  font-weight: 700;
  font-size: clamp(21px, 3vw, 32px);
  line-height: 1.2;
  color: var(--color__blue-800)
}
@container (min-width:768px) {
  gt-block-content-heading-image.content-left {
    grid-template-columns: calc(1% * var(--content-width,55)) auto;
    grid-template-areas: "content heading" "content image"
  }
}
gt-block-content-heading-image[preview-mode=false] .block-content > .acf-innerblocks-container:is(:empty,:has(p:empty:only-child)) + ul.icon-list {
  margin-top: 0
}