:root {
  --bg-image-gap-mobile: var(--grid-gap);
  --bg-image-gap-tablet: var(--grid-gap);
  --bg-image-gap-desktop: 3.75rem;
  --bg-image-gap: var(--bg-image-gap-mobile);
}
@media (min-width: 48rem) {
  :root {
    --bg-image-gap: var(--bg-image-gap-tablet);
  }
}
@media (min-width: 67.5rem) {
  :root {
    --bg-image-gap: var(--bg-image-gap-desktop);
  }
}

.bg-image .btn {
  margin-top: 2rem;
}

.bg-image__icon {
  height: 50px;
  max-width: 250px;
  margin-bottom: 2rem;
}

.bg-image__icon > * {
  height: 100%;
  width: 100%;
  object-fit: contain;
  object-position: left bottom;
}

.bg-image__video--wrapper {
  aspect-ratio: 1/1;
}

.bg-image__video--wrapper video {
  object-fit: cover;
  object-position: center center;
  height: 100%;
  width: 100%;
}

.text-align-centre .bg-image__header {
  display: flex;
  justify-content: center;
}

.text-align-centre .bg-image__icon > * {
  object-position: center bottom;
}

.bg-image--alt-layout-1 .bg-image__video--wrapper {
  aspect-ratio: 3/2;
}

.bg-image .masked-image {
  position: relative;
  aspect-ratio: 1/1;
  overflow: hidden;
  mask-size: 100% 100%;
  mask-repeat: no-repeat;
}

.bg-image .masked-image img,
.bg-image .masked-image video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

@media (max-width: 47.9375rem) {
  .full-bleed-mobile .bg-image__text {
    padding-inline: var(--body-gutter);
  }
  .bg-image__text {
    padding-block-start: 2rem;
  }
  .panel--padding-bottom-none .bg-image__text {
    padding-block-end: var(--module-spacing);
  }
}
@media (min-width: 48rem) {
  .bg-image {
    display: grid;
    gap: var(--bg-image-gap);
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  }
  .bg-image.grid__no-gap {
    gap: 0;
  }
  .bg-image__text,
  .bg-image__image,
  .bg-image__video {
    display: flex;
    flex-direction: column;
    justify-content: center;
  }
  .bg-image__text {
    padding-block: 2rem;
  }
  .bg-image__media--right {
    order: 2;
  }
  .bg-image__header,
  .bg-image__footer,
  .bg-image__description {
    max-width: calc((var(--content-medium) - var(--bg-image-gap)) / 2);
  }
  .grid__no-gap .bg-image__description {
    max-width: calc(var(--content-medium) / 2 - var(--bg-image-gap));
  }
  .bg-image__content--right .bg-image__header,
  .bg-image__content--right .bg-image__footer,
  .bg-image__content--right .bg-image__description {
    margin-left: auto;
  }
  .bg-image__content--left .bg-image__header,
  .bg-image__content--left .bg-image__footer,
  .bg-image__content--left .bg-image__description {
    margin-right: auto;
  }
  .grid__no-gap .bg-image__media--right + .bg-image__text {
    padding-right: var(--bg-image-gap);
  }
  .grid__no-gap .bg-image__media--left + .bg-image__text {
    padding-left: var(--bg-image-gap);
  }
  .content--full .bg-image__media--right + .bg-image__text {
    padding-left: var(--body-gutter);
  }
  .content--full .bg-image__media--left + .bg-image__text {
    padding-right: var(--bg-image-gap);
  }
  .panel:not(.panel--transparent) .bg-image__media--wrapper {
    max-width: calc((var(--content-width) - var(--bg-image-gap)) / 2);
    width: calc(100% + var(--body-gutter));
  }
  .panel:not(.panel--transparent) .grid__no-gap .bg-image__media--wrapper {
    max-width: calc((var(--content-width)) / 2);
  }
  .panel:not(.panel--transparent) .bg-image__media--right .bg-image__media--wrapper {
    margin-right: calc(var(--body-gutter) * -1);
    align-self: flex-start;
  }
  .panel:not(.panel--transparent) .bg-image__media--left .bg-image__media--wrapper {
    margin-left: calc(var(--body-gutter) * -1);
    align-self: flex-end;
  }
}
@media (min-width: 90rem) {
  .panel--padding-bottom-none.panel--xl.content--full:has(.bg-image--default) + .panel--padding-top-none.panel--xl.content--full:has(.bg-image--default),
  .panel--padding-bottom-none.panel--full.content--xl:has(.bg-image--default) + .panel--padding-top-none.panel--xl.content--full:has(.bg-image--default),
  .panel--padding-bottom-none.panel--xl.content--full:has(.bg-image--default) + .panel--padding-top-none.panel--full.content--xl:has(.bg-image--default),
  .panel--padding-bottom-none.panel--full.content--xl:has(.bg-image--default) + .panel--padding-top-none.panel--full.content--xl:has(.bg-image--default) {
    margin-top: calc((var(--module-spacing)) * -1.5);
  }
}

/*# sourceMappingURL=/assets/application/content-modules/background-image-contents-2834aad4.css.map */
