/* stylelint-disable order/order */
/*
* Converts an pixel value into a rem value.
*
* @param string  $values    the pixel value(s) as a number. Can convert multiple values if values separated by a space.
* @param integer $base      the base pixel value.
*
* @return string   a space-separated string of rem values.
*/
/*
* This is an abbreviated wrapper for the responsive-values function.
*/
/*
* Creates a CSS clamp value that sizes between breakpoints.
*
* @param integer $min                    the minimum pixel value.
* @param integer $max                    the maximum pixel value.
* @param string  $smallest-breakpoint    the name of the smallest breakpoint from the $grid-breakpoints variable.
* @param string  $largest-breakpoint     the name of the largest breakpoint from the $grid-breakpoints variable.
* @param string  $screen                 whether to use a horizontal (width) breakpoint or a vertical (height) breakpoint.
*
* @return string   a CSS clamp property value.
*/
/*
* Outputs a font family value from the $fonts variable.
*
* @param string  $key   the font key.
*
* @return string   a font family value.
*/
/*
* Outputs a color value from the $paints or $additional-paints variables.
*
* @param string   $key   the color name.
*
* @return string   a color value.
*/
/*
* Outputs an effect value from the $effects variable.
*
* @param string  $key   the effect name.
*
* @return string   an effect value.
*/
/* stylelint-enable order/order */
/*
* Used to target heading selectors.
*
* @param integer  $start               the first heading element to target. 1 through 6.
* @param integer  $end                 the last heading element to target. 1 through 6.
* @param string   $beforeCombinator    the CSS combinator to include before the heading classes.
* @param string   $afterCombinator     the CSS combinator to include after the heading classes.
* @param boolean  $includeFontClasses  whether or not to include the .has-t-1... classes or just output the standard heading elements.
*
* @return string  The included CSS wrapped with selectors for the specified headings.
*/
/*
* Used to add properties to a for a pseudo element to make an icon based on the iconfont set.
*
* @param string   $content     the content for the icon. Usually uses one of the iconfont variables.
* @param string   $font-size   the font size with unit.
*
* @return string  The CSS properties for the icon.
*/
/*
* Generates CSS to fit an element into the 12-column grid. Only works when used on an element where the parent element is the width of the entire page.
*
* @return string  CSS properties to set the width of the element to the specified column sizes.
*/
/*
* Used to target elements with a background color that has a text color different from the standard color.
*
* @param string   $additionalSelectors     additional comma-separated selectors to add.
*
* @return string  The included CSS wrapped with selectors for the specified background.
*/
/*
* Used to target button elements with a background color set to use the alt button colors.
*
* @param string   $additionalSelectors     additional comma-separated selectors to add.
*
* @return string  The included CSS wrapped with selectors for the specified background.
*/
/*
* Used to add the CSS Grid properties for the 12-column grid.
*
* @return string  The CSS Grid properties for the 12-column grid.
*/
/*
* Used to visually hide an element but still allow screen readers to access the element and its contents for accessibility.
*
* @return string  The styles needed to visually hide an element.
*/
.fade-up {
  opacity: 0;
  transform: translate3d(0, 16px, 0);
  transition: 300ms opacity 300ms ease-out, 300ms transform 300ms ease-out;
}
.fade-up.in-viewport {
  opacity: 1 !important;
  transform: none !important;
}

/****************
 * Fonts
 *
 * The font settings are defined via the gulp figma which task creates variables in the css/__base-includes/figma/_figma-font-styles.scss file based on the Figma file. Additional variables are defined here.
 ****************/
/*
* This array is used to specify the fonts used on the project with the following parameters:
	base - the name for use in the font() mixin.
		css - the output CSS value.
		figma-name: - the 'font-family' name ued in the _figma-font-variable.scss file.
	)
*/
/****************
 * Colors
 *
 * The primary colors are defined via the gulp figma task which creates variables in the css/__base-includes/figma/_figma-color-variables.scss file based on the Figma file. Additional variables are defined here.
 ****************/
/* If additional colors need to be added to the _figma-color-variables.scss, they can be added to this variable: */
/* This variable controls the background colors generated in the ACF background_color field and the background color classes - bg-white, bg-neutral-10, etc: */
/* This variable controls the default text color on a light background. Used with paint(text) to generate a CSS variable that changes to use background font colors. */
/* If a background color uses a different font color than the default color, use these variables to specify the alternate colors */
/* Backgrounds specified in this variable will use the alternative text colors: */
/* Backgrounds specified in this variable will use the alternative button colors: */
/****************
 * Effects
 ****************/
/****************
 * Grid Settings
 ****************/
/****************
 * Block Spacing
 *
 * These variables are based on the "Spacing" rules found in the "Foundations" section in Figma. These control the default spacing between blocks of different colors.
 ****************/
/*
This file can be used for optional additions to the Figma-generated font style mixins in the figma/_figma-font-styles.scss file.

For example, if you want to add styles to the @overline mixin, just create a mixin here called @overline-custom and that CSS will be added to the primary mixin:

@mixin overline-custom() {
	font-weight: 700;
}
*/
.block-card-link {
  position: relative;
  display: flex;
  flex-direction: column;
  min-height: 7rem;
}
@media (min-width: 48rem) {
  .block-card-link {
    min-height: 7.9375rem;
  }
}
.block-card-link.zoom-image {
  min-height: 4.375rem;
}
.block-card-link.zoom-image a:hover img,
.block-card-link.zoom-image a:focus img {
  transform: scale(1.1);
}
.block-card-link__content {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  display: flex;
  flex-direction: column;
  flex-grow: 1;
  justify-content: flex-start;
  align-items: stretch;
  width: 100%;
  height: 100%;
  min-height: 3.25rem;
  margin-top: auto;
  margin-bottom: 0;
  padding: 1.5rem;
  color: #fff;
  transition: background-color 0.2s linear;
}
.block-card-link__content--has-file .block-card-link__title,
.block-card-link__content--has-file .block-card-link__file-info {
  margin-right: 2.8125rem;
}
@media (min-width: 64rem) {
  .block-card-link__content--has-file .block-card-link__title,
.block-card-link__content--has-file .block-card-link__file-info {
    margin-right: 0;
  }
}
@media (min-width: 36rem) {
  .block-card-link__content {
    padding: 2.25rem;
  }
}
.overlay-image .block-card-link__content:hover, .overlay-image .block-card-link__content:focus {
  text-decoration: none;
  background-color: #003661;
}
.block-card-link__image-wrapper + .block-card-link__content {
  position: relative;
  padding: clamp(1.5rem, 0.8684210526rem + 1.3157894737vw, 2.25rem) clamp(1rem, -0.0526315789rem + 2.1929824561vw, 2.25rem);
}
@media (min-width: 64rem) {
  .block-card-link__image-wrapper + .block-card-link__content {
    /**position: absolute;**/
    min-height: 13.875rem;
  }
}
.block-card-link__image-wrapper {
  position: absolute;
  height: 100%;
  padding-bottom: 0;
  /**@include media-breakpoint-up(lg) {
  	position: relative;
  	height: 0;
  	padding-bottom: 53.45%;
  }**/
}
.block-card-link .block-card-link__image-wrapper.image-overlay::before {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  z-index: 1;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.6);
}
.block-card-link__link {
  font-weight: var(--t4-font-weight);
  font-size: var(--t4-font-size);
  font-family: var(--t4-font-family);
  line-height: var(--t4-line-height);
  flex-grow: 1;
}
@media (min-width: 64rem) {
  .block-card-link__link {
    font-weight: var(--t3-font-weight);
    font-size: var(--t3-font-size);
    font-family: var(--t3-font-family);
    line-height: var(--t3-line-height);
  }
}
.block-card-link__link::before {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0 !important;
  right: 0;
  content: "";
  display: block !important;
  width: 100%;
  height: 100% !important;
  background-color: transparent !important;
}
.block-card-link__link:hover, .block-card-link__link:focus {
  color: #fff;
}
.block-text-sidebar .block-cards--square-cards .block-card-link__link {
  min-height: 0;
}
.block-text-sidebar .block-cards--square-cards .block-card-link__link .block-card-link__content {
  min-height: 0;
}
.block-card-link.block-card-link--no-text .block-card-link__title {
  display: none;
}
.block-card-link.block-card-link--text-link .block-card-link__content {
  position: relative;
  background-color: #0066ba;
  transition: background-color 0.2s linear;
}
.block-card-link.block-card-link--text-link .block-card-link__content:hover, .block-card-link.block-card-link--text-link .block-card-link__content:focus {
  background-color: #003661;
}
@media (max-width: 47.98rem) {
  .block-cards--2 .block-card-link.block-card-link--text-link {
    margin-top: 0;
  }
}
.block-cards--2 .block-card-link.block-card-link--text-link .block-card-link__link {
  min-height: 7rem;
  padding-top: 0 !important;
}
@media (min-width: 64rem) {
  .block-cards--2 .block-card-link.block-card-link--text-link .block-card-link__link {
    min-height: 8.4375rem;
  }
}
:not(.block-text-sidebar) .block-cards--4:not(.is-style-full-width) .block-card-link.block-card-link--text-link {
  min-height: 0;
}
:not(.block-text-sidebar) .block-cards--4:not(.is-style-full-width) .block-card-link.block-card-link--text-link .block-card-link__link {
  min-height: 7rem;
  padding-top: 0 !important;
}
@media (min-width: 64rem) {
  :not(.block-text-sidebar) .block-cards--4:not(.is-style-full-width) .block-card-link.block-card-link--text-link .block-card-link__link {
    min-height: 5.625rem;
  }
}
:not(.block-text-sidebar) .block-cards--4:not(.is-style-full-width) .block-card-link.block-card-link--text-link .block-card-link__content {
  padding: 1.125rem 2.25rem;
}
@media (max-width: 74.98rem) {
  :not(.block-text-sidebar) .block-cards--4:not(.is-style-full-width) .block-card-link.block-card-link--text-link .block-card-link__content {
    padding: 1.5rem 2.25rem;
  }
}
@media (max-width: 74.98rem) {
  :not(.block-text-sidebar) .block-cards--4:not(.is-style-full-width) .block-card-link.block-card-link--text-link .block-card-link__title {
    font-weight: var(--t3-font-weight);
    font-size: var(--t3-font-size);
    font-family: var(--t3-font-family);
    line-height: var(--t3-line-height);
  }
}
@media (min-width: 64rem) {
  :not(.block-text-sidebar) .block-cards--4:not(.is-style-full-width) .block-card-link.block-card-link--text-link .block-card-link__title {
    font-weight: var(--t4-font-weight);
    font-size: var(--t4-font-size);
    font-family: var(--t4-font-family);
    line-height: var(--t4-line-height);
  }
}
@media (min-width: 48rem) {
  .is-style-contained .block-card-link {
    min-height: 12.5rem;
  }
}
.block-card-link__file-icon {
  display: flex;
  flex-grow: 1;
  align-items: flex-end;
}
@media (max-width: 63.98rem) {
  .block-card-link__file-icon {
    position: absolute;
    right: 2.25rem;
  }
}
.block-card-link__file-icon::before {
  content: var(--icon-download-pdf);
  color: #fff;
  font-weight: 400;
  font-size: 2rem;
  font-family: iconfont-propel;
  font-style: normal;
  font-variant: normal;
  line-height: 1;
  text-transform: none;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.block-card-link__file-info {
  font-weight: var(--lead-font-weight);
  font-size: var(--lead-font-size);
  font-family: var(--lead-font-family);
  line-height: var(--lead-line-height);
  margin-top: calc(var(--lead-margin-bottom) * 1);
  margin-bottom: var(--lead-margin-bottom);
  margin: 0;
}
.block-card-link__file-info:first-child {
  margin-top: 0;
}
.block-card-link__file-info:last-child {
  margin-bottom: 0;
}

@media (min-width: 48rem) and (max-width: 63.98rem) {
  .block-cards--4 .block-cards__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
.block-cards--1 .block-cards__grid {
  grid-template-columns: repeat(1, minmax(0, 1fr));
}
.block-cards.is-style-contained {
  max-width: 47rem;
  margin: 0 auto;
}
.content-wrapper > .block-cards {
  width: calc(var(--columnWidth) * 12 - clamp(1rem, 0.1578947368rem + 1.7543859649vw, 2rem));
  max-width: calc(var(--columnMaxWidth) * 12 - clamp(1rem, 0.1578947368rem + 1.7543859649vw, 2rem));
  margin-right: auto;
  margin-left: auto;
}
@media (min-width: 36rem) {
  .content-wrapper > .block-cards {
    width: calc(var(--columnWidth) * 12 - clamp(1rem, 0.1578947368rem + 1.7543859649vw, 2rem));
    max-width: calc(var(--columnMaxWidth) * 12 - clamp(1rem, 0.1578947368rem + 1.7543859649vw, 2rem));
  }
}
@media (min-width: 48rem) {
  .content-wrapper > .block-cards {
    width: calc(var(--columnWidth) * 12 - clamp(1rem, 0.1578947368rem + 1.7543859649vw, 2rem));
    max-width: calc(var(--columnMaxWidth) * 12 - clamp(1rem, 0.1578947368rem + 1.7543859649vw, 2rem));
  }
}
.acf-block.bg-white + .block-cards, .acf-block.bg-transparent + .block-cards {
  margin-top: 0;
}
.block-cards + .acf-block.bg-white,
.block-cards + .acf-block.bg-transparent {
  margin-top: clamp(-4.5rem, -1.7368421053rem + -2.6315789474vw, -3rem);
}
:not(.block-text-sidebar) .block-cards.block-cards--square-cards .image-wrapper + .block-card-link__content {
  min-height: 20.9375rem;
}
@media (min-width: 48rem) {
  :not(.block-text-sidebar) .block-cards.block-cards--square-cards .image-wrapper + .block-card-link__content {
    min-height: 26rem;
  }
}
:not(.block-text-sidebar) .block-cards.block-cards--square-cards .block-card-link--no-text .block-card-link__link {
  height: auto !important;
}
:not(.block-text-sidebar) .block-cards.block-cards--square-cards .block-card-link__title {
  font-weight: var(--t3-font-weight);
  font-size: var(--t3-font-size);
  font-family: var(--t3-font-family);
  line-height: var(--t3-line-height);
}
.block-cards__grid {
  display: grid;
  grid-template-columns: 1fr;
  row-gap: clamp(1.25rem, 0.6184210526rem + 1.3157894737vw, 2rem);
  column-gap: clamp(1rem, 0.1578947368rem + 1.7543859649vw, 2rem);
}
@media (min-width: 48rem) {
  .block-cards__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (min-width: 64rem) {
  .block-cards__grid {
    grid-template-columns: repeat(var(--cardsPerRow, 3), minmax(0, 1fr));
  }
}
.block-text-sidebar .block-cards__grid {
  row-gap: 0.5rem;
  column-gap: 0.5625rem;
}
.block-text-sidebar .block-cards--square-cards .block-cards__grid {
  column-gap: clamp(1rem, 0.1578947368rem + 1.7543859649vw, 2rem);
}
.block-text-sidebar .block-cards--square-cards .block-cards__grid .block-card-link {
  min-height: 0;
}
.block-text-sidebar .block-cards:not(.block-cards--square-cards) .block-cards__grid .block-card-link__content {
  padding: 1.5rem;
}
@media (min-width: 64rem) {
  .block-text-sidebar .block-cards:not(.block-cards--square-cards) .block-cards__grid .block-card-link__content {
    padding: 1.125rem 2.25rem 2.25rem 2.25rem;
  }
}

@media (min-width: 64rem) {
  .block-text-sidebar .block-card-image-links .block-cards {
    max-width: 47rem;
  }
}
.block-text-sidebar .block-card-image-links .block-cards:not(.block-cards--square-cards) .block-card-link--text-link .block-card-link__title {
  font-weight: var(--t4-font-weight);
  font-size: var(--t4-font-size);
  font-family: var(--t4-font-family);
  line-height: var(--t4-line-height);
}
.block-hero-text + .block-card-image-links {
  padding-top: clamp(2.5rem, 2.2368421053rem + 0.548245614vw, 2.8125rem);
}
.block-card-image-links .block-cards {
  max-width: 100%;
}
.block-card-image-links__container:not(:first-child) {
  margin-top: clamp(2rem, 1.7894736842rem + 0.4385964912vw, 2.25rem);
}
.block-card-image-links h2.wp-block-heading {
  margin-bottom: clamp(2rem, 1.7894736842rem + 0.4385964912vw, 2.25rem);
}
.block-card-image-links.is-style-full-width {
  overflow: hidden;
}
.block-card-image-links.is-style-full-width .block-cards {
  max-width: none;
  margin: 0 calc(50% - 50vw);
}
@media (min-width: 64rem) {
  .block-card-image-links.is-style-full-width .block-cards--4 .block-card-link {
    border-bottom: none !important;
  }
  .block-card-image-links.is-style-full-width .block-cards--4 .block-card-link:not(:last-child) {
    border-right: 1px solid #fff;
  }
}
@media (min-width: 48rem) and (max-width: 74.98rem) {
  .block-card-image-links.is-style-full-width .block-cards--4 .block-card-link {
    border-bottom: none;
  }
  .block-card-image-links.is-style-full-width .block-cards--4 .block-card-link:first-child, .block-card-image-links.is-style-full-width .block-cards--4 .block-card-link:nth-child(2) {
    border-bottom: 1px solid #fff;
  }
  .block-card-image-links.is-style-full-width .block-cards--4 .block-card-link:not(:last-child):not(:nth-child(2)) {
    border-right: 1px solid #fff;
  }
}
@media (max-width: 47.98rem) {
  .block-card-image-links.is-style-full-width .block-cards--4 .block-card-link:not(:last-child) {
    border-bottom: 1px solid #fff;
  }
}
@media (min-width: 64rem) {
  .block-card-image-links.is-style-full-width .block-cards--3 .block-card-link {
    border-bottom: none !important;
  }
  .block-card-image-links.is-style-full-width .block-cards--3 .block-card-link:not(:last-child) {
    border-right: 1px solid #fff;
  }
}
@media (min-width: 48rem) and (max-width: 74.98rem) {
  .block-card-image-links.is-style-full-width .block-cards--3 .block-card-link {
    border-bottom: none;
  }
  .block-card-image-links.is-style-full-width .block-cards--3 .block-card-link:first-child, .block-card-image-links.is-style-full-width .block-cards--3 .block-card-link:nth-child(2) {
    border-bottom: 1px solid #fff;
  }
  .block-card-image-links.is-style-full-width .block-cards--3 .block-card-link:not(:last-child):not(:nth-child(2)) {
    border-right: 1px solid #fff;
  }
}
@media (max-width: 47.98rem) {
  .block-card-image-links.is-style-full-width .block-cards--3 .block-card-link:not(:last-child) {
    border-bottom: 1px solid #fff;
  }
}
@media (min-width: 64rem) {
  .block-card-image-links.is-style-full-width .block-cards--2 .block-card-link {
    border-bottom: none !important;
  }
  .block-card-image-links.is-style-full-width .block-cards--2 .block-card-link:not(:last-child) {
    border-right: 1px solid #fff;
  }
}
@media (min-width: 48rem) and (max-width: 74.98rem) {
  .block-card-image-links.is-style-full-width .block-cards--2 .block-card-link {
    border-bottom: none;
  }
  .block-card-image-links.is-style-full-width .block-cards--2 .block-card-link:not(:last-child) {
    border-right: 1px solid #fff;
  }
}
@media (max-width: 47.98rem) {
  .block-card-image-links.is-style-full-width .block-cards--2 .block-card-link:not(:last-child) {
    border-bottom: 1px solid #fff;
  }
}
.block-card-image-links.is-style-full-width .block-cards .block-card-link {
  min-height: 5.625rem;
}
@media (min-width: 64rem) {
  .block-card-image-links.is-style-full-width .block-cards .block-card-link {
    min-height: 7.5rem;
  }
}
.block-card-image-links.is-style-full-width .block-cards .block-card-link .block-card-link__content {
  padding-top: clamp(1.5rem, 1.3421052632rem + 0.3289473684vw, 1.6875rem);
}
.block-card-image-links.is-style-full-width .block-cards .block-cards__grid {
  gap: 0;
}
.block-card-image-links.is-style-full-width.acf-block:last-child {
  padding-top: 0;
  padding-bottom: 0;
}