/**
 * Use in order to make a set of rules only apply above
 * or below a certain breakpoint.
 * Standard usage:

 @include breakpoint(tablet){
 	// Applies to screen sizes tablet and LARGER
 }

 @include breakpoint(tablet up){
 	// Applies to screen sizes tablet and LARGER
 }

 @include breakpoint(tablet down){
 	// Applies to screen sizes tablet and SMALLER
 }
 *
 **/
/**
 * Set custom typography sizes (e.g. header)
 * @param  {int} $size        font-size
 * @param  {int} $line-height line-height
 * @param  {int} $av          AV letter-spacing from XD
 * @return {void}
 */
/**
 * Converts a pixel, percentage, rem or em value to a unitless value based on a given font size. Ideal for working out unitless line heights.
 *
 * @param {Number} $value - Value to convert to a unitless line height
 * @param {Number} $base - The font size to use to work out the line height - defaults to $rem-font-size
 *
 * @return {Number} - Unitless number
 */
/**
 * AV letter spacing measurement convertor from Adobe applications
 * https://scotch.io/tutorials/converting-photoshop-letter-spacing-to-css
 */
/*
 * https://every-layout.dev/layouts/stack/
 */
.h-stack > * {
  margin-block: 0;
}
.h-stack > * + * {
  margin-top: var(--unit);
}
.h-stack--zero > * {
  margin-block: 0;
}
.h-stack--small > * {
  margin-block: 0;
}
.h-stack--small > * + * {
  margin-top: var(--unit-small);
}
.h-stack--xsmall > * {
  margin-block: 0;
}
.h-stack--xsmall > * + * {
  margin-top: var(--unit-xsmall);
}
.h-stack--medium > * {
  margin-block: 0;
}
.h-stack--medium > * + * {
  margin-top: var(--unit-medium);
}
.h-stack--large > * {
  margin-block: 0;
}
.h-stack--large > * + * {
  margin-top: var(--unit-large);
}
.h-stack--xlarge > * {
  margin-block: 0;
}
.h-stack--xlarge > * + * {
  margin-top: var(--unit-xlarge);
}

.h-stack2 > * {
  margin-block: 0;
}
.h-stack2 > * + * {
  margin-top: var(--unit2);
}
.h-stack2--small > * {
  margin-block: 0;
}
.h-stack2--small > * + * {
  margin-top: calc(var(--unit2) / 2);
}
.h-stack2--medium > * {
  margin-block: 0;
}
.h-stack2--medium > * + * {
  margin-top: calc(var(--unit2) * 2);
}

.h-stack-row > * {
  margin-inline: 0;
}
.h-stack-row > * + * {
  margin-left: var(--unit);
}

.h-stack-row--xsmall > * {
  margin-inline: 0;
}
.h-stack-row--xsmall > * + * {
  margin-left: var(--unit-xsmall);
}

.wp-block-group {
  position: relative;
}
.wp-block-group > * {
  margin-block: 0;
}
.wp-block-group > * + * {
  margin-top: var(--unit);
}
.wp-block-group > * {
  margin-inline: auto;
}
.wp-block-group.has-background {
  padding: var(--unit);
}
.wp-block-group.is-style-padded {
  padding: var(--unit);
}
@media screen and (min-width: 80em) {
  .wp-block-group.is-style-padded {
    padding: 3.75rem 7.5rem;
  }
}
.wp-block-group.is-style-padded-small {
  padding: var(--unit2);
}
.wp-block-group.is-style-pageheader {
  font-size: 2.5rem;
  line-height: 1.25;
  letter-spacing: -0.01em;
  font-weight: 300;
  margin-top: var(--unit-medium);
}
.wp-block-group.is-style-pageheader > * {
  margin-block: 0;
}
.wp-block-group.is-style-pageheader > * + * {
  margin-top: var(--unit-small);
}
@media screen and (min-width: 48em) {
  .wp-block-group.is-style-pageheader {
    margin-bottom: var(--unit-medium);
  }
}
@media screen and (min-width: 80em) {
  .wp-block-group.is-style-pageheader {
    margin-bottom: var(--unit-large);
  }
}
.wp-block-group.is-style-group-front-news {
  padding: var(--unit);
}
@media screen and (min-width: 80em) {
  .wp-block-group.is-style-group-front-news {
    padding: 3.75rem 7.5rem;
  }
}
.wp-block-group.is-style-group-front-news > * {
  margin-block: 0;
}
.wp-block-group.is-style-group-front-news > .wp-block-media-text + .wp-block-media-text {
  margin-top: var(--unit2);
}
@media screen and (min-width: 48em) {
  .wp-block-group.is-style-group-front-news > .wp-block-media-text + .wp-block-media-text {
    margin-top: 3.75rem;
  }
}
@media screen and (min-width: 90em) {
  .wp-block-group.is-style-group-front-news > .wp-block-media-text + .wp-block-media-text {
    margin-top: 5.625rem;
  }
}
.wp-block-group.is-style-card {
  padding: 0;
  flex: 1;
  display: flex;
  flex-direction: column;
  row-gap: var(--unit);
}
.wp-block-group.is-style-card > * {
  margin-top: 0;
}
.wp-block-group.is-style-card :last-child {
  margin-top: auto;
}
.wp-block-group.is-style-card h1,
.wp-block-group.is-style-card h2,
.wp-block-group.is-style-card h3,
.wp-block-group.is-style-card h4,
.wp-block-group.is-style-card h5,
.wp-block-group.is-style-card h6 {
  margin-top: var(--unit);
}
.wp-block-group.is-style-teaser-with-stars {
  position: relative;
  padding: var(--unit2-large) var(--unit) var(--unit2);
  width: calc(100% + var(--unit-medium));
  max-width: calc(100% + var(--unit-medium));
  transform: translateX(calc(var(--unit) * -1));
}
@media screen and (min-width: 48em) {
  .wp-block-group.is-style-teaser-with-stars {
    padding: var(--unit-medium);
  }
}
@media screen and (min-width: 64em) {
  .wp-block-group.is-style-teaser-with-stars {
    width: 100%;
    transform: none;
    max-width: 60rem;
    padding: var(--unit2-medium);
  }
}
.wp-block-group.is-style-teaser-with-stars > * {
  position: relative;
  z-index: 1;
}
.wp-block-group.is-style-teaser-with-stars::before, .wp-block-group.is-style-teaser-with-stars::after {
  content: "";
  position: absolute;
  z-index: 0;
  pointer-events: none;
  background: center/contain no-repeat;
}
.wp-block-group.is-style-teaser-with-stars::before {
  top: var(--unit2-small);
  right: var(--unit2-small);
  width: 8.25rem;
  height: 4.1875rem;
  background-image: url("../../../img/stars-group-before.min.svg");
}
@media screen and (min-width: 48.9375em) {
  .wp-block-group.is-style-teaser-with-stars::before {
    top: var(--unit2);
    right: var(--unit2);
  }
}
.wp-block-group.is-style-teaser-with-stars::after {
  bottom: 2.75rem;
  right: 1.6875rem;
  width: 3.8125rem;
  height: 3.6875rem;
  background-image: url("../../../img/stars-group-after.min.svg");
}
@media screen and (min-width: 48.9375em) {
  .wp-block-group.is-style-teaser-with-stars::after {
    right: 3.375rem;
  }
}
@supports (display: grid) {
  .wp-block-group.is-style-teaser-with-stars .wp-block-media-text {
    justify-content: flex-start;
    grid-template-columns: 1fr;
    column-gap: var(--unit2-medium);
  }
  @media screen and (min-width: 48.9375em) {
    .wp-block-group.is-style-teaser-with-stars .wp-block-media-text {
      grid-template-columns: 42.8571428571% 40.4761904762% !important;
    }
  }
}
.wp-block-group.is-style-teaser-with-stars .wp-block-media-text__content {
  padding-right: 0;
}
@media screen and (min-width: 48em) {
  .wp-block-group.is-style-teaser-with-stars .wp-block-media-text__content h1,
  .wp-block-group.is-style-teaser-with-stars .wp-block-media-text__content h2,
  .wp-block-group.is-style-teaser-with-stars .wp-block-media-text__content h3,
  .wp-block-group.is-style-teaser-with-stars .wp-block-media-text__content h4,
  .wp-block-group.is-style-teaser-with-stars .wp-block-media-text__content h5,
  .wp-block-group.is-style-teaser-with-stars .wp-block-media-text__content h6 {
    padding-right: 15%;
  }
}
.wp-block-group.has-blue-5-background-color a {
  color: var(--wp--preset--color--blue-sky) !important;
}
.wp-block-group.has-blue-5-background-color a:hover, .wp-block-group.has-blue-5-background-color a:active {
  color: var(--wp--preset--color--blue) !important;
}
.wp-block-group.is-style-inline-children > * {
  display: inline-block;
  white-space: nowrap;
  margin-right: var(--unit);
}
.wp-block-group.with--sticky-map .wp-block-columns {
  align-items: flex-start;
}
.wp-block-group.with--sticky-map .wp-block-column:first-child {
  position: sticky;
  top: 0;
}
.admin-bar .wp-block-group.with--sticky-map .wp-block-column:first-child {
  top: var(--wp-admin--admin-bar--height);
}
@media screen and (max-width: 41.24375em) {
  .admin-bar .wp-block-group.with--sticky-map .wp-block-column:first-child {
    top: 0;
  }
}
.wp-block-group.is-style-group-footer-logos {
  gap: 60px;
}
.wp-block-group.is-style-group-cta1 {
  background-color: var(--wp--preset--color--blue-5);
  padding: 3.75rem;
}
.wp-block-group.is-style-group-cta1 > .wp-block-columns {
  gap: 3.75rem;
}
.wp-block-group.is-style-group-cta1 .is-style-paragraph-front-strapline {
  color: var(--wp--preset--color--blue);
  font-weight: 400;
}
.wp-block-group.is-style-group-cta1 .is-style-paragraph-front-strapline + .wp-block-heading {
  margin-block-start: var(--unit-xxsmall);
  font-weight: 500;
  font-size: 2rem;
  line-height: 1.25;
}
.wp-block-group.is-content-justification-space-between {
  justify-content: space-between;
}
.wp-block-group.is-content-justification-space-around {
  justify-content: space-around;
}
.wp-block-group.is-content-justification-center {
  justify-content: center;
}
.wp-block-group__inner-container > * {
  margin-block: 0;
}
.wp-block-group__inner-container > * + * {
  margin-top: var(--unit);
}
.wp-block-group__inner-container > * {
  margin-inline: auto;
}

.editor-styles-wrapper .wp-block-group.alignfull {
  max-width: 100%;
}
.editor-styles-wrapper .wp-block-group.is-style-teaser-with-stars {
  max-width: 60rem !important;
}

@media screen and (min-width: 48.9375em) {
  .wp-block-column > .wp-block-group.is-style-card:first-child:last-child {
    height: 100%;
  }
}