/*!****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./.yarn/__virtual__/css-loader-virtual-bf286824a5/6/AppData/Local/Yarn/Berry/cache/css-loader-npm-6.7.3-63aa933400-10.zip/node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./.yarn/__virtual__/postcss-loader-virtual-1b7e30ecb8/6/AppData/Local/Yarn/Berry/cache/postcss-loader-npm-7.3.0-788d8ed604-10.zip/node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[1].use[2]!../../../../../AppData/Local/Yarn/Berry/cache/resolve-url-loader-npm-5.0.0-9b441067c9-10.zip/node_modules/resolve-url-loader/index.js??ruleSet[1].rules[1].use[3]!./.yarn/__virtual__/sass-loader-virtual-51a5632b47/6/AppData/Local/Yarn/Berry/cache/sass-loader-npm-13.2.2-b5bbed2dce-10.zip/node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[1].use[4]!../../../../../AppData/Local/Yarn/Berry/cache/@splidejs-splide-npm-4.1.4-574032679c-10.zip/node_modules/@splidejs/splide/dist/css/splide.min.css ***!
  \****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
.splide__container {
  box-sizing: border-box;
  position: relative;
}

.splide__list {
  backface-visibility: hidden;
  display: -ms-flexbox;
  display: flex;
  height: 100%;
  margin: 0 !important;
  padding: 0 !important;
}

.splide.is-initialized:not(.is-active) .splide__list {
  display: block;
}

.splide__pagination {
  -ms-flex-align: center;
  align-items: center;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-pack: center;
  justify-content: center;
  margin: 0;
  pointer-events: none;
}

.splide__pagination li {
  display: inline-block;
  line-height: 1;
  list-style-type: none;
  margin: 0;
  pointer-events: auto;
}

.splide:not(.is-overflow) .splide__pagination {
  display: none;
}

.splide__progress__bar {
  width: 0;
}

.splide {
  position: relative;
  visibility: hidden;
}

.splide.is-initialized, .splide.is-rendered {
  visibility: visible;
}

.splide__slide {
  backface-visibility: hidden;
  box-sizing: border-box;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  list-style-type: none !important;
  margin: 0;
  position: relative;
}

.splide__slide img {
  vertical-align: bottom;
}

.splide__spinner {
  animation: splide-loading 1s linear infinite;
  border: 2px solid #999;
  border-left-color: transparent;
  border-radius: 50%;
  bottom: 0;
  contain: strict;
  display: inline-block;
  height: 20px;
  left: 0;
  margin: auto;
  position: absolute;
  right: 0;
  top: 0;
  width: 20px;
}

.splide__sr {
  clip: rect(0 0 0 0);
  border: 0;
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}

.splide__toggle.is-active .splide__toggle__play, .splide__toggle__pause {
  display: none;
}

.splide__toggle.is-active .splide__toggle__pause {
  display: inline;
}

.splide__track {
  overflow: hidden;
  position: relative;
  z-index: 0;
}

@keyframes splide-loading {
  0% {
    transform: rotate(0);
  }
  to {
    transform: rotate(1turn);
  }
}
.splide__track--draggable {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.splide__track--fade > .splide__list > .splide__slide {
  margin: 0 !important;
  opacity: 0;
  z-index: 0;
}

.splide__track--fade > .splide__list > .splide__slide.is-active {
  opacity: 1;
  z-index: 1;
}

.splide--rtl {
  direction: rtl;
}

.splide__track--ttb > .splide__list {
  display: block;
}

.splide__arrow {
  -ms-flex-align: center;
  align-items: center;
  background: #ccc;
  border: 0;
  border-radius: 50%;
  cursor: pointer;
  display: -ms-flexbox;
  display: flex;
  height: 2em;
  -ms-flex-pack: center;
  justify-content: center;
  opacity: 0.7;
  padding: 0;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 2em;
  z-index: 1;
}

.splide__arrow svg {
  fill: #000;
  height: 1.2em;
  width: 1.2em;
}

.splide__arrow:hover:not(:disabled) {
  opacity: 0.9;
}

.splide__arrow:disabled {
  opacity: 0.3;
}

.splide__arrow:focus-visible {
  outline: 3px solid #0bf;
  outline-offset: 3px;
}

.splide__arrow--prev {
  left: 1em;
}

.splide__arrow--prev svg {
  transform: scaleX(-1);
}

.splide__arrow--next {
  right: 1em;
}

.splide.is-focus-in .splide__arrow:focus {
  outline: 3px solid #0bf;
  outline-offset: 3px;
}

.splide__pagination {
  bottom: 0.5em;
  left: 0;
  padding: 0 1em;
  position: absolute;
  right: 0;
  z-index: 1;
}

.splide__pagination__page {
  background: #ccc;
  border: 0;
  border-radius: 50%;
  display: inline-block;
  height: 8px;
  margin: 3px;
  opacity: 0.7;
  padding: 0;
  position: relative;
  transition: transform 0.2s linear;
  width: 8px;
}

.splide__pagination__page.is-active {
  background: #fff;
  transform: scale(1.4);
  z-index: 1;
}

.splide__pagination__page:hover {
  cursor: pointer;
  opacity: 0.9;
}

.splide__pagination__page:focus-visible {
  outline: 3px solid #0bf;
  outline-offset: 3px;
}

.splide.is-focus-in .splide__pagination__page:focus {
  outline: 3px solid #0bf;
  outline-offset: 3px;
}

.splide__progress__bar {
  background: #ccc;
  height: 3px;
}

.splide__slide {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

.splide__slide:focus {
  outline: 0;
}

@supports (outline-offset: -3px) {
  .splide__slide:focus-visible {
    outline: 3px solid #0bf;
    outline-offset: -3px;
  }
}
@media screen and (-ms-high-contrast: none) {
  .splide__slide:focus-visible {
    border: 3px solid #0bf;
  }
}
@supports (outline-offset: -3px) {
  .splide.is-focus-in .splide__slide:focus {
    outline: 3px solid #0bf;
    outline-offset: -3px;
  }
}
@media screen and (-ms-high-contrast: none) {
  .splide.is-focus-in .splide__slide:focus {
    border: 3px solid #0bf;
  }

  .splide.is-focus-in .splide__track > .splide__list > .splide__slide:focus {
    border-color: #0bf;
  }
}
.splide__toggle {
  cursor: pointer;
}

.splide__toggle:focus-visible {
  outline: 3px solid #0bf;
  outline-offset: 3px;
}

.splide.is-focus-in .splide__toggle:focus {
  outline: 3px solid #0bf;
  outline-offset: 3px;
}

.splide__track--nav > .splide__list > .splide__slide {
  border: 3px solid transparent;
  cursor: pointer;
}

.splide__track--nav > .splide__list > .splide__slide.is-active {
  border: 3px solid #000;
}

.splide__arrows--rtl .splide__arrow--prev {
  left: auto;
  right: 1em;
}

.splide__arrows--rtl .splide__arrow--prev svg {
  transform: scaleX(1);
}

.splide__arrows--rtl .splide__arrow--next {
  left: 1em;
  right: auto;
}

.splide__arrows--rtl .splide__arrow--next svg {
  transform: scaleX(-1);
}

.splide__arrows--ttb .splide__arrow {
  left: 50%;
  transform: translate(-50%);
}

.splide__arrows--ttb .splide__arrow--prev {
  top: 1em;
}

.splide__arrows--ttb .splide__arrow--prev svg {
  transform: rotate(-90deg);
}

.splide__arrows--ttb .splide__arrow--next {
  bottom: 1em;
  top: auto;
}

.splide__arrows--ttb .splide__arrow--next svg {
  transform: rotate(90deg);
}

.splide__pagination--ttb {
  bottom: 0;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  left: auto;
  padding: 1em 0;
  right: 0.5em;
  top: 0;
}
/*!*******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./.yarn/__virtual__/css-loader-virtual-bf286824a5/6/AppData/Local/Yarn/Berry/cache/css-loader-npm-6.7.3-63aa933400-10.zip/node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./.yarn/__virtual__/postcss-loader-virtual-1b7e30ecb8/6/AppData/Local/Yarn/Berry/cache/postcss-loader-npm-7.3.0-788d8ed604-10.zip/node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[1].use[2]!../../../../../AppData/Local/Yarn/Berry/cache/resolve-url-loader-npm-5.0.0-9b441067c9-10.zip/node_modules/resolve-url-loader/index.js??ruleSet[1].rules[1].use[3]!./.yarn/__virtual__/sass-loader-virtual-51a5632b47/6/AppData/Local/Yarn/Berry/cache/sass-loader-npm-13.2.2-b5bbed2dce-10.zip/node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[1].use[4]!../../../../../AppData/Local/Yarn/Berry/cache/@splidejs-splide-npm-4.1.4-574032679c-10.zip/node_modules/@splidejs/splide/dist/css/themes/splide-default.min.css ***!
  \*******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
.splide__container {
  box-sizing: border-box;
  position: relative;
}

.splide__list {
  backface-visibility: hidden;
  display: -ms-flexbox;
  display: flex;
  height: 100%;
  margin: 0 !important;
  padding: 0 !important;
}

.splide.is-initialized:not(.is-active) .splide__list {
  display: block;
}

.splide__pagination {
  -ms-flex-align: center;
  align-items: center;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-pack: center;
  justify-content: center;
  margin: 0;
  pointer-events: none;
}

.splide__pagination li {
  display: inline-block;
  line-height: 1;
  list-style-type: none;
  margin: 0;
  pointer-events: auto;
}

.splide:not(.is-overflow) .splide__pagination {
  display: none;
}

.splide__progress__bar {
  width: 0;
}

.splide {
  position: relative;
  visibility: hidden;
}

.splide.is-initialized, .splide.is-rendered {
  visibility: visible;
}

.splide__slide {
  backface-visibility: hidden;
  box-sizing: border-box;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  list-style-type: none !important;
  margin: 0;
  position: relative;
}

.splide__slide img {
  vertical-align: bottom;
}

.splide__spinner {
  animation: splide-loading 1s linear infinite;
  border: 2px solid #999;
  border-left-color: transparent;
  border-radius: 50%;
  bottom: 0;
  contain: strict;
  display: inline-block;
  height: 20px;
  left: 0;
  margin: auto;
  position: absolute;
  right: 0;
  top: 0;
  width: 20px;
}

.splide__sr {
  clip: rect(0 0 0 0);
  border: 0;
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}

.splide__toggle.is-active .splide__toggle__play, .splide__toggle__pause {
  display: none;
}

.splide__toggle.is-active .splide__toggle__pause {
  display: inline;
}

.splide__track {
  overflow: hidden;
  position: relative;
  z-index: 0;
}

@keyframes splide-loading {
  0% {
    transform: rotate(0);
  }
  to {
    transform: rotate(1turn);
  }
}
.splide__track--draggable {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.splide__track--fade > .splide__list > .splide__slide {
  margin: 0 !important;
  opacity: 0;
  z-index: 0;
}

.splide__track--fade > .splide__list > .splide__slide.is-active {
  opacity: 1;
  z-index: 1;
}

.splide--rtl {
  direction: rtl;
}

.splide__track--ttb > .splide__list {
  display: block;
}

.splide__arrow {
  -ms-flex-align: center;
  align-items: center;
  background: #ccc;
  border: 0;
  border-radius: 50%;
  cursor: pointer;
  display: -ms-flexbox;
  display: flex;
  height: 2em;
  -ms-flex-pack: center;
  justify-content: center;
  opacity: 0.7;
  padding: 0;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 2em;
  z-index: 1;
}

.splide__arrow svg {
  fill: #000;
  height: 1.2em;
  width: 1.2em;
}

.splide__arrow:hover:not(:disabled) {
  opacity: 0.9;
}

.splide__arrow:disabled {
  opacity: 0.3;
}

.splide__arrow:focus-visible {
  outline: 3px solid #0bf;
  outline-offset: 3px;
}

.splide__arrow--prev {
  left: 1em;
}

.splide__arrow--prev svg {
  transform: scaleX(-1);
}

.splide__arrow--next {
  right: 1em;
}

.splide.is-focus-in .splide__arrow:focus {
  outline: 3px solid #0bf;
  outline-offset: 3px;
}

.splide__pagination {
  bottom: 0.5em;
  left: 0;
  padding: 0 1em;
  position: absolute;
  right: 0;
  z-index: 1;
}

.splide__pagination__page {
  background: #ccc;
  border: 0;
  border-radius: 50%;
  display: inline-block;
  height: 8px;
  margin: 3px;
  opacity: 0.7;
  padding: 0;
  position: relative;
  transition: transform 0.2s linear;
  width: 8px;
}

.splide__pagination__page.is-active {
  background: #fff;
  transform: scale(1.4);
  z-index: 1;
}

.splide__pagination__page:hover {
  cursor: pointer;
  opacity: 0.9;
}

.splide__pagination__page:focus-visible {
  outline: 3px solid #0bf;
  outline-offset: 3px;
}

.splide.is-focus-in .splide__pagination__page:focus {
  outline: 3px solid #0bf;
  outline-offset: 3px;
}

.splide__progress__bar {
  background: #ccc;
  height: 3px;
}

.splide__slide {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

.splide__slide:focus {
  outline: 0;
}

@supports (outline-offset: -3px) {
  .splide__slide:focus-visible {
    outline: 3px solid #0bf;
    outline-offset: -3px;
  }
}
@media screen and (-ms-high-contrast: none) {
  .splide__slide:focus-visible {
    border: 3px solid #0bf;
  }
}
@supports (outline-offset: -3px) {
  .splide.is-focus-in .splide__slide:focus {
    outline: 3px solid #0bf;
    outline-offset: -3px;
  }
}
@media screen and (-ms-high-contrast: none) {
  .splide.is-focus-in .splide__slide:focus {
    border: 3px solid #0bf;
  }

  .splide.is-focus-in .splide__track > .splide__list > .splide__slide:focus {
    border-color: #0bf;
  }
}
.splide__toggle {
  cursor: pointer;
}

.splide__toggle:focus-visible {
  outline: 3px solid #0bf;
  outline-offset: 3px;
}

.splide.is-focus-in .splide__toggle:focus {
  outline: 3px solid #0bf;
  outline-offset: 3px;
}

.splide__track--nav > .splide__list > .splide__slide {
  border: 3px solid transparent;
  cursor: pointer;
}

.splide__track--nav > .splide__list > .splide__slide.is-active {
  border: 3px solid #000;
}

.splide__arrows--rtl .splide__arrow--prev {
  left: auto;
  right: 1em;
}

.splide__arrows--rtl .splide__arrow--prev svg {
  transform: scaleX(1);
}

.splide__arrows--rtl .splide__arrow--next {
  left: 1em;
  right: auto;
}

.splide__arrows--rtl .splide__arrow--next svg {
  transform: scaleX(-1);
}

.splide__arrows--ttb .splide__arrow {
  left: 50%;
  transform: translate(-50%);
}

.splide__arrows--ttb .splide__arrow--prev {
  top: 1em;
}

.splide__arrows--ttb .splide__arrow--prev svg {
  transform: rotate(-90deg);
}

.splide__arrows--ttb .splide__arrow--next {
  bottom: 1em;
  top: auto;
}

.splide__arrows--ttb .splide__arrow--next svg {
  transform: rotate(90deg);
}

.splide__pagination--ttb {
  bottom: 0;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  left: auto;
  padding: 1em 0;
  right: 0.5em;
  top: 0;
}
/*!****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./.yarn/__virtual__/css-loader-virtual-bf286824a5/6/AppData/Local/Yarn/Berry/cache/css-loader-npm-6.7.3-63aa933400-10.zip/node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./.yarn/__virtual__/postcss-loader-virtual-1b7e30ecb8/6/AppData/Local/Yarn/Berry/cache/postcss-loader-npm-7.3.0-788d8ed604-10.zip/node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[1].use[2]!../../../../../AppData/Local/Yarn/Berry/cache/resolve-url-loader-npm-5.0.0-9b441067c9-10.zip/node_modules/resolve-url-loader/index.js??ruleSet[1].rules[1].use[3]!./.yarn/__virtual__/sass-loader-virtual-51a5632b47/6/AppData/Local/Yarn/Berry/cache/sass-loader-npm-13.2.2-b5bbed2dce-10.zip/node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[1].use[4]!./src/styles/master.scss ***!
  \****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
@charset "UTF-8";
/* ### Bullets */
/* XXS Mobile (min width) */
/* XS Mobile (min width) */
/* XS Mobile (max width) */
/* Mobile (min width) */
/* Mobile (max width) */
/* Mobile (max width) */
/* Tablets (min width) */
/* Tablets (max width) */
/* Small Desktop  (min width) */
/* Small Desktop (max width) */
/* Large Desktop (min width) */
/* Large Desktop (max width) */
/* Extra-Large Desktop (min width) */
/* Extra-Large Desktop (max width) */
/* High Definition (HD) - THIS IS THE LEVEL OF OUR DEFAULT STYLES */
/* Containers - PLEASE USE REMS */
/* Container Padding */
/* Whitespace */
/* fontsize */
/* Base unit used for spacing gutters */
/* Buttons */
/****************************************************************************************************/
/* #region Buttons */
/****************************************************************************************************/
/*@mixin button($style: "default", $modifier: "", $includeDefaultStyles: true) {*/
/* Default / Base button styles - only include these when you really need them */
/* This is what you'll get when you just call @include button; (but you should avoid using this mixin altogether if you can) */
/*@if($style == "default" or $includeDefaultStyles) {
    color: $buttonTextColour;
    cursor: pointer;
    display: inline-flex;
    justify-content: center;
    align-items: center;*/
/*padding: 0.9rem 1.4em;*/
/*padding: 0.8em 2em;
margin-top: 1em;
font-size: 0.9rem;
font-weight: $fontWeightLight;
text-align: center;
text-transform: uppercase;
text-decoration: none !important;
border: $buttonBorderWidth $buttonBorderStyle $buttonBorderColour;
border-radius: $buttonBorderRadius;
background-color: transparent;
transition: $transition;
white-space: nowrap;
letter-spacing: 0.1em; //$letterSpacing;
height: auto;
width:fit-content;

&:after { // icon base
    width: 1em;
    height: 1em;
    display: inline-block;
    content: initial;
    position: relative;
    background-repeat: no-repeat;
    background-position: center;
    margin-left: 0.6em;
}*/
/* FontAwesome Icons in markup */
/*[class*="fa-"] {
        margin-left: 0.6rem;
    }

    &:hover,
    &:focus {
        color: white;
        background-color: darken($secondaryColour, 5%);
        text-decoration: none !important;
    }

    &:active {
        color: white;
        text-decoration: none !important;
        background-color: darken($secondaryColour, 10%);
    }
}*/
/* Reverse (flip the colours of the standard button */
/*@if($style == "reverse") {
    background-color: $secondaryColour;
    color: white;
    border: $buttonBorderWidth solid $secondaryColour;

    &:hover {
        background-color: white;
        color: $secondaryColour;
    }

    &:active {
        background-color: white;
        color: $secondaryColour;
    }
}

@if($style == "dark") {
    background-color: $secondaryColour;
    border: $buttonBorderWidth solid $secondaryColour;
    color: white;

    &:hover,
    &:focus {
        border-color: darken($secondaryColour, 10%);
        background-color: darken($secondaryColour, 10%);
    }

    &:active {
        border-color: darken($secondaryColour, 10%);
        background-color: darken($secondaryColour, 10%);
    }
}*/
/* Outline */
/*@if($style == "outline") {
    background-color: white;
    color: $secondaryColour;
    border: $buttonBorderWidth solid $primaryColour;

    &:hover {
        background-color: $secondaryColour;
        color: white;
    }

    &:active {
        color: white;
        background-color: darken($secondaryColour, 10%);
    }
}*/
/* Arrow */
/*@else if($style == "arrow") {
    &:after {
        content: ' ';
        background-image: url(/CFImages/Icons/arrow-right.svg);
    }

    &:hover,
    &:focus,
    &:active {
        &:after {
            background-image: url(/CFImages/Icons/arrow-right-white.svg);
        }
    }
}*/
/* Large */
/*@else if($modifier == "large") {
        font-size: 1.2rem;
    }
}*/
/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Link Styler */
/****************************************************************************************************/
/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Functions */
/****************************************************************************************************/
/* Remove units from a value */
/* Convert pixels to rems */
/* Convert rems to pixels */
/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Shortcut Selectors */
/****************************************************************************************************/
/*
    Set focus styles ONLY for users that need it.
    Will not work on older browsers (see base focus styles for example of overriding).
*/
/*  Just an alias for focusVisible */
/*
    Focus AND Hover
    A shortcut for when you need to share styles between focus and hover.
    Most of the time styles should go into separate focusVisible and/or :hover rules as needed.
*/
/* Select all FontAwesome icons */
/* Shortcut for writing out h1-h6 */
/* Cross-browser placeholders */
/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Font Styless & Fluid Type */
/****************************************************************************************************/
/*
$min_width: 320px;
$max_width: 1200px;
$min_font: 16px;
$max_font: 24px;
@include fluid-type($min_width, $max_width, $min_font, $max_font);
*/
/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Font Styless & Fluid Type */
/****************************************************************************************************/
/* Font Size Clamp */
/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Grid Mixins */
/****************************************************************************************************/
/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Size & Position */
/****************************************************************************************************/
/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Overlays & Gradients */
/****************************************************************************************************/
/*background-image: linear-gradient(120deg, scrim-gradient($primaryColour));*/
/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Whitespace  */
/* You shouldn't ever need to use this directly - it's just used to generate our whitespace classes */
/* based on: https://styleguide.pivotal.io/modifiers/whitespace/#classes */
/****************************************************************************************************/
/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Modifiers  */
/* You shouldn't ever need to use this directly - it's just used to generate our subheader classes */
/* Based content https://frontstuff.io/generate-all-your-utility-classes-with-sass-maps            */
/****************************************************************************************************/
/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Misc */
/****************************************************************************************************/
/* shared outline styles for focus */
/* #endregion */
/****************************************************************************************************/
/* Force text to wrap with hyphen if to long (example long email) */
a[href^=mailto] {
  overflow-wrap: break-word;
  word-wrap: break-word;
  word-break: break-all;
  word-break: break-word;
  -webkit-hyphens: auto;
          hyphens: auto;
  white-space: unset;
}

.container.edge *.container.full, .container.full {
  padding-left: 5rem;
  padding-right: 5rem;
  /*        @media(max-width:$XL_Max) {
          padding-left: $desktopPadding;
          padding-right: $desktopPadding;
      }*/
}
@media (max-width: 1599px) {
  .container.edge *.container.full, .container.full {
    padding-left: 4rem;
    padding-right: 4rem;
  }
}
@media (max-width: 1299px) {
  .container.edge *.container.full, .container.full {
    padding-left: 3rem;
    padding-right: 3rem;
  }
}
@media (max-width: 1024px) {
  .container.edge *.container.full, .container.full {
    padding-left: 2rem;
    padding-right: 2rem;
  }
}
@media (max-width: 767px) {
  .container.edge *.container.full, .container.full {
    padding-left: 25px;
    padding-right: 25px;
  }
}
@media (max-width: 500px) {
  .container.edge *.container.full, .container.full {
    padding-left: 1rem;
    padding-right: 1rem;
  }
}

.coverImg {
  inset: 0;
  display: block;
  position: absolute;
}

/****************************************************************************************************/
/* #region Flex Grid */
/****************************************************************************************************/
.grid {
  /*width: 100%;*/
  width: initial;
  box-sizing: border-box;
  display: flex;
  flex: 0 1 auto;
  flex-wrap: wrap;
  flex-direction: row;
  margin: 0 -1rem 0 -1rem;
}
.grid.col {
  width: auto;
}
.grid.grid-nogutter {
  margin: 0;
}
.grid.grid-nogutter > .col {
  margin: 0;
}
.grid.grid-nowrap {
  flex-wrap: nowrap;
}
.grid.featureFirst > .col:first-child {
  flex: 0 0 auto;
  /*order: 0;*/
  width: initial;
  max-width: 100%;
  margin-left: 0.5rem;
  margin-right: 0.5rem;
  vertical-align: top;
  /*width: calc((1 / 1) * 100% - 1rem);*/
  flex-basis: calc((1 / 1) * 100% - 1rem);
}
.grid:not(.col) {
  flex-grow: 1;
}
.grid > .col {
  margin: 0 1rem 0 1rem;
}

.col {
  min-width: 0;
  max-width: 100%;
  box-sizing: border-box;
  display: flex;
  flex: 1 0 0;
  flex-direction: column;
}

/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Grid + Column Alignment */
/****************************************************************************************************/
/* Justify Content Classes */
.grid-start,
.col-top {
  justify-content: flex-start;
}

.grid-end,
.col-bottom {
  justify-content: flex-end;
}

.grid-center,
.col-middle {
  justify-content: center;
}

.grid-evenly,
.col-evenly {
  justify-content: space-evenly;
}

.grid-around,
.col-around {
  justify-content: space-around;
}

.grid-between,
.col-between {
  justify-content: space-between;
}

/* Align Items Classes */
.col-align-start,
.grid-align-start {
  align-items: flex-start;
}

.col-align-end,
.grid-align-end {
  align-items: flex-end;
}

.col-align-center,
.grid-align-center {
  align-items: center;
}

.col-align-stretch,
.grid-align-stretch {
  align-items: stretch;
}

.col-align-baseline,
.grid-align-baseline {
  align-items: baseline;
}

/* Column Self-Alignment Classes */
.col-align-top {
  align-self: flex-start;
}

.col-align-bottom {
  align-self: flex-end;
}

.col-align-middle {
  align-self: center;
}

/* Reordering Columns */
.col-first {
  order: -1;
}

.col-last {
  order: 1;
}

.grid-reverse-columns {
  flex-direction: column-reverse;
}

.grid-reverse-rows {
  flex-direction: row-reverse;
}

/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Column Sizing */
/****************************************************************************************************/
.col-fixed {
  flex: initial;
  flex-shrink: 0;
}

.col-auto-width {
  flex: 0 1 auto;
}

.col-grow-2,
.grid.col-grow-2 {
  flex-grow: 2;
}

.col-grow-3,
.grid.col-grow-3 {
  flex-grow: 3;
}

.col-grow-4,
.grid.col-grow-4 {
  flex-grow: 4;
}

.col-grow-5,
.grid.col-grow-5 {
  flex-grow: 5;
}

.col-grow-6,
.grid.col-grow-6 {
  flex-grow: 6;
}

.col-grow-7,
.grid.col-grow-7 {
  flex-grow: 7;
}

.col-grow-8,
.grid.col-grow-8 {
  flex-grow: 8;
}

.col-grow-9,
.grid.col-grow-9 {
  flex-grow: 9;
}

.col-grow-10,
.grid.col-grow-10 {
  flex-grow: 10;
}

.col-grow-11,
.grid.col-grow-11 {
  flex-grow: 11;
}

.col-1 {
  flex-basis: 8.3333333333%;
  max-width: 8.3333333333%;
}

.col-2 {
  flex-basis: 16.6666666667%;
  max-width: 16.6666666667%;
}

.col-3 {
  flex-basis: 25%;
  max-width: 25%;
}

.col-4 {
  flex-basis: 33.3333333333%;
  max-width: 33.3333333333%;
}

.col-5 {
  flex-basis: 41.6666666667%;
  max-width: 41.6666666667%;
}

.col-6 {
  flex-basis: 50%;
  max-width: 50%;
}

.col-7 {
  flex-basis: 58.3333333333%;
  max-width: 58.3333333333%;
}

.col-8 {
  flex-basis: 66.6666666667%;
  max-width: 66.6666666667%;
}

.col-9 {
  flex-basis: 75%;
  max-width: 75%;
}

.col-10 {
  flex-basis: 83.3333333333%;
  max-width: 83.3333333333%;
}

.col-11 {
  flex-basis: 91.6666666667%;
  max-width: 91.6666666667%;
}

.col-12 {
  flex-basis: 100%;
  max-width: 100%;
}

/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Responsive Grids */
/****************************************************************************************************/
.grid[data-gutter-width] {
  flex-wrap: nowrap;
}
.sfPageEditor .grid[data-gutter-width] > .col {
  flex-grow: 1 !important;
  flex-shrink: 0 !important;
  flex-basis: 0 !important;
}
.grid[data-gutter-width]:not([data-media-breakpoint]) {
  /*@media (max-width: $M_Max) {
      @extend %colStackedStyles;
  }*/
}
@media (max-width: 1299px) {
  .grid[data-gutter-width][data-media-breakpoint="1299px"], .grid[data-gutter-width][data-media-breakpoint="1300px"] {
    flex-wrap: wrap;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
  .grid[data-gutter-width][data-media-breakpoint="1299px"] > .col, .grid[data-gutter-width][data-media-breakpoint="1300px"] > .col {
    margin-left: 0 !important;
    margin-right: 0 !important;
    width: 100% !important;
    max-width: initial !important;
    flex-basis: initial !important;
  }
}
@media (max-width: 1024px) {
  .grid[data-gutter-width][data-media-breakpoint="1024px"] {
    flex-wrap: wrap;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
  .grid[data-gutter-width][data-media-breakpoint="1024px"] > .col {
    margin-left: 0 !important;
    margin-right: 0 !important;
    width: 100% !important;
    max-width: initial !important;
    flex-basis: initial !important;
  }
}
@media (max-width: 767px) {
  .grid[data-gutter-width][data-media-breakpoint="767px"] {
    flex-wrap: wrap;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
  .grid[data-gutter-width][data-media-breakpoint="767px"] > .col {
    margin-left: 0 !important;
    margin-right: 0 !important;
    width: 100% !important;
    max-width: initial !important;
    flex-basis: initial !important;
  }
}
@media (max-width: 500px) {
  .grid[data-gutter-width][data-media-breakpoint="500px"] {
    flex-wrap: wrap;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
  .grid[data-gutter-width][data-media-breakpoint="500px"] > .col {
    margin-left: 0 !important;
    margin-right: 0 !important;
    width: 100% !important;
    max-width: initial !important;
    flex-basis: initial !important;
  }
}

/*
@media only screen and (max-width: $M_Max) {
    .grid {
        &:not([data-gutter-width]):not(.grid-nowrap) { // only apply to NON-resizable grids
            .col {
                flex: 100%;
                max-width: 100%;
            }
        }
    }
}
*/
/* #endregion */
/****************************************************************************************************/
@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fadeInUp {
  0% {
    opacity: 0;
    transform: translateY(100%);
  }
  30% {
    opacity: 0;
  }
  100% {
    opacity: 1;
    transform: translateY(0%);
  }
}
@keyframes fadeInDown {
  0% {
    opacity: 0;
    transform: translateY(-100%);
  }
  30% {
    opacity: 0;
  }
  100% {
    opacity: 1;
    transform: translateY(0%);
  }
}
@keyframes fadeInLeft {
  0% {
    opacity: 0;
    transform: translatex(-1000%);
  }
  30% {
    opacity: 0;
  }
  100% {
    opacity: 1;
    transform: translate(0);
  }
}
@keyframes fadeInRight {
  0% {
    opacity: 0;
    transform: translatex(1000%);
  }
  30% {
    opacity: 0;
  }
  100% {
    opacity: 1;
    transform: translate(0);
  }
}
@keyframes header-slide-in {
  0% {
    transform: translateY(-100%);
  }
  100% {
    transform: translateY(0%);
  }
}
@keyframes slideBottom {
  0% {
    transform: translateY(100%);
  }
  100% {
    filter: blur(0);
  }
}
@keyframes slideTop {
  0% {
    transform: translateY(-100%);
  }
  100% {
    transform: translateY(0);
  }
}
@keyframes clippath {
  0%, 100% {
    -webkit-clip-path: inset(0 0 95% 0);
            clip-path: inset(0 0 95% 0);
  }
  25% {
    -webkit-clip-path: inset(0 95% 0 0);
            clip-path: inset(0 95% 0 0);
  }
  50% {
    -webkit-clip-path: inset(95% 0 0 0);
            clip-path: inset(95% 0 0 0);
  }
  75% {
    -webkit-clip-path: inset(0 0 0 95%);
            clip-path: inset(0 0 0 95%);
  }
}
@keyframes rotate {
  100% {
    transform: rotate(1turn);
  }
}
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
  line-height: 1.15;
  /* 1 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
}

/* Sections
   ========================================================================== */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
  display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Remove Italic styling */
address {
  font-style: normal;
}

/* Grouping content
   ========================================================================== */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/* Text-level semantics
   ========================================================================== */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none;
  /* 1 */
  text-decoration: underline;
  /* 2 */
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
  /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
   ========================================================================== */
/**
 * Remove the border on images inside links in IE 10.
 */
img {
  border-style: none;
  display: block;
}

/* Forms
   ========================================================================== */
/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  /* 1 */
  font-size: 100%;
  /* 1 */
  line-height: 1.15;
  /* 1 */
  margin: 0;
  /* 2 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
  /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
  /* 1 */
  text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */
fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  box-sizing: border-box;
  /* 1 */
  color: inherit;
  /* 2 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  white-space: normal;
  /* 1 */
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type=checkbox],
[type=radio] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type=search] {
  -webkit-appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */
}

/* Interactive
   ========================================================================== */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}

/* Misc
   ========================================================================== */
/**
 * Add the correct display in IE 10+.
 */
template {
  display: none;
}

/**
 * Add the correct display in IE 10.
 */
[hidden] {
  display: none;
}

/* ### Bullets */
/* XXS Mobile (min width) */
/* XS Mobile (min width) */
/* XS Mobile (max width) */
/* Mobile (min width) */
/* Mobile (max width) */
/* Mobile (max width) */
/* Tablets (min width) */
/* Tablets (max width) */
/* Small Desktop  (min width) */
/* Small Desktop (max width) */
/* Large Desktop (min width) */
/* Large Desktop (max width) */
/* Extra-Large Desktop (min width) */
/* Extra-Large Desktop (max width) */
/* High Definition (HD) - THIS IS THE LEVEL OF OUR DEFAULT STYLES */
/* Containers - PLEASE USE REMS */
/* Container Padding */
/* Whitespace */
/* fontsize */
/* Base unit used for spacing gutters */
/* Buttons */
/* these need to be here for intellisense and go-to-definition to work */
/****************************************************************************************************/
/* #region Document */
/****************************************************************************************************/
::selection {
  background: #1057AD;
  color: white;
}

::-webkit-input-placeholder {
  color: #495157;
  color: #495157;
  text-transform: none;
}

:-moz-placeholder {
  color: #495157;
  color: #495157;
  text-transform: none;
}

::-moz-placeholder {
  color: #495157;
  color: #495157;
  text-transform: none;
}

:-ms-input-placeholder {
  color: #495157;
  color: #495157;
  text-transform: none;
}

* {
  box-sizing: border-box;
}

:root {
  --scrollbar-width: 16px;
  --header-height: 124px;
  --card-width: 16rem;
  --column-count: 3;
  --card-gap: 1.5rem;
  color-scheme: normal !important;
  /* For Images */
  --image-width: 0;
  --image-height: 0;
  --image-aspectratio: 1.5;
  --layoutPadding: 60px;
  --layoutPaddingSmall: 30px;
  /* Colours */
  --Blue-1: #002E5D;
  --Grey-1: #495157;
  --Grey-2: #A2AAAD;
  --Grey-3: #D0D3D4;
  /* Containers */
  --container-padding: 5rem;
}

html {
  min-height: auto;
  font-style: normal;
  font-family: "Mulish", sans-serif;
  font-weight: 400;
  line-height: 1.5;
  font-size: clamp(16px, 8.8571428571px + 0.0069686411 * 100vw, 20px);
  scroll-behavior: smooth;
  background-color: black;
}

body {
  min-height: 100vh;
  overflow-x: hidden;
  overflow-y: auto;
  color: white;
  font-style: normal;
  font-family: "Mulish", sans-serif;
  font-weight: 400;
  background: radial-gradient(60.81% 37.42% at 59.01% 43.89%, #002E5D 7.84%, rgba(0, 46, 93, 0.6) 100%);
}

/* Custom Scrollbar Styles (only works in the latest browsers) */
::-webkit-scrollbar-track {
  -webkit-box-shadow: inset 0 0 6px rgba(208, 211, 212, 0.5);
  background-color: #F5F5F5;
}

::-webkit-scrollbar {
  width: 10px;
  background-color: #D0D3D4;
}

::-webkit-scrollbar-thumb {
  background-color: #D0D3D4;
  border: 2px solid #D0D3D4;
}

/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Focus Styles */
/****************************************************************************************************/
* {
  outline-offset: 0;
}

*:focus {
  /* simple focus styles (for older browsers without support for :focus-visible */
  outline: 2px solid #495157;
}

*:focus:not(:focus-visible) {
  /* undo all the above focused button styles */
  outline: none;
}

*:focus-visible {
  /* focus styles for modern browsers */
  outline: 2px solid #495157;
}

/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Text-level Semantics */
/****************************************************************************************************/
p {
  margin: 0 0 1rem 0;
  padding: 0;
  font-size: 1em;
  font-style: normal;
  line-height: 1.5;
}

strong, b {
  /*font-weight: $fontWeightSemiBold;*/
  font-weight: 700;
  font-style: normal;
}

em, i {
  font-style: italic;
}

sup {
  vertical-align: super;
  font-size: 50%;
  font-style: normal;
}

sub {
  vertical-align: sub;
  font-size: 50%;
  font-style: normal;
}

blockquote {
  width: 100%;
  max-width: 100%;
  position: relative;
  border: none;
  color: inherit;
  text-align: left;
  font-size: clamp(20px, 14.4548736462px + 0.0072202166 * 100vw, 26px);
  line-height: 1.4;
  padding: 96px 140px 96px 64px;
  margin: 0 0 1.4rem 0;
  background: rgba(255, 255, 255, 0.1);
}
blockquote:before {
  content: "";
  position: absolute;
  right: 64px;
  top: 64px;
  height: calc(100% - 128px);
  border-right: 8px solid rgba(255, 255, 255, 0.2);
}
blockquote p {
  font-size: clamp(20px, 14.4548736462px + 0.0072202166 * 100vw, 26px);
}

a {
  color: white;
  transition: all 0.2s ease, font-size 0s linear, padding 0s linear, margin 0s linear, outline 0s linear;
  text-decoration: none;
}

a:visited {
  color: white;
}

a:hover {
  color: var(--Grey-3);
  text-decoration: underline;
}

a:active {
  color: var(--Grey-2);
  text-decoration: none;
}

hr {
  border: none;
  height: 1px;
  margin: 2rem 0;
  background-color: #D0D3D4;
}

li {
  list-style: none;
  font-size: 1em;
  font-style: normal;
}

ul,
ol {
  margin: 0;
  padding: 0;
  list-style: none;
}
ul li,
ol li {
  list-style: none;
}
/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Headings */
/****************************************************************************************************/
h1, h2, h3, h4, h5, h6 {
  font-style: normal;
  font-family: "Mulish", sans-serif;
  font-weight: 600;
  line-height: 1.2;
  letter-spacing: -1.5px;
  color: white;
  margin: 0 0 1.25rem;
  padding: 0;
  display: block;
}
h1.centered, h2.centered, h3.centered, h4.centered, h5.centered, h6.centered {
  text-align: center;
}

:is(h1, h2, h3, h4, h5, h6) + :is(h1, h2, h3, h4, h5, h6) {
  margin-top: 0;
}

h1 {
  font-size: clamp(42px, 10.5776173285px + 0.0409145608 * 100vw, 76px);
  letter-spacing: inherit;
  padding-bottom: 1.8rem;
  margin: 10px 0 0 0;
}

h2 {
  font-size: clamp(32px, 9.8194945848px + 0.0288808664 * 100vw, 56px);
  letter-spacing: -1.08px;
  padding-bottom: 1.8rem;
  margin: 10px 0 0 0;
}

h3 {
  font-size: clamp(26px, 9.3646209386px + 0.0216606498 * 100vw, 44px);
  letter-spacing: -0.9px;
  padding-bottom: 1.5rem;
  margin: 10px 0 0 0;
}

h4 {
  font-size: clamp(22px, 9.0613718412px + 0.0168471721 * 100vw, 36px);
  letter-spacing: -0.74px;
  padding-bottom: 1.1rem;
  margin: 10px 0 0 0;
}

h5 {
  font-size: clamp(20px, 10.7581227437px + 0.0120336943 * 100vw, 30px);
  letter-spacing: -0.62px;
  padding-bottom: 1.05rem;
  margin: 10px 0 0 0;
}

h6 {
  font-size: clamp(18px, 12.4548736462px + 0.0072202166 * 100vw, 24px);
  letter-spacing: -0.52px;
  padding-bottom: 1.05rem;
  margin: 10px 0 0 0;
}

/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Buttons */
/****************************************************************************************************/
:is(.button, button),
.cmsContent :is(.button, button) {
  display: inline-flex;
  padding: 16px 36px;
  justify-content: center;
  align-items: center;
  gap: 10px;
  color: #fff;
  background: rgba(255, 255, 255, 0.2);
  border-radius: 1px;
  border: none;
  transition: all 0.2s ease, font-size 0s linear, padding 0s linear, margin 0s linear, outline 0s linear;
  font-size: 20px;
  font-weight: 400;
  line-height: 1.4;
  cursor: pointer;
  margin-top: 1.4em;
}
:is(.button, button):hover, :is(.button, button):focus,
.cmsContent :is(.button, button):hover,
.cmsContent :is(.button, button):focus {
  background: rgba(255, 255, 255, 0.4);
  text-decoration: none;
}
:is(.button, button):active,
.cmsContent :is(.button, button):active {
  color: var(--Grey-1);
  background: white;
  text-decoration: none;
}

/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Hyperlinks + Special Links */
/****************************************************************************************************/
/* Special Links */
/* Non-link elements with onclick functionality */
.clickable {
  cursor: pointer;
}

/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Images */
/****************************************************************************************************/
img {
  width: auto;
  max-width: 100%;
  height: auto;
}

/* As a NATIVE picture img */
.imgWrapper {
  width: 100%;
  /* if wrapped in hyperlink */
}
.imgWrapper img {
  max-width: 100%;
  height: 100%;
  width: 100%;
  aspect-ratio: auto;
  -o-object-fit: cover;
     object-fit: cover;
}
.imgWrapper a img {
  max-width: 100%;
}

/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/*#region TYPOGRAPHY CMS Content Styles */
/****************************************************************************************************/
.cmsContent {
  color: white;
  font-size: 1em;
  line-height: 1.5;
  /* #### Prose Headings #### */
  /* Links */
  /*    a[1="_blank"]:not(.button):after {
      content: " ";
      position: relative;
      display: inline-block;
      font-size: .6em;
      padding-left: .5rem;
  }*/
  /* Paragraphs */
  /* SHARED list styles */
  /* Unordered Lists Styles ONLY */
  /* Make sure what you're adding belongs here, and not in the SHARED list styles above */
  /* Ordered Lists */
  /* Make sure what you're adding belongs here, and not in the SHARED list styles above */
}
.cmsContent font {
  color: inherit;
  font-size: inherit;
}
.cmsContent img {
  max-width: 100%;
}
.cmsContent em, .cmsContent i {
  font-style: italic;
}
.cmsContent h1, .cmsContent h2, .cmsContent h3, .cmsContent h4, .cmsContent h5, .cmsContent h6 {
  color: white;
}
.cmsContent h1:first-child, .cmsContent h2:first-child, .cmsContent h3:first-child, .cmsContent h4:first-child, .cmsContent h5:first-child, .cmsContent h6:first-child {
  margin-top: 0;
}
.cmsContent a {
  color: white;
  text-decoration: none;
}
.cmsContent a:active {
  color: var(--Grey-2);
}
.cmsContent a:focus:focus-visible {
  color: var(--Grey-3);
  text-decoration: underline;
  cursor: pointer;
}
.cmsContent a:hover {
  color: var(--Grey-3);
  text-decoration: underline;
  cursor: pointer;
}
.cmsContent .socialLinks a[target=_blank]:after {
  content: none;
}
.cmsContent p {
  line-height: 1.5;
}
.cmsContent p.largerText {
  font-size: clamp(24px, 18.4548736462px + 0.0072202166 * 100vw, 30px);
}
.cmsContent ul,
.cmsContent ol {
  margin: 1rem 0;
  /* SHARED list item styles */
  /* SHARED nested list styles */
  /* Special lists:   Alpha & Roman Numerals */
}
.cmsContent ul li,
.cmsContent ol li {
  margin: 0 0 0.8em;
  position: relative;
  padding: 0 0 0 1.75rem;
}
.cmsContent ul ol,
.cmsContent ul ul,
.cmsContent ol ol,
.cmsContent ol ul {
  margin: 0.4rem 0;
}
.cmsContent ul ol > li,
.cmsContent ul ul > li,
.cmsContent ol ol > li,
.cmsContent ol ul > li {
  background: none;
}
.cmsContent ul ol > li:before,
.cmsContent ul ul > li:before,
.cmsContent ol ol > li:before,
.cmsContent ol ul > li:before {
  color: white;
}
.cmsContent ul ul > li,
.cmsContent ol ul > li {
  /* bullet icon */
}
.cmsContent ul ul > li:before,
.cmsContent ol ul > li:before {
  content: " ";
  top: 5px;
  left: 0;
  width: 1rem;
  height: 1rem;
  background-image: url(/CFImages/Icons/nested-bullet.svg);
  background-size: 12px auto;
}
.cmsContent ul.roman > li,
.cmsContent ol.roman > li {
  padding-left: 2rem;
}
.cmsContent ul.roman > li:before,
.cmsContent ol.roman > li:before {
  content: counter(customListCounter, lower-roman) ".";
}
.cmsContent ul.alpha > li:before, .cmsContent ul.lettered > li:before,
.cmsContent ol.alpha > li:before,
.cmsContent ol.lettered > li:before {
  content: counter(customListCounter, lower-alpha) ".";
}
.cmsContent ul.upper > li:before, .cmsContent ul.uppercase > li:before,
.cmsContent ol.upper > li:before,
.cmsContent ol.uppercase > li:before {
  text-transform: uppercase;
}
.cmsContent ul.reset li,
.cmsContent ol.reset li {
  padding-left: 0;
}
.cmsContent ul.reset li:before,
.cmsContent ol.reset li:before {
  display: none;
}
.cmsContent ul {
  list-style-type: none;
}
.cmsContent ul > li {
  list-style-type: none;
  font-size: 1em;
  position: relative;
  /* bullet icon */
}
.cmsContent ul > li:before {
  content: " ";
  top: initial;
  left: 0;
  width: 1em;
  height: 1.4em;
  color: white;
  content: "";
  display: block;
  position: absolute;
  line-height: inherit;
  background-image: url(/CFImages/Icons/circle-solid.svg);
  background-size: 0.4em auto;
  background-repeat: no-repeat;
  background-position: center;
}
.cmsContent ol {
  counter-reset: customListCounter 0;
  list-style-position: outside;
}
.cmsContent ol > li {
  list-style-type: none;
  list-style-position: inside;
  counter-increment: customListCounter;
}
.cmsContent ol > li:before {
  top: initial;
  left: 0.4rem;
  content: counter(customListCounter) ".";
  color: white;
  position: absolute;
  font-weight: 400;
}
.cmsContent address {
  margin: 0.5rem 0 1rem;
}
.cmsContent mark {
  color: white;
  background-color: #1057AD;
}
.cmsContent pre {
  white-space: pre-wrap;
  background-color: #efefef;
  padding: 2rem;
}
.cmsContent.highlight > p:nth-of-type(1) {
  font-size: 1.266rem;
  font-weight: 500;
  line-height: 1.2;
  margin: 0 0 1.38rem;
}
.cmsContent.highlightFirstElement > :first-child {
  font-style: normal;
  font-family: "Mulish", sans-serif;
  font-weight: 600;
  line-height: 1.2;
  letter-spacing: -1.5px;
  font-size: 1.3rem;
  margin: 0 0 1.38rem;
}
.cmsContent.highlightFirstElement > :first-child > * {
  font: inherit;
  line-height: inherit;
}

.light, .light .cmsContent {
  color: #001B37;
  background: white !important;
  /* SHARED list styles */
  /* Unordered Lists Styles ONLY */
  /* Make sure what you're adding belongs here, and not in the SHARED list styles above */
  /* Ordered Lists */
  /* Make sure what you're adding belongs here, and not in the SHARED list styles above */
}
.light ::selection, .light .cmsContent ::selection {
  color: #001B37 !important;
}
.light h1, .light h2, .light h3, .light h4, .light h5, .light h6, .light p, .light ul li, .light address, .light .cmsContent h1, .light .cmsContent h2, .light .cmsContent h3, .light .cmsContent h4, .light .cmsContent h5, .light .cmsContent h6, .light .cmsContent p, .light .cmsContent ul li, .light .cmsContent address {
  color: #001B37 !important;
}
.light a:link, .light a:visited, .light .cmsContent a:link, .light .cmsContent a:visited {
  color: #001B37;
}
.light a:hover, .light a:active, .light a:focus, .light .cmsContent a:hover, .light .cmsContent a:active, .light .cmsContent a:focus {
  color: #495157;
  text-decoration: underline;
}
.light button.button, .light a.button, .light .cmsContent button.button, .light .cmsContent a.button {
  color: white !important;
  background-color: #002E5D;
}
.light button.button:hover, .light button.button:active, .light button.button:focus, .light a.button:hover, .light a.button:active, .light a.button:focus, .light .cmsContent button.button:hover, .light .cmsContent button.button:active, .light .cmsContent button.button:focus, .light .cmsContent a.button:hover, .light .cmsContent a.button:active, .light .cmsContent a.button:focus {
  color: white !important;
  text-decoration: none;
  background-color: var(--Grey-1);
}
.light ul,
.light ol, .light .cmsContent ul,
.light .cmsContent ol {
  /* SHARED nested list styles */
}
.light ul ol > li:before,
.light ul ul > li:before,
.light ol ol > li:before,
.light ol ul > li:before, .light .cmsContent ul ol > li:before,
.light .cmsContent ul ul > li:before,
.light .cmsContent ol ol > li:before,
.light .cmsContent ol ul > li:before {
  color: #001B37 !important;
}
.light ul > li, .light .cmsContent ul > li {
  /* bullet icon */
}
.light ul > li:before, .light .cmsContent ul > li:before {
  color: white;
  background-image: url(/CFImages/Icons/circle-solid-primary.svg);
}
.light ol > li:before, .light .cmsContent ol > li:before {
  color: white;
}

/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Icons / FontAwesome / Kendo Icons */
/****************************************************************************************************/
/* A trick for prefetching icons we know we need to prevent the flash-of-unstyled-icon on hover */
body::after {
  position: absolute;
  width: 0;
  height: 0;
  overflow: hidden;
  z-index: -1;
  content: url(/CFImages/Icons/chevron-down.svg) url(/CFImages/Icons/chevron-up.svg) url(/CFImages/Icons/audio.svg) url(/CFImages/Icons/chevron-down.svg) url(/CFImages/Icons/chevron-up.svg);
}

/* Any and all FontAwesome icons */
[class^=fa-], [class*=" fa-"] {
  color: inherit;
}

/* shared Kendo widget icon styles (works with navigation css file) */
.k-icon {
  width: 3rem;
  height: 3rem;
  /* Expand / Collapse Arrows */
}
.k-icon:before {
  content: " ";
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  display: block;
  position: absolute;
  background-repeat: no-repeat;
  background-position: center;
  background-size: 0.6rem;
}
.k-icon.k-menu-expand-arrow:before, .k-icon.k-i-expand:before {
  background-image: url(/CFImages/Icons/chevron-down.svg);
  transition: all 0.2s ease, font-size 0s linear, padding 0s linear, margin 0s linear, outline 0s linear;
}
.k-state-active .k-icon.k-menu-expand-arrow:before, .k-state-active .k-icon.k-i-expand:before {
  background-image: url(/CFImages/Icons/chevron-up.svg);
}
.k-icon.k-i-collapse:before {
  background-image: url(/CFImages/Icons/chevron-up.svg);
}
.k-state-active .k-icon.k-i-collapse:before {
  background-image: url(/CFImages/Icons/chevron-down.svg);
}

/* selected element icon (needs to be white because dark background */
li.k-item.selected > div .k-icon:first-of-type.k-i-expand:before {
  background-image: url(/CFImages/Icons/chevron-down.svg);
}
li.k-item.selected > div .k-icon:first-of-type.k-i-collapse:before {
  background-image: url(/CFImages/Icons/chevron-up.svg);
}

/* Custom icons element with background svgs*/
.icon {
  display: inline-block;
  font-size: 1em;
}
.icon:before {
  content: " ";
  width: 1.4em;
  height: 1.4em;
  display: inline-block;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}
.icon.audio:before {
  background-image: url(/CFImages/Icons/audio.svg);
}
.icon.print:before {
  background-image: url(/CFImages/Icons/print.svg);
}
.icon.share:before {
  background-image: url(/CFImages/Icons/share.svg);
}
.icon.vcard:before {
  background-image: url(/CFImages/Icons/vcard.svg);
}
.icon.video:before {
  background-image: url(/CFImages/Icons/video.svg);
}

/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Skip-to-Content + Sticky Links */
/****************************************************************************************************/
#skiptocontent a {
  left: -999px;
  position: absolute;
  top: auto;
  width: 1px;
  height: 1px;
  overflow: hidden;
  z-index: -999;
}
#skiptocontent a:focus, #skiptocontent a:active {
  top: auto;
  left: auto;
  width: 30%;
  height: auto;
  z-index: 999;
  overflow: auto;
  margin: 10px 35%;
  padding: 5px;
  color: white;
  font-size: 1.2rem;
  text-align: center;
  border: 4px solid #1057AD;
  border-radius: 15px;
  background-color: black;
}

/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Layout / Structure */
/****************************************************************************************************/
body {
  display: flex;
  flex-direction: column;
}

#wrapper {
  overflow: hidden;
  height: auto !important;
  flex: 1 0 auto;
}
.k-ie11 #wrapper {
  flex: inherit;
}

.pageWrapper {
  position: relative;
  transition: all 0.2s ease, font-size 0s linear, padding 0s linear, margin 0s linear, outline 0s linear;
  left: 0;
}

.sfPageEditor .wrapper > * {
  opacity: 1 !important;
  transform: translatey(0) !important;
}

.wrapper > * {
  opacity: 0;
  transform: translatey(10%);
  transition: opacity 1s, transform 0.5s;
}
.wrapper.inViewport > * {
  opacity: 1;
  transform: translatey(0);
}
.wrapper.inViewport h2:after {
  width: 3rem;
}

.jumpMenuWrapper {
  padding: 1rem 0;
  background: linear-gradient(to bottom, #002e5d 0%, #495157 100%);
  filter: drop-shadow(0px 10px 8px #ccc);
  /* .topSection {
      background: linear-gradient(to bottom, #001378 0%, #013cac 100%);
      border-radius: 30px;
      border: solid 2px #fff;
  }*/
}
.jumpMenuWrapper ul {
  display: flex;
  gap: 0.5rem;
}
.jumpMenuWrapper a {
  font-family: "Mulish", sans-serif;
}
.jumpMenuWrapper a:link, .jumpMenuWrapper a:visited, .jumpMenuWrapper a:active {
  color: #fff;
}
.jumpMenuWrapper a:hover {
  color: #495157;
}

/* Special Dragable Layouts & Accordians (used with lists as well) */
.cflayout {
  margin: 0 0 var(--layoutPaddingSmall) 0;
}
.cflayout.layout-overlay-grid {
  margin-bottom: 0;
}

.layout-twocol-grid {
  display: grid;
  grid-template-columns: 50% 50%;
  gap: 0;
}
.layout-twocol-grid .content {
  padding: var(--layoutPadding);
  display: flex;
  flex-direction: column;
  justify-content: center;
}
/* photo grid */
.layout-photo-grid {
  display: grid;
  grid-template-columns: 50% 50%;
  gap: 0;
  position: relative;
}
.layout-photo-grid .photo, .layout-photo-grid .content {
  grid-row: 1;
}
.layout-photo-grid .photo {
  position: relative;
  width: 100%;
  height: 100%;
  padding: var(--layoutPaddingSmall);
}
.layout-photo-grid .photo picture, .layout-photo-grid .photo img {
  max-width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
  border-radius: 2rem;
}
.layout-photo-grid .content {
  padding: var(--layoutPadding, 2rem);
  display: flex;
  flex-direction: column;
  justify-content: center;
  position: relative;
  z-index: 1;
}
.layout-photo-grid.reversed .photo {
  grid-column: 2;
}
.layout-photo-grid.reversed .content {
  grid-column: 1;
}

/* overlay grid */
.layout-overlay-grid {
  position: relative;
  display: block;
  width: 100%;
  overflow: hidden;
}
.layout-overlay-grid .photo {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
  background-color: black;
}
.layout-overlay-grid .photo picture,
.layout-overlay-grid .photo img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
  opacity: 0.8;
}
.layout-overlay-grid .content {
  position: relative;
  z-index: 1;
  background-color: rgba(255, 255, 255, 0.8);
  padding: var(--layoutPaddingSmall) var(--layoutPadding);
  max-width: calc(100% - 6rem);
  width: 800px;
  margin: var(--layoutPaddingSmall) var(--layoutPadding);
  border-radius: 2rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
}
.layout-overlay-grid .content .cmsContent {
  color: white;
}
@media (max-width: 1024px) {
  .layout-overlay-grid .content {
    margin: var(--layoutPaddingSmall) auto;
  }
}

/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Containers */
/****************************************************************************************************/
.container {
  width: 70rem;
  max-width: 100%;
  margin: 0 auto;
  position: relative;
  max-width: calc(100vw - (5rem * 2) - var(--scrollbar-width));
}
@media (max-width: 1299px) {
  .container {
    max-width: calc(100vw - (3rem * 2) - var(--scrollbar-width));
  }
}
@media (max-width: 1024px) {
  .container {
    max-width: calc(100vw - (2rem * 2) - var(--scrollbar-width));
  }
}
@media (max-width: 767px) {
  .container {
    max-width: calc(100vw - (25px * 2) - var(--scrollbar-width));
  }
}
@media (max-width: 500px) {
  .container {
    max-width: calc(100vw - (1rem * 2) - var(--scrollbar-width));
  }
}
.container .container {
  padding-left: 0;
  padding-right: 0;
}
.container.wide {
  width: calc(80rem);
}
.container.narrow {
  width: calc(40rem);
}
.container.full {
  width: 100%;
  max-width: 100%;
}
.container.full > .container.full:not(.force) {
  padding-left: 0;
  padding-right: 0;
}
.container.full.force {
  width: calc(100vw - var(--scrollbar-width));
}
.container.edge {
  width: 100vw;
  max-width: calc(100vw);
  max-width: calc(100vw - var(--scrollbar-width));
  left: 50%;
  position: relative;
  transform: translateX(-50%);
  margin-left: 0;
  margin-right: 0;
}
.container.edge.full {
  width: 100vw;
  max-width: 100vw;
}
.container.force {
  max-width: 100vw;
  left: 50%;
  position: relative;
  transform: translateX(-50%);
  margin-left: 0;
  margin-right: 0;
}

/* pad an element, pushing content in to align with the main container - this needs to be updated to match global padding settings*/
.padLeft {
  padding-left: calc((100vw - 70rem) / 2) !important;
  padding-left: calc((100vw - 70rem - var(--scrollbar-width)) / 2) !important;
}
@media (max-width: 1574px) {
  .padLeft {
    padding-left: 4rem !important;
  }
}
@media (max-width: 1299px) {
  .padLeft {
    padding-left: 3rem !important;
  }
}
@media (max-width: 1024px) {
  .padLeft {
    padding-left: 2rem !important;
  }
}
@media (max-width: 767px) {
  .padLeft {
    padding-left: 25px !important;
  }
}
@media (max-width: 500px) {
  .padLeft {
    padding-left: 1rem !important;
  }
}

.padRight {
  padding-right: calc((100vw - 70rem) / 2) !important;
  padding-right: calc((100vw - 70rem - var(--scrollbar-width)) / 2) !important;
}
@media (max-width: 1574px) {
  .padRight {
    padding-right: 4rem !important;
  }
}
@media (max-width: 1299px) {
  .padRight {
    padding-right: 3rem !important;
  }
}
@media (max-width: 1024px) {
  .padRight {
    padding-right: 2rem !important;
  }
}
@media (max-width: 767px) {
  .padRight {
    padding-right: 25px !important;
  }
}
@media (max-width: 500px) {
  .padRight {
    padding-right: 1rem !important;
  }
}

/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/*#region Site Header */
/****************************************************************************************************/
#header {
  top: 0;
  left: 0;
  width: 100%;
  z-index: 10;
  position: absolute;
  transition: all 0.2s ease, font-size 0s linear, padding 0s linear, margin 0s linear, outline 0s linear;
  border-bottom: 1px solid rgba(255, 255, 255, 0.6);
  background-color: black;
  height: var(--header-height);
}
#header.up {
  position: fixed;
  animation: header-slide-in 300ms ease;
}

.topHeader {
  position: relative;
  padding: 1rem 0 0 0;
  height: 100%;
  background: radial-gradient(60.81% 37.42% at 59.01% 43.89%, #002E5D 7.84%, rgba(0, 46, 93, 0.6) 100%);
  background-size: 100% 1000px;
  /* adjust height */
  background-repeat: no-repeat;
}
.topHeader p {
  margin: 0;
}
.topHeader .topHeaderGrid {
  display: grid;
  width: 100%;
  justify-content: flex-end;
  align-items: center;
  grid-template-columns: 150px 1fr;
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  padding-bottom: 1rem;
}
.topHeader .topHeaderGrid .topHeaderGridLeft .logo img {
  width: 140px;
  max-width: 80%;
}
.topHeader .topHeaderGrid .topHeaderGridRight {
  display: flex;
  flex-direction: row;
  justify-content: flex-end;
  align-items: center;
  width: 100%;
}
.topHeader .topHeaderGrid .topHeaderGridRight .menu {
  display: flex;
  justify-content: center;
  flex-direction: row;
  align-items: flex-end;
  margin-right: 1rem;
}
.topHeader .topHeaderGrid .topHeaderGridRight a.searchExpand {
  display: flex;
  background: white;
  color: var(--Blue-1);
  line-height: 1;
  padding: 12px;
  justify-content: center;
  align-items: center;
  margin-left: 10px;
  border-radius: 1px;
  font-size: 24px;
  aspect-ratio: 1;
  height: 48px;
  border: none;
}
.topHeader .topHeaderGrid .topHeaderGridRight a.searchExpand:focus:focus-visible {
  cursor: pointer;
  border-radius: 1px;
  background: rgba(255, 255, 255, 0.4);
  text-decoration: none;
  color: white;
}
.topHeader .topHeaderGrid .topHeaderGridRight a.searchExpand:hover {
  cursor: pointer;
  border-radius: 1px;
  background: rgba(255, 255, 255, 0.4);
  text-decoration: none;
  color: white;
}
.topHeader .topHeaderGrid .topHeaderGridRight a.searchExpand:active {
  cursor: pointer;
  border-radius: 1px;
  background: rgba(255, 255, 255, 0.4);
  text-decoration: none;
  color: white;
}
.topHeader .searchHiddenWrapper {
  display: none;
  margin-top: 6px;
  padding: 10px;
}
.topHeader .searchHiddenWrapper .form-inline {
  width: 100%;
}
.topHeader .searchHiddenWrapper .searchHidden {
  display: flex;
  align-items: center;
  justify-content: center;
}
.topHeader .searchHiddenWrapper .searchHidden .formGroup {
  display: flex;
  width: 100%;
}
.topHeader .searchHiddenWrapper .searchHidden .formGroup input[type=search] {
  transition: all 0.2s ease, font-size 0s linear, padding 0s linear, margin 0s linear, outline 0s linear;
  padding: 0.5rem 2rem;
  box-sizing: border-box;
  height: 45px;
  color: white;
  background: rgba(217, 217, 217, 0.1);
  border: none;
}
.topHeader .searchHiddenWrapper .searchHidden .formGroup input[type=search]::-webkit-input-placeholder {
  opacity: 1;
  -webkit-transition: all 0.2s ease, font-size 0s linear, padding 0s linear, margin 0s linear, outline 0s linear;
  transition: all 0.2s ease, font-size 0s linear, padding 0s linear, margin 0s linear, outline 0s linear;
  color: white;
  text-transform: none;
}
.topHeader .searchHiddenWrapper .searchHidden .formGroup input[type=search]:-moz-placeholder {
  opacity: 1;
  -moz-transition: all 0.2s ease, font-size 0s linear, padding 0s linear, margin 0s linear, outline 0s linear;
  transition: all 0.2s ease, font-size 0s linear, padding 0s linear, margin 0s linear, outline 0s linear;
  color: white;
  text-transform: none;
}
.topHeader .searchHiddenWrapper .searchHidden .formGroup input[type=search]::-moz-placeholder {
  opacity: 1;
  -moz-transition: all 0.2s ease, font-size 0s linear, padding 0s linear, margin 0s linear, outline 0s linear;
  transition: all 0.2s ease, font-size 0s linear, padding 0s linear, margin 0s linear, outline 0s linear;
  color: white;
  text-transform: none;
}
.topHeader .searchHiddenWrapper .searchHidden .formGroup input[type=search]:-ms-input-placeholder {
  opacity: 1;
  -ms-transition: all 0.2s ease, font-size 0s linear, padding 0s linear, margin 0s linear, outline 0s linear;
  transition: all 0.2s ease, font-size 0s linear, padding 0s linear, margin 0s linear, outline 0s linear;
  color: white;
  text-transform: none;
}
.topHeader .searchHiddenWrapper .searchHidden .formGroup input[type=search]:hover::-webkit-input-placeholder, .topHeader .searchHiddenWrapper .searchHidden .formGroup input[type=search]:focus::-webkit-input-placeholder {
  opacity: 0.4;
}
.topHeader .searchHiddenWrapper .searchHidden .formGroup input[type=search]:hover:-moz-placeholder, .topHeader .searchHiddenWrapper .searchHidden .formGroup input[type=search]:focus:-moz-placeholder {
  opacity: 0.4;
}
.topHeader .searchHiddenWrapper .searchHidden .formGroup input[type=search]:hover::-moz-placeholder, .topHeader .searchHiddenWrapper .searchHidden .formGroup input[type=search]:focus::-moz-placeholder {
  opacity: 0.4;
}
.topHeader .searchHiddenWrapper .searchHidden .formGroup input[type=search]:hover:-ms-input-placeholder, .topHeader .searchHiddenWrapper .searchHidden .formGroup input[type=search]:focus:-ms-input-placeholder {
  opacity: 0.4;
}
.topHeader .searchHiddenWrapper .searchHidden .formGroup button.sfsearchSubmit {
  color: white;
  height: 45px;
  border-radius: 1px;
  background: rgba(255, 255, 255, 0.2);
  line-height: 1;
  margin: 0;
  aspect-ratio: 1;
  padding: 0;
}
.topHeader .searchHiddenWrapper .searchHidden .formGroup button.sfsearchSubmit:focus:focus-visible {
  cursor: pointer;
  border-radius: 1px;
  background: rgba(255, 255, 255, 0.4);
  text-decoration: none;
  color: white;
}
.topHeader .searchHiddenWrapper .searchHidden .formGroup button.sfsearchSubmit:hover {
  cursor: pointer;
  border-radius: 1px;
  background: rgba(255, 255, 255, 0.4);
  text-decoration: none;
  color: white;
}
.topHeader .searchHiddenWrapper .searchHidden .formGroup button.sfsearchSubmit:active {
  cursor: pointer;
  border-radius: 1px;
  background: rgba(255, 255, 255, 0.4);
  text-decoration: none;
  color: white;
}
.topHeader .searchHiddenWrapper .searchHidden .formGroup button.sfsearchSubmit svg {
  margin: 0;
}
.topHeader .searchHiddenWrapper button.searchCollapse {
  width: 2rem;
  aspect-ratio: 1;
  margin: 0;
  padding: 0.5rem;
  background: none;
  margin-left: 5px;
}

/* Not used in this project */
/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/*#region Page Topper (Banner) */
/****************************************************************************************************/
/* Usually nested in the topper */
.topperSection {
  position: relative;
  margin: 0;
  text-align: left;
  border-bottom: 1px solid rgba(255, 255, 255, 0.2);
  overflow: hidden;
}
.topperSection::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: url("/CFImages/topper-abstract-lines-crop1.png");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: -300px center;
  opacity: 0.1;
  z-index: 0;
  animation: heroBgDrift 12s ease-in-out infinite;
  will-change: transform;
}
.topperSection .meta {
  text-transform: uppercase;
  font-size: 0.8rem;
}
.topperSection .meta .separator {
  margin: 0 0.4rem;
}
.topperSection .contentTypeLabels {
  font-size: inherit;
}
.topperSection .topperContent {
  padding: 3rem 0;
  text-align: left;
}
.topperSection .topperContent h1 {
  color: #fff;
}
.topperSection .topperContent h1:after {
  content: none;
}

/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/*#region Site Main Content */
/****************************************************************************************************/
main {
  padding-top: var(--header-height);
}
main .bd .breadCrumbInner {
  padding: 1rem 0;
  font-size: 0.7rem;
  display: flex;
  margin-bottom: 1rem;
}
main .bd .breadCrumbInner a {
  color: white;
  text-decoration: none;
  font-weight: 400;
}
main .bd .breadCrumbInner > *:last-child {
  color: var(--Grey-3);
}
main .bd .breadCrumbInner > *:not(:last-child) {
  color: white;
  font-weight: 400;
}
main .bd .breadCrumbInner > *:not(:last-child):hover, main .bd .breadCrumbInner > *:not(:last-child):focus {
  text-decoration: underline;
}
main .bd .breadCrumbInner span.separator {
  margin: 0 0.6em;
}
main .bd .mainContent {
  padding: 1rem 0 2rem 0;
}
main .bd .mainContent .sfContentBlock img {
  max-width: 100%;
}
main .bd .twoColumnLayout .sideContent {
  padding: 2rem 1rem 2rem 0;
}
main .bd .twoColumnLayout .mainContent {
  padding: 2rem 0 2rem 1rem;
}

/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/*#region Site Footer */
/****************************************************************************************************/
.siteFooter .mainFooter {
  --navigation-spacing-big: 20px;
  --navigation-spacing-medium: 14px;
  --navigation-spacing-small: 10px;
  padding: 2rem 0;
  border-top: 1px solid rgba(255, 255, 255, 0.2);
}
.siteFooter .mainFooter .mainFooterGrid {
  display: grid;
  width: 100%;
  justify-content: flex-end;
  align-items: flex-end;
  grid-template-columns: 1fr 3fr;
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  /* inside rightside footerColumn */
}
.siteFooter .mainFooter .mainFooterGrid .footerColumn:first-of-type {
  /* inside first footerColumn */
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: var(--navigation-spacing-medium);
  height: 100%;
  font-size: 1rem;
}
.siteFooter .mainFooter .mainFooterGrid .footerColumn:first-of-type .footerLogo img {
  width: 140px;
  max-width: 80%;
}
.siteFooter .mainFooter .mainFooterGrid .footerColumn:first-of-type .footerAddress p:last-of-type {
  margin-bottom: 0;
  padding-bottom: 16px;
}
.siteFooter .mainFooter .mainFooterGrid .footerColumn.rightSide {
  width: 100%;
  display: flex;
  flex-direction: row;
  justify-content: flex-end;
  align-items: flex-end;
  flex-wrap: wrap;
}
.siteFooter .mainFooter .mainFooterGrid .footerSocials ul.socialLinks, .siteFooter .mainFooter .mainFooterGrid .footerSocials .cmsContent ul.socialLinks {
  margin-top: var(--navigation-spacing-big);
  margin-left: var(--navigation-spacing-big);
}
.siteFooter .mainFooter .mainFooterGrid nav.navCustomFooterLinksUl ul.reset {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  row-gap: var(--navigation-spacing-big);
}
.siteFooter .mainFooter .mainFooterGrid nav.navCustomFooterLinksUl ul.reset li.rootMenuItem {
  margin-right: var(--navigation-spacing-big);
}
.siteFooter .mainFooter .mainFooterGrid nav.navCustomFooterLinksUl ul.reset li.rootMenuItem a {
  display: inline-flex;
  text-decoration: none;
  font-size: 1rem;
  font-weight: normal;
  line-height: 1;
  color: white;
  padding: 16px 16px;
}
.siteFooter .mainFooter .mainFooterGrid nav.navCustomFooterLinksUl ul.reset li.rootMenuItem a:focus:focus-visible {
  cursor: pointer;
  text-decoration: underline;
  color: var(--Grey-3);
}
.siteFooter .mainFooter .mainFooterGrid nav.navCustomFooterLinksUl ul.reset li.rootMenuItem a:hover {
  cursor: pointer;
  text-decoration: underline;
  color: var(--Grey-3);
}
.siteFooter .mainFooter .mainFooterGrid nav.navCustomFooterLinksUl ul.reset li.rootMenuItem a:active {
  cursor: pointer;
  text-decoration: underline;
  color: var(--Grey-3);
}
.siteFooter .mainFooter .mainFooterGrid nav.navCustomFooterLinksUl ul.reset li.rootMenuItem:last-of-type {
  margin-right: 0;
}
.siteFooter .mainFooter .mainFooterGrid nav.navCustomFooterLinksUl ul.reset li.rootMenuItem:last-of-type a {
  padding-right: 0;
}
@media (max-width: 1024px) {
  .siteFooter .mainFooter .mainFooterGrid nav.navCustomFooterLinksUl ul.reset {
    grid-template-columns: repeat(2, minmax(0, auto));
  }
}
@media (max-width: 1024px) {
  .siteFooter .mainFooter .mainFooterGrid {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 767px) {
  .siteFooter .mainFooter .mainFooterGrid .footerColumn {
    align-items: center !important;
  }
  .siteFooter .mainFooter .mainFooterGrid nav.navCustomFooterLinksUl {
    width: 100%;
  }
  .siteFooter .mainFooter .mainFooterGrid nav.navCustomFooterLinksUl ul.reset {
    justify-content: center;
    text-align: center;
  }
  .siteFooter .mainFooter .mainFooterGrid .footerSocials {
    width: 100%;
  }
  .siteFooter .mainFooter .mainFooterGrid .footerSocials .cmsContent ul.socialLinks {
    justify-content: center;
    margin-left: 0;
  }
}
.siteFooter .copyrightFooter {
  position: relative;
  padding: 1rem 0;
  border-top: 1px solid rgba(255, 255, 255, 0.2);
}
.siteFooter .copyrightFooter .copyrightFooterGrid {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: var(--navigation-spacing-big);
  font-size: 0.8rem;
}
.siteFooter .copyrightFooter .copyrightFooterGrid .footerColumn {
  flex: 1 1 50%;
  display: flex;
  align-items: center;
  gap: 2rem;
}
.siteFooter .copyrightFooter .copyrightFooterGrid .footerColumn:first-child {
  justify-content: flex-start;
  text-align: left;
}
.siteFooter .copyrightFooter .copyrightFooterGrid .footerColumn:last-child {
  justify-content: flex-end;
  text-align: right;
}
@media (max-width: 1024px) {
  .siteFooter .copyrightFooter .copyrightFooterGrid {
    flex-direction: column;
    align-items: center;
    gap: var(--navigation-spacing-medium);
  }
  .siteFooter .copyrightFooter .copyrightFooterGrid .footerColumn {
    flex: 1 1 100%;
    justify-content: center;
    text-align: left;
  }
  .siteFooter .copyrightFooter .copyrightFooterGrid .footerColumn a {
    display: inline-flex;
  }
}
@media (max-width: 767px) {
  .siteFooter .copyrightFooter .copyrightFooterGrid .footerColumn {
    justify-content: center;
    text-align: center;
    flex-wrap: wrap;
  }
  .siteFooter .copyrightFooter .copyrightFooterGrid .footerColumn:last-child {
    justify-content: center;
    text-align: center;
  }
}

/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Universal Styles - Shared across cardViews and detailViews */
/****************************************************************************************************/
span.seperator {
  padding: 0 7px;
  color: #D0D3D4;
}

.audioButton {
  padding: 0rem;
}

.audioFile {
  border: none;
  border-radius: 3px;
  cursor: pointer;
  margin: 0;
  display: inline;
}
.audioFile a {
  padding: 0;
  display: inline-block;
  color: #495157;
  display: block;
  line-height: 0;
  display: inline;
}
.audioFile a .icon {
  transition: all 0.2s ease, font-size 0s linear, padding 0s linear, margin 0s linear, outline 0s linear;
  filter: grayscale(1) brightness(1.6);
}
.audioFile a:focus .icon, .audioFile a:hover .icon {
  filter: grayscale(0) brightness(1);
}
.audioFile a:active {
  filter: brightness(0.5);
}

.viewAllMoreWrapper {
  text-align: center;
}

.viewMoreOuter {
  margin: 0rem auto 3rem;
  text-align: center;
}

/* #region Dates */
span.dates {
  /*text-transform: uppercase;*/
  font-size: inherit;
  font-weight: inherit;
  letter-spacing: inherit;
}
span.dates time {
  font-size: inherit;
  /*text-transform: uppercase;*/
}

/* #endregion */
/* #region Content Type Labels */
.contentTypeLabels {
  color: #002E5D;
  display: inline-block;
  font-family: "Mulish", sans-serif;
  font-weight: 400;
  text-transform: uppercase;
  letter-spacing: 0.35em;
  letter-spacing: 0.15em;
  font-size: 0.7rem;
  margin-bottom: 1.4rem;
}
.contentTypeLabels span.labelValuesSeperator:before {
  content: ": ";
}
.contentTypeLabels a {
  color: inherit;
  text-decoration: none;
}
.contentTypeLabels span.subType {
  display: inline-block;
}

.meta {
  color: #002E5D;
  font-size: 0.7rem;
  font-weight: 400;
  letter-spacing: 0.15em;
  margin-bottom: 0.6rem;
}
.meta .separator {
  color: inherit;
  margin: 0 0.2rem;
}

/* #endregion */
/* #region Iframes + Videos + Embeds */
.embedWrapper {
  position: relative;
  padding-bottom: 56.25%;
  /* 16:9 */
  padding-top: 25px;
  height: 0;
}
.embedWrapper iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/* #endregion */
/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Social & Sharing Links */
/****************************************************************************************************/
.printAndShare {
  display: flex;
}

ul.socialLinks,
.cmsContent ul.socialLinks {
  display: flex;
  flex: 0 1 auto;
  flex-wrap: wrap;
  flex-direction: row;
  margin-left: -0.5rem;
  margin-right: -0.5rem;
  box-sizing: border-box;
  font-size: 1.2rem;
  flex-wrap: nowrap;
  justify-content: flex-start;
  list-style: none;
  margin: 0;
  gap: 10px;
}
ul.socialLinks > li,
.cmsContent ul.socialLinks > li {
  flex: 0 0 auto;
  /*order: 0;*/
  width: initial;
  max-width: 100%;
  margin-left: 0.5rem;
  margin-right: 0.5rem;
  vertical-align: top;
  flex: 0 1 auto;
  width: auto;
}
ul.socialLinks li,
.cmsContent ul.socialLinks li {
  margin: 0;
}
ul.socialLinks li a,
.cmsContent ul.socialLinks li a {
  display: flex;
  padding: 12px;
  justify-content: center;
  align-items: center;
  gap: 10px;
  border-radius: 1px;
  font-size: 1rem;
  background: rgba(208, 211, 212, 0.5);
  line-height: 1;
  height: 48px;
  aspect-ratio: 1;
}
ul.socialLinks li a:focus:focus-visible,
.cmsContent ul.socialLinks li a:focus:focus-visible {
  cursor: pointer;
  text-decoration: none;
  background: white;
  color: var(--Blue-1);
}
ul.socialLinks li a:hover,
.cmsContent ul.socialLinks li a:hover {
  cursor: pointer;
  text-decoration: none;
  background: white;
  color: var(--Blue-1);
}
ul.socialLinks li a:active,
.cmsContent ul.socialLinks li a:active {
  cursor: pointer;
  text-decoration: none;
  background: white;
  color: var(--Blue-1);
}
ul.socialLinks li a.contact,
.cmsContent ul.socialLinks li a.contact {
  color: white;
  padding: 12px 30px;
  border-radius: 1px;
  background: rgba(255, 255, 255, 0.2);
  line-height: 1;
  aspect-ratio: auto;
}
ul.socialLinks li a.contact:focus:focus-visible,
.cmsContent ul.socialLinks li a.contact:focus:focus-visible {
  cursor: pointer;
  border-radius: 1px;
  background: rgba(255, 255, 255, 0.4);
  text-decoration: none;
  color: white;
}
ul.socialLinks li a.contact:hover,
.cmsContent ul.socialLinks li a.contact:hover {
  cursor: pointer;
  border-radius: 1px;
  background: rgba(255, 255, 255, 0.4);
  text-decoration: none;
  color: white;
}
ul.socialLinks li a.contact:active,
.cmsContent ul.socialLinks li a.contact:active {
  cursor: pointer;
  border-radius: 1px;
  background: rgba(255, 255, 255, 0.4);
  text-decoration: none;
  color: white;
}

/** ShareThis (social sharing links) *****************************************************************/
.shareThis .sharingLinks {
  display: none;
}

ul.sharingLinks {
  background-color: white;
  display: flex;
  padding: 1rem 1rem 1rem 0.5rem;
}
ul.sharingLinks li button {
  cursor: pointer;
  border: none;
  padding: 0;
  background-color: transparent;
  background-image: none;
  color: #D0D3D4;
  font-size: 0.5rem;
}
ul.sharingLinks li button svg {
  font-size: 0.5rem;
  margin-right: 0.5rem;
}
ul.sharingLinks li button i {
  color: inherit;
}
ul.sharingLinks li button:hover, ul.sharingLinks li button:focus ul.sharingLinks li button:active {
  color: #A2AAAD;
  background-color: transparent;
}

/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Sliders - .sliderView  Currently using SPLIDE */
/****************************************************************************************************/
/* Splide sliders */
.splide {
  visibility: visible;
  /* Show only the first slide ONLY until the slider is initialized */
  /* slider initialized */
  /* Arrows */
}
.splide:not(.is-active) .splide__list {
  width: 100%;
}
.splide:not(.is-active) .splide__slide {
  width: 100%;
  display: flex;
}
.splide:not(.is-active) .splide__slide:not(:first-child) {
  display: none;
}
.splide:not(.is-active) .splide__arrow {
  display: none;
}
.splide.is-active .splide__slide {
  display: flex;
}
.splide .splide__list.sliderView > li.splide__slide {
  margin: 0;
  width: auto;
}
.splide .splide__arrow {
  padding: 0;
  background-color: transparent;
  color: #495157;
  font-size: 1.5rem;
  opacity: 1;
  margin: 0;
}
.splide .splide__arrow.splide__arrow--prev svg {
  transform: translatex(0);
}

.slider .slide {
  min-height: 500px;
}

/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Single Slide Styles */
/****************************************************************************************************/
.slide article .innerContent {
  position: relative;
  height: 100%;
}
.slide article .innerContent .itemImage {
  position: relative;
}
.slide article .innerContent .itemImage .bgImgWrapper:before {
  /* sets the height and then effectively removes itself from flow so as not to interfere with siblings */
  float: left;
  width: 1px;
  height: 0;
  content: "";
  margin-left: -1px;
  padding-top: 56.25%;
}
.slide article .innerContent .itemImage .bgImgWrapper:after {
  /* to clear float */
  content: "";
  display: table;
  clear: both;
}
.slide article .innerContent .itemImage .bgImgWrapper a {
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  position: absolute;
}

/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Home Slider Only */
/****************************************************************************************************/
.homeSlideshow {
  position: relative;
}
.homeSlideshow .splide__arrows {
  display: none;
}
.homeSlideshow ul.splide__pagination {
  width: auto;
  position: absolute;
  top: 50%;
  left: 50%;
  right: initial;
  bottom: initial;
  transform: translateX(-50%) translateY(-50%);
  display: flex;
  flex-direction: column;
  width: 70rem;
  align-items: flex-end;
  max-width: calc(100% - 4rem);
}
.homeSlideshow ul.splide__pagination li .splide__pagination__page {
  width: 0.5rem;
  height: 0.5rem;
  margin: 0.5rem 0;
  background-color: #D0D3D4;
}
.homeSlideshow ul.splide__pagination li .splide__pagination__page.is-active {
  transform: scale(1);
  background-color: #002E5D;
}
.homeSlideshow .splide__slide {
  position: relative;
  width: 100%;
  height: 500px;
  overflow: hidden;
}
.homeSlideshow .splide__slide .imgWrapper {
  position: absolute;
  inset: 0;
  z-index: 0;
  background-color: black;
}
.homeSlideshow .splide__slide .imgWrapper picture,
.homeSlideshow .splide__slide .imgWrapper img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
  opacity: 0.8;
}
.homeSlideshow .splide__slide .cardContent {
  position: absolute;
  left: var(--layoutPadding);
  top: 50%;
  transform: translateY(-50%);
  z-index: 1;
  background-color: rgba(255, 255, 255, 0.8);
  padding: var(--layoutPaddingSmall) var(--layoutPadding);
  max-width: calc(100% - 6rem);
  width: 800px;
  min-height: 250px;
  border-radius: 2rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
}
.homeSlideshow .splide__slide .cardContent .slideTitle {
  font-size: 2rem;
  font-weight: 700;
  margin-bottom: 0.5rem;
  color: white;
}
.homeSlideshow .splide__slide .cardContent .summary {
  margin-bottom: 1rem;
  color: white;
}
@media (max-width: 1024px) {
  .homeSlideshow .splide__slide .cardContent {
    left: 50%;
    top: 50%;
    transform: translateX(-50%) translateY(-50%);
  }
}

/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region LIST VIEWS - .listView THIS ONLY CONTROL THE GRIDS and number of ITEMS - NOT THE CARDS */
/****************************************************************************************************/
.listView {
  display: grid;
  position: relative;
  grid-template-columns: repeat(auto-fill, minmax(min(var(--card-width), 100%), 1fr));
  gap: var(--card-gap);
  margin-bottom: 2rem;
  --listViewArticleIndex: none;
}

/* fixedSize class is a card that has a fixed pixel width that never scales and only wraps (should always be less than 320px) */
.listView.fixedSize {
  grid-template-columns: repeat(auto-fill, minmax(var(--card-width), var(--card-width)));
}

.listView.fixedSizeScales {
  grid-template-columns: repeat(auto-fit, minmax(min(var(--card-width), 100%), 1fr));
}

/* defined number of columns class */
.listView.gridCols {
  grid-template-columns: repeat(var(--column-count), 1fr);
}

.listView.gridCols.oneCol {
  --column-count: 1;
}

.listView.gridCols.twoCol {
  --column-count: 2;
}

.listView.gridCols.threeCol {
  --column-count: 3;
}

.listView.gridCols.fourCol {
  --column-count: 4;
}

.listView.gridCols.fiveCol {
  --column-count: 5;
}

.listView.gridCols.sixCol {
  --column-count: 6;
}

/* Responsive resizing of gridsCols */
@media (max-width: 1299px) {
  .listView.gridCols {
    /* Go down to 4 */
    /* Go down to 3 */
  }
  .listView.gridCols.fiveCol, .listView.gridCols.sixCol {
    --column-count: 4;
  }
  .listView.gridCols.fourCol {
    --column-count: 3;
  }
}
@media (max-width: 1024px) {
  /* Go down to 3 */
  .listView.gridCols.fiveCol, .listView.gridCols.sixCol {
    --column-count: 3;
  }

  /* Go down to 2 */
  .listView.gridCols.fourCol, .listView.gridCols.threeCol {
    --column-count: 2;
  }
}
@media (max-width: 767px) {
  /* Go down to 2 */
  .listView.gridCols.fiveCol, .listView.gridCols.sixCol {
    --column-count: 2;
  }

  /* Go down to 1 */
  .listView.gridCols.twoCol, .listView.gridCols.threeCol {
    --column-count: 1;
  }
}
@media (max-width: 600px) {
  /* Go down to 1 */
  .listView.gridCols.fourCol, .listView.gridCols.fiveCol, .listView.gridCols.sixCol {
    --column-count: 1;
  }
}
/* ### Content Specific Sizing of Grids if required exact dimensions can be paired with default or fixedSizeScales or .fixedSize ### */
.listView.teammembers {
  --card-width: 350px;
  --card-gap: 2rem;
}

/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region CARDS - .cardView */
/****************************************************************************************************/
/* Shared/Common Card Views Styles */
.cardView {
  height: 100%;
  width: 100%;
}
.cardView h3 {
  padding-bottom: 0;
  margin: initial;
}
.inViewport .cardView[data-animate] {
  opacity: 0;
  animation: fadeInUp;
  animation-duration: 0.4s;
  animation-fill-mode: forwards;
  animation-timing-function: cubic-bezier(0.86, 0, 0.07, 1);
  animation-delay: calc(var(--listViewArticleIndex)* 150ms);
}

/* Content Specfic Card Views Styles */
/* Team Card View */
.cardView.teammember {
  position: relative;
  overflow: hidden;
  background-color: black;
  max-width: 500px;
}
.cardView.teammember .hoverWrapper {
  position: relative;
}
.cardView.teammember .hoverWrapper .imgWrapper {
  aspect-ratio: 4.5/6;
  overflow: hidden;
  opacity: 0.6;
}
.cardView.teammember .hoverWrapper .cardContent {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding: 1.5rem;
  z-index: 1;
  /* Rotated overlay */
}
.cardView.teammember .hoverWrapper .cardContent::before {
  content: "";
  position: absolute;
  width: 200%;
  height: 200%;
  background-color: rgba(0, 46, 93, 0.8);
  transform: rotate(35deg);
  transform-origin: bottom left;
  top: -25%;
  left: 0%;
  z-index: 0;
  pointer-events: none;
  transition: all 0.45s cubic-bezier(0.4, 0, 0.2, 1) 0.05s;
}
.cardView.teammember .hoverWrapper .cardContent .visibleContent,
.cardView.teammember .hoverWrapper .cardContent .hiddenContent {
  position: relative;
  z-index: 1;
  transition: transform 0.45s ease, opacity 0.45s ease;
}
.cardView.teammember .hoverWrapper .cardContent .visibleContent {
  transform: translateY(0);
}
.cardView.teammember .hoverWrapper .cardContent .visibleContent h3 {
  margin: 0;
  font-size: clamp(22px, 9.0613718412px + 0.0168471721 * 100vw, 36px);
}
.cardView.teammember .hoverWrapper .cardContent .visibleContent h3 a {
  text-decoration: none;
}
.cardView.teammember .hoverWrapper .cardContent .visibleContent .position {
  display: block;
  font-size: 1rem;
  margin-top: 0.25rem;
}
.cardView.teammember .hoverWrapper .cardContent .hiddenContent {
  margin-top: 0.75rem;
  height: 0;
  opacity: 0;
  transform: translateY(1rem);
}
.cardView.teammember .hoverWrapper .cardContent .hiddenContent .contactInfo {
  display: flex;
  flex-direction: column;
  gap: 0.4rem;
}
.cardView.teammember .hoverWrapper .cardContent .hiddenContent .contactInfo li {
  font-size: 1rem;
}
.cardView.teammember .hoverWrapper .cardContent .hiddenContent .contactInfo li .prefixLabel {
  text-transform: uppercase;
  padding-right: 0.3em;
}
.cardView.teammember .hoverWrapper .cardContent .hiddenContent .contactInfo li a {
  text-decoration: none;
}
.cardView.teammember:focus:focus-visible .hoverWrapper .imgWrapper {
  opacity: 0.7;
}
.cardView.teammember:focus:focus-visible .hoverWrapper .cardContent::before {
  top: -125%;
  left: -100%;
}
.cardView.teammember:focus:focus-visible .hoverWrapper .cardContent .visibleContent {
  transform: translateY(-1rem);
}
.cardView.teammember:focus:focus-visible .hoverWrapper .cardContent .hiddenContent {
  opacity: 1;
  height: auto;
  transform: translateY(0);
}
.cardView.teammember:hover .hoverWrapper .imgWrapper {
  opacity: 0.7;
}
.cardView.teammember:hover .hoverWrapper .cardContent::before {
  top: -125%;
  left: -100%;
}
.cardView.teammember:hover .hoverWrapper .cardContent .visibleContent {
  transform: translateY(-1rem);
}
.cardView.teammember:hover .hoverWrapper .cardContent .hiddenContent {
  opacity: 1;
  height: auto;
  transform: translateY(0);
}
.cardView.teammember:active .hoverWrapper .imgWrapper {
  opacity: 0.7;
}
.cardView.teammember:active .hoverWrapper .cardContent::before {
  top: -125%;
  left: -100%;
}
.cardView.teammember:active .hoverWrapper .cardContent .visibleContent {
  transform: translateY(-1rem);
}
.cardView.teammember:active .hoverWrapper .cardContent .hiddenContent {
  opacity: 1;
  height: auto;
  transform: translateY(0);
}

/* Expertise: Card View*/
.cardView.expertise {
  display: flex;
  max-width: 992px;
  padding: 24px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.4);
  transition: all 0.2s ease, font-size 0s linear, padding 0s linear, margin 0s linear, outline 0s linear;
}
.cardView.expertise h3 {
  position: relative;
  display: flex;
  flex-wrap: nowrap;
  width: 100%;
  gap: 1rem;
  justify-content: space-between;
  align-content: center;
  align-items: center;
  font-size: 1.3rem;
  letter-spacing: -0.52px;
  text-decoration: none;
  word-break: break-word;
  -webkit-hyphens: auto;
          hyphens: auto;
  margin: 0;
}
.cardView.expertise h3:after {
  content: "";
  display: flex;
  padding: 20px;
  aspect-ratio: 1;
  justify-content: center;
  align-items: center;
  border-radius: 1px;
  background-color: rgba(255, 255, 255, 0.2);
  z-index: 0;
}
.cardView.expertise h3:before {
  content: "";
  position: absolute;
  top: 50%;
  right: 10px;
  width: 20px;
  height: 100%;
  transform: translatey(-50%);
  background-image: url(/CFImages/Icons/arrow-right.svg);
  background-size: 20px;
  background-repeat: no-repeat;
  background-position: center;
  transition: transform 0.35s ease;
  opacity: 0.7;
  z-index: 1;
}
.cardView.expertise:focus:focus-visible {
  background: rgba(255, 255, 255, 0.05);
  border-bottom: 1px solid white;
}
.cardView.expertise:focus:focus-visible h3 {
  text-decoration: none;
  color: white;
}
.cardView.expertise:focus:focus-visible h3:before {
  transform: translateY(-50%) rotate(-45deg);
  opacity: 1;
}
.cardView.expertise:focus:focus-visible h3:after {
  background-color: rgba(255, 255, 255, 0.4);
}
.cardView.expertise:focus:focus-visible h3 a {
  color: white;
  text-decoration: none;
}
.cardView.expertise:hover {
  background: rgba(255, 255, 255, 0.05);
  border-bottom: 1px solid white;
}
.cardView.expertise:hover h3 {
  text-decoration: none;
  color: white;
}
.cardView.expertise:hover h3:before {
  transform: translateY(-50%) rotate(-45deg);
  opacity: 1;
}
.cardView.expertise:hover h3:after {
  background-color: rgba(255, 255, 255, 0.4);
}
.cardView.expertise:hover h3 a {
  color: white;
  text-decoration: none;
}
.cardView.expertise:active {
  background: rgba(255, 255, 255, 0.05);
  border-bottom: 1px solid white;
}
.cardView.expertise:active h3 {
  text-decoration: none;
  color: white;
}
.cardView.expertise:active h3:before {
  transform: translateY(-50%) rotate(-45deg);
  opacity: 1;
}
.cardView.expertise:active h3:after {
  background-color: rgba(255, 255, 255, 0.4);
}
.cardView.expertise:active h3 a {
  color: white;
  text-decoration: none;
}

/* Insight CardView */
/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region DETAIL VIEWS - .detailView */
/****************************************************************************************************/
/* Shared detailView Styles */
.detailView .topperSection {
  position: relative;
  margin: 0;
}
.detailView .breadCrumb {
  padding-top: 1rem;
}
.detailView .sidebarGrid {
  display: flex;
  justify-content: flex-start;
  align-content: flex-start;
}
.detailView .sidebarGrid .mainContent {
  width: 65%;
  padding-right: 2rem;
}
.detailView .sidebarGrid .mainContent > :last-child {
  margin-bottom: 4rem;
}
.detailView .sidebarGrid .sideContent {
  width: 35%;
  padding-left: 2rem;
  background: rgba(255, 255, 255, 0.05);
}
.detailView .sidebarGrid .sideContent .sideContentInner > :first-child {
  margin-top: 2rem;
}
.detailView .sidebarGrid .sideContent .sideContentInner > :last-child {
  margin-bottom: 4rem;
}
.detailView .sidebarGrid .sideContent .sideContentInner .cmsContent h3 {
  font-size: clamp(22px, 9.0613718412px + 0.0168471721 * 100vw, 36px);
  padding-bottom: 1rem;
}
.detailView .sidebarGrid .sideContent .sideContentInner .cmsContent ul {
  margin: 0 0 2rem 0;
}
@media only screen and (max-width: 767px) {
  .detailView .sidebarGrid {
    flex-direction: column;
    max-width: calc(100vw - var(--container-padding));
  }
  .detailView .sidebarGrid .mainContent {
    width: 100%;
    padding: 0;
  }
  .detailView .sidebarGrid .sideContent {
    width: 100%;
  }
}
.detailView .listView.related.expertises {
  --card-width: 600px;
}
.detailView .shareThis button.toggleSharingOptions {
  margin: 0;
  padding: 0;
  background-color: transparent;
  border: none;
}
.detailView .shareThis button.toggleSharingOptions:focus:focus-visible {
  cursor: pointer;
  color: var(--Grey-3);
}
.detailView .shareThis button.toggleSharingOptions:hover {
  cursor: pointer;
  color: var(--Grey-3);
}
.detailView .shareThis button.toggleSharingOptions:active {
  cursor: pointer;
  color: var(--Grey-3);
}
.detailView .cmsContent.recognitions ul {
  --card-width: 400px;
  --card-gap: 40px;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(min(var(--card-width), 100%), 1fr));
  gap: var(--card-gap);
}
.detailView .cmsContent.recognitions ul li {
  position: relative;
  padding: 50px 50px 50px 50px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.2);
  font-size: clamp(20px, 14.4548736462px + 0.0072202166 * 100vw, 26px);
  text-align: center;
}
.detailView .cmsContent.recognitions ul li:before {
  content: none;
}
.detailView .cmsContent.recognitions ul li:after {
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  height: 60px;
  width: 60px;
  background-position: bottom right;
  background-image: url(/CFImages/Icons/nested-bullet.svg);
  background-size: 30px 30px;
  background-repeat: no-repeat;
  opacity: 0.2;
}
.detailView .cmsContent.insightsStatic ul {
  display: flex;
  flex-direction: column;
  gap: var(--card-gap);
}
.detailView .cmsContent.insightsStatic ul li {
  position: relative;
  padding: 36px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.2);
  font-size: clamp(20px, 14.4548736462px + 0.0072202166 * 100vw, 26px);
  width: 100%;
}
.detailView .cmsContent.insightsStatic ul li:before {
  content: none;
}
.detailView .cmsContent.insightsStatic ul li:after {
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  height: 60px;
  width: 60px;
  background-position: bottom right;
  background-image: url(/CFImages/Icons/nested-bullet.svg);
  background-size: 60px 60px;
  background-repeat: no-repeat;
  opacity: 0.2;
}

/* Content Specfic detailView Styles */
/* Team Detail View */
.detailView.teammember .bioTopContent {
  position: relative;
  width: 100%;
  display: block;
  color: #fff;
  overflow: hidden;
}
.detailView.teammember .bioTopContent::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: url("/CFImages/topper-abstract-lines.png");
  background-repeat: no-repeat;
  background-size: 130%;
  background-position: -500px top;
  opacity: 0.075;
  z-index: 0;
  animation: heroBgDrift 12s ease-in-out infinite;
  will-change: transform;
}
.detailView.teammember .bioTopContent .bioPhotoWrapper {
  position: relative;
  flex: auto;
  display: flex;
  flex-direction: row-reverse;
  width: 100%;
  flex-basis: auto;
  /* added to fix max size for bio photo */
  justify-content: flex-end;
  transform: translate(50%);
}
.detailView.teammember .bioTopContent .bioPhotoWrapper .imgWrapper {
  width: 50%;
  max-width: 1250px;
}
.detailView.teammember .bioTopContent .bioPhotoWrapper .imgWrapper img {
  aspect-ratio: 1;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: top center;
     object-position: top center;
}
.detailView.teammember .bioTopContent .bioContact {
  position: absolute;
  left: 0;
  top: 0;
  display: flex;
  height: 100%;
  flex-direction: column;
  justify-content: center;
  z-index: 5;
  max-width: 50%;
  padding-right: 1rem;
}
.detailView.teammember .bioTopContent .bioContact .nameDesignationsPronunciation {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
  margin: 1rem 0 0 0;
  padding: 0.25rem 0;
  /* title */
}
.detailView.teammember .bioTopContent .bioContact .nameDesignationsPronunciation h1 {
  position: relative;
  margin: 0;
  padding: 0;
}
.detailView.teammember .bioTopContent .bioContact h3.position {
  font-size: 28px;
  font-weight: 400;
}
.detailView.teammember .bioTopContent .bioContact .contactInfo {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  margin: 0 0 0.5rem 0;
}
.detailView.teammember .bioTopContent .bioContact .contactInfo .prefixLabel {
  text-transform: uppercase;
  padding-right: 0.3em;
}
.detailView.teammember .bioTopContent .bioContact .printAndShare {
  font-size: 1.5rem;
}
.detailView.teammember .bioTopContent .bioContact .printAndShare a {
  margin-right: 1rem;
}
.detailView.teammember .bioTopContent .bioContact .printAndShare a:hover {
  color: #495157;
  cursor: pointer;
}
.detailView.teammember .bioTopContent .bioContact ul.socialLinks {
  justify-content: flex-start;
}
.detailView.teammember .bioTopContent .bioContact ul.socialLinks li {
  display: inline-block;
  font-size: 1rem;
  margin-left: 0;
  margin-right: 2rem;
}
.detailView.teammember .bioTopContent .bioContact ul.socialLinks li a:hover {
  color: #002E5D;
}
.detailView.teammember .breadCrumb {
  margin-top: 0;
}
.detailView.teammember .personalQuote blockquote {
  background-color: transparent;
  padding-left: 0;
  font-style: italic;
  margin: 0;
}
.detailView.teammember .personalQuote blockquote p {
  font-style: italic;
}

/* Insight Detail View */
/*.detailView.insight {
    .topperSection {

        .topperContent {
            .topperTitle {
                h1 {
                    margin-top: 0;
                }
            }
        }
    }
}*/
/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Expertises */
/****************************************************************************************************/
/* expertise tree view */
.expertisesWrapper.treeViewWrapper ul.level1 {
  visibility: hidden;
}
.expertisesWrapper.treeViewWrapper .k-treeview ul.level1 {
  visibility: visible;
}
.expertisesWrapper.treeViewWrapper .k-treeview {
  overflow: visible;
  /* first level */
  /* second level */
  /*.level2 {
      padding-left: 2rem;
      padding-right: 3rem;
      margin: 0 0 2rem;
      background: #000;
      border-radius: 0 0 60px;

      .k-item {
          font-size: 1rem;

          .k-link, .k-in {
              border-bottom: none;
              color: #fff;
              padding: 1.2rem 0;
              padding-left: 2rem;

              &:after {
                  display: none;
              }
          }

          .k-icon {
              left: 0rem;
          }

          &:first-child {
              .k-link {*/
  /*border-top: $border;*/
  /*border-top: none;
              }
          }
      }
  }*/
  /* third level */
  /*.level3 {
      padding-left: 2.4rem;

      .k-item {
          font-size: 0.8rem;

          &:first-child {
              .k-link, .k-in {
                  border-top: none;
              }
          }
      }
  }*/
}
.expertisesWrapper.treeViewWrapper .k-treeview .k-item {
  font-size: 1.2rem;
  border-radius: var(--border-corner-radius) 0;
  border: solid 1px #000;
}
.expertisesWrapper.treeViewWrapper .k-treeview .k-item .k-link, .expertisesWrapper.treeViewWrapper .k-treeview .k-item .k-in {
  font: inherit;
  padding: 0.75rem 0;
  padding-left: 3rem;
  width: 100%;
}
.expertisesWrapper.treeViewWrapper .k-treeview .k-item .k-link:active, .expertisesWrapper.treeViewWrapper .k-treeview .k-item .k-in:active {
  color: #19625F;
}
.expertisesWrapper.treeViewWrapper .k-treeview .k-item .k-icon {
  width: 2rem;
  height: 2rem;
  left: initial;
  right: 2rem;
}
.expertisesWrapper.treeViewWrapper .k-treeview .k-item .k-icon:before {
  top: 50%;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
  width: 0.6rem;
  height: 0.6rem;
  background-size: 100% auto;
  background-position: center;
}
.expertisesWrapper.treeViewWrapper .k-treeview .k-item .k-icon.k-i-expand:before {
  background-image: url(/CFImages/Icons/chevron-down.svg);
}
.expertisesWrapper.treeViewWrapper .k-treeview .k-item .k-icon.k-i-collapse:before {
  background-image: url(/CFImages/Icons/chevron-up.svg);
}
.expertisesWrapper.treeViewWrapper .k-treeview .k-item[data-expanded=true], .expertisesWrapper.treeViewWrapper .k-treeview .k-item:hover {
  background-color: #000;
}
.expertisesWrapper.treeViewWrapper .k-treeview .k-item[data-expanded=true] .k-link, .expertisesWrapper.treeViewWrapper .k-treeview .k-item:hover .k-link {
  color: #fff;
}
.expertisesWrapper.treeViewWrapper .k-treeview .k-item[data-expanded=true] .k-icon.k-i-expand:before, .expertisesWrapper.treeViewWrapper .k-treeview .k-item:hover .k-icon.k-i-expand:before {
  background-image: url(/CFImages/Icons/chevron-down.svg);
}
.expertisesWrapper.treeViewWrapper .k-treeview .k-item[data-expanded=true] .k-icon.k-i-collapse:before, .expertisesWrapper.treeViewWrapper .k-treeview .k-item:hover .k-icon.k-i-collapse:before {
  background-image: url(/CFImages/Icons/chevron-up.svg);
}
.expertisesWrapper.treeViewWrapper .k-treeview .level1 > .k-item {
  margin-bottom: 0.8rem;
}

/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Documents */
/****************************************************************************************************/
.document {
  font-size: 0.8rem;
  background-color: #D0D3D4;
}
.document a {
  width: 100%;
  display: block;
  padding: 1rem 1.4rem 0.8rem 1.4rem;
  text-decoration: none !important;
  border-bottom: 1px solid #002E5D;
}
.document a .iconExtension {
  width: 1.5rem;
  flex-grow: 0;
  flex-basis: auto;
  align-items: center;
  justify-content: center;
  color: #002E5D;
}
.document a .iconExtension svg {
  color: inherit;
  font-size: 2rem;
}
.document a .documentDetails .titleLink {
  margin: 0;
  padding: 0;
  font-size: 1.2rem;
}
.document a .documentDetails .grid {
  display: flex;
  flex: 0 1 auto;
  flex-wrap: wrap;
  flex-direction: row;
  margin-left: -0.5rem;
  margin-right: -0.5rem;
  box-sizing: border-box;
  display: flex;
}
.document a .documentDetails .grid > .col {
  flex: 0 0 auto;
  /*order: 0;*/
  width: initial;
  max-width: 100%;
  margin-left: 0.5rem;
  margin-right: 0.5rem;
  vertical-align: top;
  flex: 0 1 auto;
  width: auto;
}
.document a .documentDetails span.col {
  margin: 0 1rem 0 0;
  flex-basis: auto;
  flex-grow: 0;
}
.document a .typeIcon {
  display: block;
}
.document a .hoverIcon {
  display: none;
}
.document a .textExtension {
  font-size: 1rem;
}
.document a:focus:focus-visible {
  background-color: #c3c7c8;
  border-color: #495157;
}
.document a:focus:focus-visible .grid .col.iconExtension {
  color: #495157;
}
.document a:focus:focus-visible .grid .col.iconExtension svg.typeIcon {
  display: none;
}
.document a:focus:focus-visible .grid .col.iconExtension svg.hoverIcon {
  display: block;
}
.document a:hover {
  background-color: #c3c7c8;
  border-color: #495157;
}
.document a:hover .grid .col.iconExtension {
  color: #495157;
}
.document a:hover .grid .col.iconExtension svg.typeIcon {
  display: none;
}
.document a:hover .grid .col.iconExtension svg.hoverIcon {
  display: block;
}

.documents {
  margin: 1rem 0;
}
.documents ul li {
  color: #002E5D;
  display: block;
  margin: 0;
  font-size: 1rem;
  transition: all 0.2s ease, font-size 0s linear, padding 0s linear, margin 0s linear, outline 0s linear;
  background-color: transparent;
}

/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Filtered Content Items */
/****************************************************************************************************/
.filteredContent .checkboxes {
  flex-wrap: wrap;
}
.filteredContent .checkboxes label {
  display: flex;
  gap: 0.5em;
}
.filteredContent .checkboxes fieldset legend {
  width: 100%;
  height: auto;
  position: relative;
  margin: 0;
  padding: 0;
  overflow: initial;
}
.filteredContent .checkboxes fieldset ul.grid.checkboxes {
  display: flex;
  flex-direction: column;
  justify-content: space-evenly;
}
.filteredContent .checkboxes fieldset ul.grid.checkboxes li.field.col {
  flex: 0;
  font-size: 0.9rem;
}
.filteredContent ul.pagination {
  gap: 0.4rem;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.filteredContent ul.pagination li button {
  padding: 0;
  width: 2rem;
  height: 2rem;
}

.fieldGroups {
  /*    display: flex;
  flex-direction: row;
  flex-wrap: nowrap;*/
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(12rem, 1fr));
  gap: 1.2rem;
}
.fieldGroups > fieldset {
  flex: 1 1 0;
  margin: 0;
  padding: 0;
  border: none;
}
.fieldGroups > fieldset legend {
  clip: rect(0, 0, 0, 0);
  width: 1px;
  height: 1px;
  border: 0;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  position: absolute;
  background-color: #fff;
  color: #000;
}
.fieldGroups .k-dropdown {
  width: 100%;
}
.fieldGroups .k-dropdown:hover .k-dropdown-wrap, .fieldGroups .k-dropdown.k-state-border-down .k-dropdown-wrap {
  border-color: #D0D3D4;
}
.fieldGroups .k-dropdown .k-dropdown-wrap {
  border: 1px solid #D0D3D4;
  border-radius: 0;
  box-shadow: none;
  background: none;
  transition: all 0.2s ease, font-size 0s linear, padding 0s linear, margin 0s linear, outline 0s linear;
}
.fieldGroups .k-dropdown .k-dropdown-wrap .k-input {
  padding: 1.6rem 1.2rem;
  font-size: 1rem;
  color: #495157;
  -webkit-user-select: none;
          user-select: none;
}
.fieldGroups .k-dropdown .k-dropdown-wrap .k-select {
  padding-right: 1.2rem;
}
.fieldGroups .k-dropdown .k-dropdown-wrap .k-select .k-icon {
  width: 0.6rem;
  height: 0.6rem;
}
.fieldGroups .k-dropdown .k-dropdown-wrap .k-select .k-icon:before {
  background-image: url(/CFImages/Icons/chevron-down.svg);
  background-size: 0.6rem auto;
}

.k-list-container {
  border: 1px solid #D0D3D4;
  border-top-width: 0;
}

.k-list-optionlabel,
.k-list .k-item {
  padding: 0.8rem 0.6rem;
}
.k-list-optionlabel.k-state-selected,
.k-list .k-item.k-state-selected {
  background-color: #495157;
}
.k-list-optionlabel.k-state-selected:hover,
.k-list .k-item.k-state-selected:hover {
  background-color: #3d4449;
}

/* Filters */
.filtersContainer {
  display: block;
  margin: 0 auto;
  width: 56rem;
  max-width: calc(100% - 4rem);
  margin: 4rem auto 6rem;
}
.filtersContainer fieldset legend {
  clip: rect(0, 0, 0, 0);
  width: 1px;
  height: 1px;
  border: 0;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  position: absolute;
  background-color: #fff;
  color: #000;
}

/* Keyword Search */
.keywordSearchWrapper {
  margin-bottom: 1.4rem;
  position: relative;
  display: grid;
  grid-template-columns: 1fr 6rem;
}
.keywordSearchWrapper input[type=search] {
  border: none;
  border-bottom: 1px solid #D0D3D4;
  padding-left: 0;
  box-sizing: border-box;
  height: 3.4rem;
  /* the animated underline */
  /*& + .textFieldUnderline {
      width: 100%;
      height: 1px;
      display: block;
      margin: 0;
      margin-top: -1px;
      background-size: 200%;
      background-position: 100% 0%;*/
  /*background-image: linear-gradient(to right, #002E5D, #002E5D 50%, transparent 50%, transparent 75%);*/
  /*background-image: linear-gradient(to right, #D0D3D4, #D0D3D4 50%, transparent 50%, transparent 75%);
      position: relative;
      z-index: 10;
  }*/
}
.keywordSearchWrapper input[type=search]:focus, .keywordSearchWrapper input[type=search]:active, .keywordSearchWrapper input[type=search]:hover {
  outline: none !important;
  /*border-bottom: 2px solid $primaryColour;*/
}
.keywordSearchWrapper input[type=search]:focus + .textFieldUnderline, .keywordSearchWrapper input[type=search]:active + .textFieldUnderline, .keywordSearchWrapper input[type=search]:hover + .textFieldUnderline {
  background-position: 0% 0%;
  transition: all 0.2s cubic-bezier(0.86, 0, 0.07, 1), font-size 0s linear, padding 0s linear, margin 0s linear;
  transition-duration: 250ms;
}
.keywordSearchWrapper .buttons {
  display: flex;
  align-items: stretch;
}
.keywordSearchWrapper .buttons .button svg {
  margin: 0;
}
.keywordSearchWrapper input[type=search]:not(:placeholder-shown) ~ .buttons .clearSearch {
  display: block;
  opacity: 1;
}

/* Search by initial (alphabet) */
.searchByInitialContainer {
  margin: 1rem 0 0 0;
  display: flex;
  justify-content: center;
}
.searchByInitialContainer .alphaList a {
  cursor: pointer;
  text-decoration: none;
  border: 1px solid #495157;
  padding: 0.25rem 0.25rem;
  min-width: 1.5rem;
  min-height: 0.25rem;
  margin-bottom: 0.5rem;
  display: inline-flex;
  justify-content: center;
}
.searchByInitialContainer .alphaList a.initialFilter.selected {
  background-color: #495157;
  color: white;
}
.searchByInitialContainer .alphaList a.initialFilter:hover {
  background-color: #495157;
  color: white;
}
.searchByInitialContainer .alphaList a.disabledFilter {
  color: #A2AAAD;
  cursor: not-allowed;
  opacity: 0.5;
  text-decoration: none;
  border-color: #A2AAAD;
}

/* Filtered Content Wrapper */
.filteredContent {
  padding-bottom: 6rem;
  min-height: 30rem;
}
.filteredContent .buttonsContainer .button i {
  margin-left: 2rem;
}
.filteredContent .buttonsContainer .button:not(:last-child) {
  margin-right: 1rem;
}
.filteredContent .loadMoreContainer {
  text-align: center;
  margin: 4rem 0 0;
}
.filteredContent .loadMoreContainer button .icon {
  font-size: 0.8rem;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  font-size: 0.6rem;
  margin-right: 0.6rem;
}
.filteredContent .permanentLinkField {
  display: flex;
}
.filteredContent .permanentLinkField button {
  padding: 0.6rem 1rem;
  margin: 0;
}
.filteredContent .permanentLinkField button svg {
  margin: 0;
}

/* Filtered Content withSidebar */
.filteredContent.withSidebar {
  /* Checkboxes */
}
.filteredContent.withSidebar .filteredContentOuterGrid.grid {
  display: grid;
  grid-template-columns: 1fr 3fr;
}
.filteredContent.withSidebar .filteredContentOuterGrid.grid .filterHeader h3 {
  text-transform: uppercase;
}
.filteredContent.withSidebar .filteredContentOuterGrid.grid .filtersContainer {
  /*Filters are below */
  background-color: white;
  box-shadow: rgba(0, 0, 0, 0.19) 0px 10px 20px, rgba(0, 0, 0, 0.23) 0px 6px 6px;
  padding: 0 0 1rem 0;
}
.filteredContent.withSidebar .filteredContentOuterGrid.grid .filtersContainer .advancedFiltersContainer {
  /* section title */
}
.filteredContent.withSidebar .filteredContentOuterGrid.grid .filtersContainer .advancedFiltersContainer .filterSectionTitle {
  display: block;
  margin: 0 0 1rem 0;
  padding: 0.5rem 1rem;
  border-bottom: 1px solid #D0D3D4;
  border-top: 1px solid #D0D3D4;
  background-color: #D0D3D4;
  color: white;
  font-size: 14px;
  font-weight: bold;
  text-transform: uppercase;
  text-align: center;
}
.filteredContent.withSidebar .filteredContentOuterGrid.grid .filtersContainer .advancedFiltersContainer .fieldGroups {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  gap: 0;
}
.filteredContent.withSidebar .filteredContentOuterGrid.grid .filtersContainer .advancedFiltersContainer .fieldGroups .k-dropdown {
  width: 100%;
}
.filteredContent.withSidebar .filteredContentOuterGrid.grid .filtersContainer .advancedFiltersContainer .fieldGroups .k-dropdown:hover .k-dropdown-wrap, .filteredContent.withSidebar .filteredContentOuterGrid.grid .filtersContainer .advancedFiltersContainer .fieldGroups .k-dropdown.k-state-border-down .k-dropdown-wrap {
  border-color: #D0D3D4;
}
.filteredContent.withSidebar .filteredContentOuterGrid.grid .filtersContainer .advancedFiltersContainer .fieldGroups .k-dropdown .k-dropdown-wrap {
  border: 1px solid #D0D3D4;
  border-radius: 0;
  box-shadow: none;
  background: none;
  transition: all 0.2s ease, font-size 0s linear, padding 0s linear, margin 0s linear, outline 0s linear;
}
.filteredContent.withSidebar .filteredContentOuterGrid.grid .filtersContainer .advancedFiltersContainer .fieldGroups .k-dropdown .k-dropdown-wrap .k-input {
  padding: 1.6rem 1.2rem;
  font-size: 1rem;
  color: #495157;
  -webkit-user-select: none;
          user-select: none;
}
.filteredContent.withSidebar .filteredContentOuterGrid.grid .filtersContainer .advancedFiltersContainer .fieldGroups .k-dropdown .k-dropdown-wrap .k-select {
  padding-right: 1.2rem;
}
.filteredContent.withSidebar .filteredContentOuterGrid.grid .filtersContainer .advancedFiltersContainer .fieldGroups .k-dropdown .k-dropdown-wrap .k-select .k-icon {
  width: 0.6rem;
  height: 0.6rem;
}
.filteredContent.withSidebar .filteredContentOuterGrid.grid .filtersContainer .advancedFiltersContainer .fieldGroups .k-dropdown .k-dropdown-wrap .k-select .k-icon:before {
  background-image: url(/CFImages/Icons/chevron-down.svg);
  background-size: 0.6rem auto;
}
.filteredContent.withSidebar .filteredContentOuterGrid.grid .filtersContainer .advancedFiltersContainer .fieldGroups.checkboxes {
  flex-wrap: no-wrap;
}
.filteredContent.withSidebar .filteredContentOuterGrid.grid .filtersContainer .advancedFiltersContainer .fieldGroups.checkboxes fieldset {
  flex: 1 1 0;
  margin: 0 0 1rem 0;
  padding: 0 1rem 0 1rem;
  border-bottom: 1px solid #D0D3D4;
}
.filteredContent.withSidebar .filteredContentOuterGrid.grid .filtersContainer .advancedFiltersContainer .fieldGroups.checkboxes fieldset .filterToggle {
  position: relative;
  width: 100%;
}
.filteredContent.withSidebar .filteredContentOuterGrid.grid .filtersContainer .advancedFiltersContainer .fieldGroups.checkboxes fieldset .filterToggle:after {
  content: " ";
  position: absolute;
  top: 0rem;
  right: 0.8rem;
  color: #495157;
  background-image: url(/CFImages/Icons/chevron-down.svg);
  background-size: 0.6rem auto;
  background-position: center;
  background-repeat: no-repeat;
  background-color: #D0D3D4;
  width: 0.6rem;
  height: 0.6rem;
  border: 1px solid #D0D3D4;
  border-radius: 5px;
  padding: 3px;
  cursor: pointer;
}
.filteredContent.withSidebar .filteredContentOuterGrid.grid .filtersContainer .advancedFiltersContainer .fieldGroups.checkboxes fieldset .filterToggle legend {
  font-size: 14px;
  text-transform: uppercase;
  font-weight: 700;
  display: block;
  margin: 0 0 0.5rem 0;
}
.filteredContent.withSidebar .filteredContentOuterGrid.grid .filtersContainer .advancedFiltersContainer .fieldGroups.checkboxes fieldset .filterToggle.active:after {
  background-image: url(/CFImages/Icons/chevron-up.svg);
  background-color: #495157;
}
.filteredContent.withSidebar .filteredContentOuterGrid.grid .filtersContainer .advancedFiltersContainer .fieldGroups.checkboxes fieldset .filterToggleContent {
  border: 1px solid #D0D3D4;
  border-radius: 5px;
  /* only show when active */
  height: 0;
  opacity: 0;
  overflow: hidden;
  transition: all 0.2s cubic-bezier(0.86, 0, 0.07, 1), font-size 0s linear, padding 0s linear, margin 0s linear;
  /* The search input for each filter */
}
.filteredContent.withSidebar .filteredContentOuterGrid.grid .filtersContainer .advancedFiltersContainer .fieldGroups.checkboxes fieldset .filterToggleContent.active {
  height: auto;
  opacity: 1;
  overflow: auto;
  max-height: 260px;
  padding: 0.5rem 0;
  margin-bottom: 1rem;
}
.filteredContent.withSidebar .filteredContentOuterGrid.grid .filtersContainer .advancedFiltersContainer .fieldGroups.checkboxes fieldset .filterToggleContent input.option-filter-textbox {
  width: calc(100% - 2rem);
  margin-left: 1rem;
  border-radius: 5px;
  height: auto;
  padding: 0.5rem 1rem;
  margin-bottom: 0.5rem;
  font-size: 0.8rem;
}
.filteredContent.withSidebar .filteredContentOuterGrid.grid .filtersContainer .advancedFiltersContainer .fieldGroups.checkboxes fieldset .filterToggleContent div.rangeWrapper {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 0.5rem;
}
.filteredContent.withSidebar .filteredContentOuterGrid.grid .filtersContainer .advancedFiltersContainer .fieldGroups.checkboxes fieldset .filterToggleContent div.rangeWrapper input {
  border-radius: 5px;
}
.filteredContent.withSidebar .filteredContentOuterGrid.grid .filtersContainer .advancedFiltersContainer .fieldGroups.checkboxes fieldset .filterToggleContent div.rangeWrapper span.minMaxSeperator {
  padding: 0 0.5rem;
}
.filteredContent.withSidebar .filteredContentOuterGrid.grid .filtersContainer .advancedFiltersContainer .fieldGroups.checkboxes fieldset .filterToggleContent div.rangeWrapper span.minMaxSeperator:before {
  content: "-";
}
.filteredContent.withSidebar .filteredContentOuterGrid.grid .filtersContainer .advancedFiltersContainer .fieldGroups.checkboxes fieldset .filterToggleContent span.rangeValuesText {
  text-align: center;
  display: block;
  font-size: 12px;
  color: #A2AAAD;
  margin: 0.5rem 0;
}
.filteredContent.withSidebar .filteredContentOuterGrid.grid .filtersContainer .advancedFiltersContainer .fieldGroups.checkboxes fieldset .filterToggleContent ul.checkboxes {
  display: flex;
  flex-direction: column;
  justify-content: space-evenly;
  width: 100%;
}
.filteredContent.withSidebar .filteredContentOuterGrid.grid .filtersContainer .advancedFiltersContainer .fieldGroups.checkboxes fieldset .filterToggleContent ul.checkboxes li.field.col {
  position: relative;
  flex: 0;
  font-size: 0.9rem;
  padding: 0.5rem 1rem;
  margin: 0;
  border-bottom: 1px solid #D0D3D4;
}
.filteredContent.withSidebar .filteredContentOuterGrid.grid .filtersContainer .advancedFiltersContainer .fieldGroups.checkboxes fieldset .filterToggleContent ul.checkboxes li.field.col:last-child {
  border-bottom: none;
}
.filteredContent.withSidebar .filteredContentOuterGrid.grid .filtersContainer .advancedFiltersContainer .fieldGroups.checkboxes fieldset .filterToggleContent ul.checkboxes li.field.col:hover {
  background-color: #D0D3D4;
}
.filteredContent.withSidebar input[type=checkbox] {
  width: 20px;
  height: 20px;
  cursor: pointer;
  position: absolute;
  top: 8px;
  -webkit-appearance: inherit;
          appearance: inherit;
  border-radius: 3px;
  /* disabled */
}
.filteredContent.withSidebar input[type=checkbox] + label {
  padding-left: 2rem;
}
.filteredContent.withSidebar input[type=checkbox]:focus {
  outline: none !important;
}
.filteredContent.withSidebar input[type=checkbox]:checked {
  background-color: #495157;
  border-color: #495157;
  background-image: url(/CFImages/Icons/check-white.svg);
}
.filteredContent.withSidebar input[type=checkbox]:disabled {
  color: #D0D3D4;
}

/* Active filters tags/pills */
#activeFilters {
  margin: 1rem 0;
}
#activeFilters .activeFilterGroup {
  display: inline-flex;
  flex-wrap: wrap;
}
#activeFilters .activeFilterGroup .activeFilterTag {
  border: 1px solid #D0D3D4;
  padding: 0.4rem 1rem;
  cursor: pointer;
  position: relative;
  padding-right: 2.4rem;
  margin-bottom: 0.6rem;
  -webkit-user-select: none;
          user-select: none;
  margin-right: 1rem;
  color: #A2AAAD;
}
#activeFilters .activeFilterGroup .activeFilterTag:not(:last-of-type) {
  margin-right: 0.6rem;
}
#activeFilters .activeFilterGroup .activeFilterTag:after {
  top: 50%;
  content: " ";
  right: 0.8rem;
  color: #495157;
  background-image: url(/CFImages/Icons/chevron-down.svg);
  background-size: 0.6rem auto;
  background-position: center;
  transform: translateX(-50%) translateY(-50%) rotate(45deg);
  transform-origin: center;
  width: 0.6rem;
  height: 0.6rem;
  position: absolute;
}
#activeFilters .activeFilterGroup .activeFilterTag:hover, #activeFilters .activeFilterGroup .activeFilterTag:focus {
  border-color: #D0D3D4;
}
#activeFilters .activeFilterGroup .activeFilterTag:active {
  border-color: #D0D3D4;
}

.filtersPopupWrapper {
  width: 100%;
  left: 0 !important;
}
.filtersPopupWrapper .advancedFiltersContainer {
  margin: 0 auto;
  display: block !important;
}

#loadingIndicator {
  height: 200px;
  display: none;
  margin-top: 2rem;
}
#loadingIndicator svg {
  margin: 0 auto;
}
#loadingIndicator.loading {
  content: "loading";
  line-height: 200px;
  text-align: center;
  display: block;
}

#loadingCounter {
  margin: 2rem 0 2rem;
  color: #A2AAAD;
  font-style: italic;
}

#filteredContentResult li.noResults {
  color: #A2AAAD;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0;
  flex: initial;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
#filteredContentResult li.noResults .message {
  font-style: italic;
}
/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/*#region Popups / Modals (SHARED) */
/****************************************************************************************************/
.popup_wrapper .button.close {
  top: -2rem;
  right: 0;
  width: 2rem;
  height: 2rem;
  position: absolute;
  border: none;
  padding: 0;
  border-radius: 0;
  background-color: white;
  border: 1px solid #D0D3D4;
}
.popup_wrapper .button.close:before {
  background-image: url(/CFImages/Icons/chevron-down.svg);
  background-size: 1rem auto;
  background-position: center;
  background-repeat: no-repeat;
  transform: rotate(45deg);
  transform-origin: center;
  content: " ";
  display: inline-block;
  position: absolute;
  inset: 0;
}
.popup_wrapper .button.close:focus, .popup_wrapper .button.close:hover {
  background-color: transparent;
}
.popup_wrapper .button.close:focus:before, .popup_wrapper .button.close:hover:before {
  /*background-image: url(/CFImages/Icons/chevron-down.svg);*/
}
.popup_wrapper .button.close:active {
  background-color: transparent;
}
.popup_wrapper .button.close:active:before {
  /*background-image: url(/CFImages/Icons/chevron-down.svg);*/
}

/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Forms + Inputs / Fields */
/****************************************************************************************************/
label {
  cursor: pointer;
}

/* Text Fields */
input {
  width: 100%;
  max-width: 100%;
  padding: 16px 1rem;
  padding-right: 3rem;
  text-overflow: ellipsis;
  font-weight: 100;
  transition: all 0.2s cubic-bezier(0.86, 0, 0.07, 1), font-size 0s linear, padding 0s linear, margin 0s linear;
  color: white;
  background: rgba(217, 217, 217, 0.1);
  border: none;
}
input::-webkit-input-placeholder {
  opacity: 1;
  -webkit-transition: all 0.2s ease, font-size 0s linear, padding 0s linear, margin 0s linear, outline 0s linear;
  transition: all 0.2s ease, font-size 0s linear, padding 0s linear, margin 0s linear, outline 0s linear;
  color: white;
  text-transform: none;
}
input:-moz-placeholder {
  opacity: 1;
  -moz-transition: all 0.2s ease, font-size 0s linear, padding 0s linear, margin 0s linear, outline 0s linear;
  transition: all 0.2s ease, font-size 0s linear, padding 0s linear, margin 0s linear, outline 0s linear;
  color: white;
  text-transform: none;
}
input::-moz-placeholder {
  opacity: 1;
  -moz-transition: all 0.2s ease, font-size 0s linear, padding 0s linear, margin 0s linear, outline 0s linear;
  transition: all 0.2s ease, font-size 0s linear, padding 0s linear, margin 0s linear, outline 0s linear;
  color: white;
  text-transform: none;
}
input:-ms-input-placeholder {
  opacity: 1;
  -ms-transition: all 0.2s ease, font-size 0s linear, padding 0s linear, margin 0s linear, outline 0s linear;
  transition: all 0.2s ease, font-size 0s linear, padding 0s linear, margin 0s linear, outline 0s linear;
  color: white;
  text-transform: none;
}
input:hover::-webkit-input-placeholder, input:focus::-webkit-input-placeholder {
  opacity: 0.4;
}
input:hover:-moz-placeholder, input:focus:-moz-placeholder {
  opacity: 0.4;
}
input:hover::-moz-placeholder, input:focus::-moz-placeholder {
  opacity: 0.4;
}
input:hover:-ms-input-placeholder, input:focus:-ms-input-placeholder {
  opacity: 0.4;
}
input:focus:focus-visible {
  outline: 1px solid #495157;
  outline-offset: 0;
}
textarea {
  width: 100%;
  min-height: 8rem;
  display: block;
  font-weight: 100;
  color: white;
  background: rgba(217, 217, 217, 0.1);
  border: none;
  padding: 16px 1rem;
}
textarea::-webkit-input-placeholder {
  opacity: 1;
  -webkit-transition: all 0.2s ease, font-size 0s linear, padding 0s linear, margin 0s linear, outline 0s linear;
  transition: all 0.2s ease, font-size 0s linear, padding 0s linear, margin 0s linear, outline 0s linear;
  color: white;
  text-transform: none;
}
textarea:-moz-placeholder {
  opacity: 1;
  -moz-transition: all 0.2s ease, font-size 0s linear, padding 0s linear, margin 0s linear, outline 0s linear;
  transition: all 0.2s ease, font-size 0s linear, padding 0s linear, margin 0s linear, outline 0s linear;
  color: white;
  text-transform: none;
}
textarea::-moz-placeholder {
  opacity: 1;
  -moz-transition: all 0.2s ease, font-size 0s linear, padding 0s linear, margin 0s linear, outline 0s linear;
  transition: all 0.2s ease, font-size 0s linear, padding 0s linear, margin 0s linear, outline 0s linear;
  color: white;
  text-transform: none;
}
textarea:-ms-input-placeholder {
  opacity: 1;
  -ms-transition: all 0.2s ease, font-size 0s linear, padding 0s linear, margin 0s linear, outline 0s linear;
  transition: all 0.2s ease, font-size 0s linear, padding 0s linear, margin 0s linear, outline 0s linear;
  color: white;
  text-transform: none;
}
textarea:hover::-webkit-input-placeholder, textarea:focus::-webkit-input-placeholder {
  opacity: 0.4;
}
textarea:hover:-moz-placeholder, textarea:focus:-moz-placeholder {
  opacity: 0.4;
}
textarea:hover::-moz-placeholder, textarea:focus::-moz-placeholder {
  opacity: 0.4;
}
textarea:hover:-ms-input-placeholder, textarea:focus:-ms-input-placeholder {
  opacity: 0.4;
}
textarea:focus {
  outline: 1px solid #495157;
  outline-offset: 0;
}

/* Select Lists */
select {
  width: 100%;
  height: 3.15rem;
  max-width: 100%;
  color: #495157;
  cursor: pointer;
  border: 1px solid #D0D3D4;
  padding: 0.2rem 1rem;
  padding-right: 1.6rem;
  font-size: 1rem;
  font-weight: 100;
  line-height: 1;
  /* Firefox */
  -webkit-appearance: none;
  /* Safari and Chrome */
  appearance: none;
  background-size: 0.8rem auto;
  background-image: url(/CFImages/Icons/chevron-down.svg);
  background-repeat: no-repeat;
  background-position: right 1rem center;
  transition: all 0.2s cubic-bezier(0.86, 0, 0.07, 1), font-size 0s linear, padding 0s linear, margin 0s linear;
}
select:hover {
  border-color: rgba(0, 46, 93, 0.7);
}
select:focus {
  outline: none;
  outline: 1px solid #495157;
  outline-offset: 0;
}
select > option {
  text-transform: none;
}
select > option:checked, select > option:hover {
  background-color: #D0D3D4;
}

/* Checkboxes */
input[type=checkbox] {
  cursor: pointer;
  font-size: 1em;
  width: 1em;
  height: 1em;
}

/* Radio Buttons */
input[type=radio] {
  height: 1em;
  cursor: pointer;
  display: inline-block;
  width: auto;
}

/*  */
form label {
  cursor: pointer;
}
form fieldset {
  padding: 0;
  border: none;
}

/* clears the ‘X’ from Internet Explorer */
input[type=search]::-ms-clear {
  display: none;
  width: 0;
  height: 0;
}

input[type=search]::-ms-reveal {
  display: none;
  width: 0;
  height: 0;
}

/* clears the ‘X’ from Chrome */
input[type=search]::-webkit-search-decoration,
input[type=search]::-webkit-search-cancel-button,
input[type=search]::-webkit-search-results-button,
input[type=search]::-webkit-search-results-decoration {
  display: none;
}

.hiddenForHumans {
  position: absolute !important;
  z-index: -10 !important;
  pointer-events: none !important;
  visibility: hidden !important;
  width: 0;
  height: 0;
}

/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Sitefinity Forms Only */
/****************************************************************************************************/
/* Sitefinity form container (doesn't become an actual form element until submit) */
[data-sf-role=form-container] {
  /* Form error messages */
  /* Sitefinity File Upload field */
  /* Success message */
  /* Show the checkmark animation on submit success */
}
[data-sf-role=form-container] label {
  display: none;
}
[data-sf-role=form-container] fieldset {
  margin: 1rem 0;
}
[data-sf-role=form-container] fieldset legend {
  padding: 0 0.4rem;
}
[data-sf-role=form-container] [data-sf-role=error-message] {
  display: block;
  font-size: 0.6em;
  color: white;
}
[data-sf-role=form-container] [data-sf-role=success-message] h3 {
  color: #495157;
}
[data-sf-role=form-container] [data-sf-role=file-field-inputs] {
  cursor: pointer;
}
[data-sf-role=form-container] [data-sf-role=file-field-inputs] input[type=file]::-webkit-file-upload-button {
  visibility: hidden;
  clip: rect(0, 0, 0, 0);
  width: 1px;
  height: 1px;
  border: 0;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  position: absolute;
  background-color: #fff;
  color: #000;
}
[data-sf-role=form-container] .successAnimation {
  display: none;
  margin-bottom: 1rem;
}
[data-sf-role=form-container].success .successAnimation {
  display: block !important;
}

/* Form success animation */
@keyframes stroke {
  100% {
    stroke-dashoffset: 0;
  }
}
@keyframes scale {
  0%, 100% {
    transform: none;
  }
  50% {
    transform: scale3d(1.1, 1.1, 1);
  }
}
@keyframes fill {
  100% {
    box-shadow: inset 0px 0px 0px 30px #495157;
  }
}
svg.checkmark {
  width: 56px;
  height: 56px;
  border-radius: 50%;
  display: block;
  stroke-width: 2;
  stroke: white;
  stroke-miterlimit: 10;
  box-shadow: inset 0px 0px 0px #495157;
  animation: fill 0.4s ease-in-out 0.4s forwards, scale 0.3s ease-in-out 0.9s both;
}
svg.checkmark .checkmark__circle {
  stroke-dasharray: 166;
  stroke-dashoffset: 166;
  stroke-width: 2;
  stroke-miterlimit: 10;
  stroke: #495157;
  fill: none;
  animation: stroke 0.6s cubic-bezier(0.65, 0, 0.45, 1) forwards;
}
svg.checkmark .checkmark__check {
  transform-origin: 50% 50%;
  stroke-dasharray: 48;
  stroke-dashoffset: 48;
  animation: stroke 0.3s cubic-bezier(0.65, 0, 0.45, 1) 0.8s forwards;
}

/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/*#region Site Search */
/****************************************************************************************************/
.searchSorting {
  width: 600px;
  max-width: 100%;
  padding-bottom: 2rem;
}

.searchResults > ul.grid {
  display: flex;
  flex: 0 1 auto;
  flex-wrap: wrap;
  flex-direction: row;
  margin-left: -1rem;
  margin-right: -1rem;
  box-sizing: border-box;
}
.searchResults > ul.grid > .col {
  flex: 0 0 auto;
  /*order: 0;*/
  width: initial;
  max-width: 100%;
  margin-left: 1rem;
  margin-right: 1rem;
  vertical-align: top;
  /*width: calc((1 / 3) * 100% - 2rem);*/
  flex-basis: calc((1 / 3) * 100% - 2rem);
}
.searchResults .cardView.searchdefault {
  padding: 2rem 3rem;
}
.searchResults .nonDynamic {
  padding: 2rem;
}
.searchResults .nonDynamic a {
  word-break: break-all;
}
@media only screen and (max-width: 1024px) {
  .searchResults > ul.grid {
    display: flex;
    flex: 0 1 auto;
    flex-wrap: wrap;
    flex-direction: row;
    margin-left: -1rem;
    margin-right: -1rem;
    box-sizing: border-box;
  }
  .searchResults > ul.grid > .col {
    flex: 0 0 auto;
    /*order: 0;*/
    width: initial;
    max-width: 100%;
    margin-left: 1rem;
    margin-right: 1rem;
    vertical-align: top;
    /*width: calc((1 / 2) * 100% - 2rem);*/
    flex-basis: calc((1 / 2) * 100% - 2rem);
  }
}
@media only screen and (max-width: 600px) {
  .searchResults > ul.grid {
    display: flex;
    flex: 0 1 auto;
    flex-wrap: wrap;
    flex-direction: row;
    margin-left: 0;
    margin-right: 0;
    box-sizing: border-box;
  }
  .searchResults > ul.grid > .col {
    flex: 0 0 auto;
    /*order: 0;*/
    width: initial;
    max-width: 100%;
    margin-left: 0;
    margin-right: 0;
    vertical-align: top;
    /*width: calc((1 / 1) * 100%);*/
    flex-basis: calc((1 / 1) * 100%);
  }
}
.searchResults ul.grid .col {
  margin-bottom: 1rem;
}

div.pageCount {
  text-align: center;
  margin: 2rem auto 0;
}

div.searchPager {
  margin: 1rem 0;
  text-align: center;
}
div.searchPager ul.pagination {
  display: flex;
  flex: 0 1 auto;
  flex-wrap: wrap;
  flex-direction: row;
  margin-left: -0.5rem;
  margin-right: -0.5rem;
  box-sizing: border-box;
  justify-content: center;
}
div.searchPager ul.pagination > li {
  flex: 0 0 auto;
  /*order: 0;*/
  width: initial;
  max-width: 100%;
  margin-left: 0.5rem;
  margin-right: 0.5rem;
  vertical-align: top;
  flex: 0 1 auto;
  width: auto;
}
div.searchPager ul.pagination li {
  margin-top: 0;
}
div.searchPager ul.pagination li.active a {
  color: #495157;
}

/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region GLOBAL ALERTS */
/****************************************************************************************************/
/* Overall for the popup */
.globalalertsWrapper {
  position: fixed;
  overflow: hidden;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 80%;
  max-width: 800px;
  z-index: 9999;
  background: white;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
  padding: 0;
  border-radius: 0.5rem;
}

ul.listView.globalalerts {
  display: flex;
  transition: transform 0.5s ease;
  will-change: transform;
  margin: 0;
}
ul.listView.globalalerts li {
  min-width: 100%;
}

.cardView.globalalert {
  position: relative;
  overflow: hidden;
  border-radius: 2rem;
  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.05);
  background-color: #fff;
  min-height: 300px;
  display: flex;
  align-items: center;
  justify-content: flex-start;
}
.cardView.globalalert .imgWrapper {
  position: absolute;
  inset: 0;
  z-index: 0;
}
.cardView.globalalert .imgWrapper picture,
.cardView.globalalert .imgWrapper img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
  opacity: 0.5;
  transition: opacity 0.3s ease;
}
.cardView.globalalert .alertContent {
  position: relative;
  z-index: 1;
  background-color: rgba(255, 255, 255, 0.85);
  padding: 4rem 2rem 2rem 2rem;
  max-width: 800px;
  min-height: 220px;
  margin-left: 2rem;
  margin-top: auto;
  margin-bottom: auto;
  border-radius: 2rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.cardView.globalalert .alertTitle {
  font-size: 1.75rem;
  font-weight: 700;
  margin-bottom: 0.5rem;
  color: #002E5D;
}
.cardView.globalalert .alertOverview p {
  margin-bottom: 0.75rem;
  color: white;
}
.cardView.globalalert .button {
  align-self: flex-start;
  margin-top: 0.5rem;
  padding: 0.6rem 1.25rem;
  border-radius: 5px;
  background: #002E5D;
  color: white;
  text-decoration: none;
  font-weight: 600;
}
.cardView.globalalert .button:hover {
  background: #00152a;
}
.cardView.globalalert span.alertIcon {
  position: absolute;
  left: 2rem;
  top: 2rem;
  height: 2.5rem;
  width: 2.5rem;
  border-radius: 50%;
  background-repeat: no-repeat;
  background-size: auto 1.25rem;
  background-position: center center;
  z-index: 2;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.15);
}
.cardView.globalalert span.alertIcon.informativealert {
  background-image: url("/CFImages/Icons/alert-info.svg");
  background-color: #1976D2;
}
.cardView.globalalert span.alertIcon.criticalalert {
  background-image: url("/CFImages/Icons/alert-exclamation.svg");
  background-color: #D32F2F;
}
.cardView.globalalert span.alertIcon.questionalert {
  background-image: url("/CFImages/Icons/alert-questionmark.svg");
  background-color: #FFA000;
}
.cardView.globalalert .globalalert-dismiss {
  position: absolute;
  right: 2rem;
  top: 2rem;
  height: 2rem;
  width: 2rem;
  background: rgba(255, 255, 255, 0.8);
  border: none;
  color: white;
  font-size: 1.25rem;
  line-height: 2rem;
  text-align: center;
  cursor: pointer;
  border-radius: 50%;
  z-index: 2;
  transition: background 0.2s ease;
}
.cardView.globalalert .globalalert-dismiss:hover {
  background: white;
}
.cardView.globalalert .globalalert-dismiss::after {
  content: "×";
  font-weight: bold;
}
.cardView.globalalert:hover .imgWrapper img {
  opacity: 0.7;
}

/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Accordions + FAQs */
/****************************************************************************************************/
.accordionGroup.k-group .k-item {
  margin-bottom: 0;
  width: 100%;
  background-color: #495157;
  white-space: normal;
}
.accordionGroup.k-group .k-item .accordionTop {
  padding: 0.5rem 1rem 0.5rem 2rem;
  border-bottom: solid 1px #68ACA8;
}
.accordionGroup.k-group .k-item .accordionTop .cmsContent {
  color: #fff;
}
.accordionGroup.k-group .k-item .accordionTop p {
  margin: 0;
  padding: 0;
}
.accordionGroup.k-group .k-item .accordionTop .k-in {
  padding: 0;
}
.accordionGroup.k-group .k-item .accordionTop .k-icon:before {
  background-image: url(/CFImages/Icons/chevron-down.svg);
}
.accordionGroup.k-group .k-item .accordionTop .k-icon.k-i-collapse:before {
  background-image: url(/CFImages/Icons/chevron-up.svg);
}
.accordionGroup.k-group .k-item .k-content {
  display: block;
  background-color: #D0D3D4;
  padding: 2rem;
  white-space: normal;
}
.accordionGroup.k-group .k-item .k-content .k-in {
  display: none;
}

/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Toggle Sections */
/****************************************************************************************************/
.toggleContent {
  display: none;
}
.toggleContent:active {
  display: block;
}

/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Image Galleries */
/****************************************************************************************************/
.imageGallery.slider {
  max-width: 100%;
}
.imageGallery.slider .gallerySlider .splide__arrows {
  opacity: 0;
}
.imageGallery.slider .gallerySlider:hover .splide__arrows {
  transition: all 0.2s ease, font-size 0s linear, padding 0s linear, margin 0s linear, outline 0s linear;
  opacity: 1;
}
.imageGallery.slider .gallerySlider .splide__slide {
  min-height: 600px;
  height: 70vh;
  max-height: 700px;
  max-width: 100vw;
  /*            &:hover {
      .descriptionWrapper {
          opacity: 1;
          .description {
          }
      }
  }*/
}
.imageGallery.slider .gallerySlider .splide__slide > a {
  cursor: zoom-in;
  position: absolute;
  inset: 0;
}
.imageGallery.slider .gallerySlider .splide__slide img {
  -o-object-fit: scale-down;
     object-fit: scale-down;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: 50% 13%;
     object-position: 50% 13%;
  height: 100%;
  width: 100%;
}
.imageGallery.slider .gallerySlider .splide__slide .descriptionWrapper {
  position: absolute;
  top: auto;
  left: 0;
  right: 0;
  width: 100%;
  bottom: 0;
  z-index: 2;
  color: black;
  max-width: 100%;
  background-color: rgba(255, 255, 255, 0.8);
  /*                opacity: 0;
      transition: $transitionQuint;*/
}
.imageGallery.slider .gallerySlider .splide__slide .descriptionWrapper .description {
  font-size: 0.9rem;
  padding: 2rem;
  display: inline-block;
}
.imageGallery.slider .gallerySlider .splide__slide .descriptionWrapper .description > :last-child {
  margin-bottom: 0;
}
.imageGallery.slider .gallerySlider,
.imageGallery.slider .gallerySliderNav {
  padding-top: 1rem;
}
@media (max-width: 767px) {
  .imageGallery.slider .gallerySliderNav {
    display: none;
  }
}
.imageGallery.slider .gallerySliderNav .splide__slide {
  /*opacity: 0.8;*/
  border: 2px solid white;
  /*            .bgImgWrapper {
      position: relative;
      @include aspectRatioBox(4 3);
      opacity: 0.9;

      div.bgImg {
      }
  }

  img {
      opacity: 0.8;
  }*/
}
.imageGallery.slider .gallerySliderNav .splide__slide.is-active {
  border: 2px solid #495157;
}
.imageGallery.slider .gallerySliderNav .splide__slide:before {
  content: " ";
  background-color: #D0D3D4;
  position: absolute;
  inset: 0;
  z-index: -1;
}
.imageGallery.slider .gallerySliderNav .splide__slide:after {
  content: " ";
  position: absolute;
  inset: 0;
  z-index: 10;
  background-color: rgba(255, 255, 255, 0.1);
  pointer-events: none;
  transition: all 0.2s cubic-bezier(0.86, 0, 0.07, 1), font-size 0s linear, padding 0s linear, margin 0s linear;
}
.imageGallery.slider .gallerySliderNav .splide__slide:focus:focus-visible {
  /*opacity: 1;*/
  /*                img,
  .bgImgWrapper {
      opacity: 1;
  }*/
}
.imageGallery.slider .gallerySliderNav .splide__slide:focus:focus-visible:after {
  background-color: rgba(255, 255, 255, 0);
}
.imageGallery.slider .gallerySliderNav .splide__slide:hover {
  /*opacity: 1;*/
  /*                img,
  .bgImgWrapper {
      opacity: 1;
  }*/
}
.imageGallery.slider .gallerySliderNav .splide__slide:hover:after {
  background-color: rgba(255, 255, 255, 0);
}

.fancybox-caption {
  display: none !important;
}

/* #endregion */
/****************************************************************************************************/
@keyframes heroBgDrift {
  0% {
    transform: translate(0, 0) scale(1.04);
  }
  25% {
    transform: translate(-10px, 6px) scale(1.05);
  }
  50% {
    transform: translate(8px, -6px) scale(1.06);
  }
  75% {
    transform: translate(-6px, -10px) scale(1.05);
  }
  100% {
    transform: translate(0, 0) scale(1.04);
  }
}
/****************************************************************************************************/
/* #region Page - Home Page */
/****************************************************************************************************/
.homeExpertise {
  position: relative;
}
.homeExpertise::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: url("/CFImages/expertise-abstract-lines.png");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center left;
  opacity: 0.15;
  z-index: 0;
}
.homeExpertise .container {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
}
.homeExpertise .introText {
  max-width: 980px;
  padding-bottom: var(--layoutPaddingSmall);
}
.homeExpertise .introText h2 {
  max-width: 600px;
}
.homeExpertise .expertisesWrapper {
  max-width: 980px;
  width: 100%;
  padding-bottom: var(--layoutPadding);
}
.homeExpertise .expertisesWrapper .listView.expertises {
  --card-width: 100%;
  --card-gap: 0;
}

.homePage .homeHero {
  position: relative;
  padding: 4.8rem 0;
  overflow: hidden;
}
.homePage .homeHero::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: url("/CFImages/topper-abstract-lines.png");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  opacity: 0.075;
  z-index: 0;
  animation: heroBgDrift 12s ease-in-out infinite;
  will-change: transform;
}
.homePage .homeHero .cmsContent {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  max-width: 980px;
}
.homePage .homeHero h1 {
  font-size: clamp(42px, 10.5776173285px + 0.0409145608 * 100vw, 76px);
}
.homePage .homeHero p {
  width: 80%;
}
.homePage .homeTeam {
  display: flex;
  flex-direction: column;
  padding: var(--layoutPadding) 0;
}
.homePage .homeTeam .introText {
  padding-bottom: var(--layoutPadding);
}
.homePage .homeTeam .introText .cmsContent {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  max-width: 980px;
}
.homePage .homeTeam .introText p {
  max-width: 80%;
}

.contactPage .mainContent {
  padding-bottom: 0 !important;
}

@media (prefers-reduced-motion: reduce) {
  .homeHero::before {
    animation: none;
  }

  .topperSection::before {
    animation: none;
  }
}
/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Utility Classes - Visibility */
/****************************************************************************************************/
.sr-only {
  clip: rect(0, 0, 0, 0);
  width: 1px;
  height: 1px;
  border: 0;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  position: absolute;
  background-color: #fff;
  color: #000;
}

.hidden {
  display: none !important;
}

.forcedHide {
  display: none !important;
}

.hideOnDesktop {
  display: none !important;
}

.hideOnMobile {
  display: inline-block;
}

.printOnly {
  display: none;
}

.mobileOnly {
  display: none;
  height: 0;
  width: 0;
}
@media (max-width: 767px) {
  .mobileOnly {
    display: block;
  }
}

/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Utility Classes */
/****************************************************************************************************/
/* ##### Whitespace (padding + margin) ##### */
/*    Examples:
    .mtxl - margin-top-extra-large (add an extra large margin-top)
    .pan  - padding-all-none       (remove padding on all sides)
    .mvs  - margin-vertical-small  (add small margins on the top and bottom)
*/
.pan {
  padding: 0 !important;
}

.man {
  margin: 0 !important;
}

.pvn {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

.mvn {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

.phn {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.mhn {
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.ptn {
  padding-top: 0 !important;
}

.mtn {
  margin-top: 0 !important;
}

.prn {
  padding-right: 0 !important;
}

.mrn {
  margin-right: 0 !important;
}

.pbn {
  padding-bottom: 0 !important;
}

.mbn {
  margin-bottom: 0 !important;
}

.pln {
  padding-left: 0 !important;
}

.mln {
  margin-left: 0 !important;
}

.paxs {
  padding: 0.25rem !important;
}

.maxs {
  margin: 0.25rem !important;
}

.pvxs {
  padding-top: 0.25rem !important;
  padding-bottom: 0.25rem !important;
}

.mvxs {
  margin-top: 0.25rem !important;
  margin-bottom: 0.25rem !important;
}

.phxs {
  padding-left: 0.25rem !important;
  padding-right: 0.25rem !important;
}

.mhxs {
  margin-left: 0.25rem !important;
  margin-right: 0.25rem !important;
}

.ptxs {
  padding-top: 0.25rem !important;
}

.mtxs {
  margin-top: 0.25rem !important;
}

.prxs {
  padding-right: 0.25rem !important;
}

.mrxs {
  margin-right: 0.25rem !important;
}

.pbxs {
  padding-bottom: 0.25rem !important;
}

.mbxs {
  margin-bottom: 0.25rem !important;
}

.plxs {
  padding-left: 0.25rem !important;
}

.mlxs {
  margin-left: 0.25rem !important;
}

.pas {
  padding: 0.5rem !important;
}

.mas {
  margin: 0.5rem !important;
}

.pvs {
  padding-top: 0.5rem !important;
  padding-bottom: 0.5rem !important;
}

.mvs {
  margin-top: 0.5rem !important;
  margin-bottom: 0.5rem !important;
}

.phs {
  padding-left: 0.5rem !important;
  padding-right: 0.5rem !important;
}

.mhs {
  margin-left: 0.5rem !important;
  margin-right: 0.5rem !important;
}

.pts {
  padding-top: 0.5rem !important;
}

.mts {
  margin-top: 0.5rem !important;
}

.prs {
  padding-right: 0.5rem !important;
}

.mrs {
  margin-right: 0.5rem !important;
}

.pbs {
  padding-bottom: 0.5rem !important;
}

.mbs {
  margin-bottom: 0.5rem !important;
}

.pls {
  padding-left: 0.5rem !important;
}

.mls {
  margin-left: 0.5rem !important;
}

.pam {
  padding: 1rem !important;
}

.mam {
  margin: 1rem !important;
}

.pvm {
  padding-top: 1rem !important;
  padding-bottom: 1rem !important;
}

.mvm {
  margin-top: 1rem !important;
  margin-bottom: 1rem !important;
}

.phm {
  padding-left: 1rem !important;
  padding-right: 1rem !important;
}

.mhm {
  margin-left: 1rem !important;
  margin-right: 1rem !important;
}

.ptm {
  padding-top: 1rem !important;
}

.mtm {
  margin-top: 1rem !important;
}

.prm {
  padding-right: 1rem !important;
}

.mrm {
  margin-right: 1rem !important;
}

.pbm {
  padding-bottom: 1rem !important;
}

.mbm {
  margin-bottom: 1rem !important;
}

.plm {
  padding-left: 1rem !important;
}

.mlm {
  margin-left: 1rem !important;
}

.pal {
  padding: 2rem !important;
}

.mal {
  margin: 2rem !important;
}

.pvl {
  padding-top: 2rem !important;
  padding-bottom: 2rem !important;
}

.mvl {
  margin-top: 2rem !important;
  margin-bottom: 2rem !important;
}

.phl {
  padding-left: 2rem !important;
  padding-right: 2rem !important;
}

.mhl {
  margin-left: 2rem !important;
  margin-right: 2rem !important;
}

.ptl {
  padding-top: 2rem !important;
}

.mtl {
  margin-top: 2rem !important;
}

.prl {
  padding-right: 2rem !important;
}

.mrl {
  margin-right: 2rem !important;
}

.pbl {
  padding-bottom: 2rem !important;
}

.mbl {
  margin-bottom: 2rem !important;
}

.pll {
  padding-left: 2rem !important;
}

.mll {
  margin-left: 2rem !important;
}

.paxl {
  padding: 3rem !important;
}

.maxl {
  margin: 3rem !important;
}

.pvxl {
  padding-top: 3rem !important;
  padding-bottom: 3rem !important;
}

.mvxl {
  margin-top: 3rem !important;
  margin-bottom: 3rem !important;
}

.phxl {
  padding-left: 3rem !important;
  padding-right: 3rem !important;
}

.mhxl {
  margin-left: 3rem !important;
  margin-right: 3rem !important;
}

.ptxl {
  padding-top: 3rem !important;
}

.mtxl {
  margin-top: 3rem !important;
}

.prxl {
  padding-right: 3rem !important;
}

.mrxl {
  margin-right: 3rem !important;
}

.pbxl {
  padding-bottom: 3rem !important;
}

.mbxl {
  margin-bottom: 3rem !important;
}

.plxl {
  padding-left: 3rem !important;
}

.mlxl {
  margin-left: 3rem !important;
}

.paxxl {
  padding: 5rem !important;
}

.maxxl {
  margin: 5rem !important;
}

.pvxxl {
  padding-top: 5rem !important;
  padding-bottom: 5rem !important;
}

.mvxxl {
  margin-top: 5rem !important;
  margin-bottom: 5rem !important;
}

.phxxl {
  padding-left: 5rem !important;
  padding-right: 5rem !important;
}

.mhxxl {
  margin-left: 5rem !important;
  margin-right: 5rem !important;
}

.ptxxl {
  padding-top: 5rem !important;
}

.mtxxl {
  margin-top: 5rem !important;
}

.prxxl {
  padding-right: 5rem !important;
}

.mrxxl {
  margin-right: 5rem !important;
}

.pbxxl {
  padding-bottom: 5rem !important;
}

.mbxxl {
  margin-bottom: 5rem !important;
}

.plxxl {
  padding-left: 5rem !important;
}

.mlxxl {
  margin-left: 5rem !important;
}

.paxxxl {
  padding: 7rem !important;
}

.maxxxl {
  margin: 7rem !important;
}

.pvxxxl {
  padding-top: 7rem !important;
  padding-bottom: 7rem !important;
}

.mvxxxl {
  margin-top: 7rem !important;
  margin-bottom: 7rem !important;
}

.phxxxl {
  padding-left: 7rem !important;
  padding-right: 7rem !important;
}

.mhxxxl {
  margin-left: 7rem !important;
  margin-right: 7rem !important;
}

.ptxxxl {
  padding-top: 7rem !important;
}

.mtxxxl {
  margin-top: 7rem !important;
}

.prxxxl {
  padding-right: 7rem !important;
}

.mrxxxl {
  margin-right: 7rem !important;
}

.pbxxxl {
  padding-bottom: 7rem !important;
}

.mbxxxl {
  margin-bottom: 7rem !important;
}

.plxxxl {
  padding-left: 7rem !important;
}

.mlxxxl {
  margin-left: 7rem !important;
}

.paxxxxl {
  padding: 9rem !important;
}

.maxxxxl {
  margin: 9rem !important;
}

.pvxxxxl {
  padding-top: 9rem !important;
  padding-bottom: 9rem !important;
}

.mvxxxxl {
  margin-top: 9rem !important;
  margin-bottom: 9rem !important;
}

.phxxxxl {
  padding-left: 9rem !important;
  padding-right: 9rem !important;
}

.mhxxxxl {
  margin-left: 9rem !important;
  margin-right: 9rem !important;
}

.ptxxxxl {
  padding-top: 9rem !important;
}

.mtxxxxl {
  margin-top: 9rem !important;
}

.prxxxxl {
  padding-right: 9rem !important;
}

.mrxxxxl {
  margin-right: 9rem !important;
}

.pbxxxxl {
  padding-bottom: 9rem !important;
}

.mbxxxxl {
  margin-bottom: 9rem !important;
}

.plxxxxl {
  padding-left: 9rem !important;
}

.mlxxxxl {
  margin-left: 9rem !important;
}

/* ##### fontsize ##### */
/*    Examples: .fontsize-s .fontsize-m .fontsize-l */
.fontsize-xs {
  font-size: 1rem !important;
}
.fontsize-s {
  font-size: 1.25rem !important;
}
.fontsize-m {
  font-size: 1.5rem !important;
}
.fontsize-l {
  font-size: 2rem !important;
}
.fontsize-xl {
  font-size: 3rem !important;
}

/* ##### txt colours ##### (replaces old txtGrey txtPrimary etc.)*/
/*    Examples: .txt-primary .txt-secondary .txt-grey */
.txt-white {
  color: #fff !important;
}
.txt-black {
  color: #000 !important;
}
.txt-primary {
  color: #002E5D !important;
}
.txt-secondary {
  color: #495157 !important;
}
.txt-grey {
  color: #A2AAAD !important;
}
.txt-grey-dark {
  color: #495157 !important;
}
.txt-grey-light {
  color: #D0D3D4 !important;
}

/* ##### bg colours ##### (replaces old bgGrey bgDark etc.) */
/*    Examples: .bg-primary .bg-secondary .bg-dark .bg-light .bg-grey .bg-grey-dark .bg-grey-xdark */
.bg-white {
  background-color: #fff !important;
}
.bg-black {
  background-color: #000 !important;
}
.bg-dark {
  background-color: #495157 !important;
}
.bg-light {
  background-color: #D0D3D4 !important;
}
.bg-primary {
  background-color: #002E5D !important;
}
.bg-secondary {
  background-color: #495157 !important;
}
.bg-grey {
  background-color: #A2AAAD !important;
}
.bg-grey-dark {
  background-color: #495157 !important;
}
.bg-grey-light {
  background-color: #D0D3D4 !important;
}

.bgTransparent90 {
  background-color: rgba(255, 255, 255, 0.075) !important;
  position: relative;
}

/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Utility Classes - Misc */
/****************************************************************************************************/
.equalTopMargins > :first-child {
  margin-top: 1rem;
}

/* #endregion */
/****************************************************************************************************/
/*Filtered content*/
.pagination-page {
  color: #002E5D;
}
.pagination-page .selected {
  color: #ffffff;
  background-color: #940e14;
  padding: 4px;
  text-align: center;
  width: 30px;
  height: 30px;
  border-radius: 90px;
  display: inline-block;
  line-height: 100%;
}

#ClearFiltersWrapper {
  position: fixed;
  z-index: 10000;
  display: flex;
  align-content: center;
  align-items: center;
  justify-content: center;
  width: 45px;
  height: 45px;
  right: 5%;
  bottom: 10%;
  background: #002E5D;
  border: solid #fff 1px;
  border-radius: 40px;
  box-shadow: 5px 5px 15px 5px rgba(0, 0, 0, 0.2);
  color: #fff;
  opacity: 0.45;
  transition: all linear 0.15s;
  cursor: pointer;
}
#ClearFiltersWrapper span.horizontal-slash {
  position: absolute;
  transform: rotate(35deg);
  height: 3px;
  width: 100%;
  background: #fff;
}

#ClearFiltersWrapper:hover {
  opacity: 1;
}

.goToPageLbl {
  display: block;
  max-width: 100px;
  padding: 3px;
  border-radius: 5px;
  text-align: center;
  margin: 15px auto;
  position: relative;
  transition: all linear 0.15s;
}
.goToPageLbl select {
  display: block;
  position: absolute;
  left: 0;
  right: 0;
  z-index: 999;
  margin: 0 auto;
  height: auto;
}
.goToPageLbl .goToDropdown {
  height: 0px;
  max-width: 80px;
  margin: 0 auto;
  overflow-x: hidden;
  overflow-y: hidden;
}
.goToPageLbl .goToDropdown.active {
  height: 140px;
  border: solid #002E5D 1px;
  border-radius: 6px;
  overflow-y: auto;
}
.goToPageLbl li {
  margin-right: 3px;
}
.goToPageLbl li.selected {
  background: #D0D3D4;
}

.goToPageLbl:hover {
  color: #002E5D;
}

/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region PDF Generation (Printable Bios) */
/****************************************************************************************************/
#printModal_background {
  background: white !important;
}

#printModal {
  display: none;
  background: white !important;
}

.printModalWrapper #printModal {
  display: block;
}

#printModal {
  width: 36rem;
  background-color: white;
  border: 1px solid #D0D3D4;
  padding: 2rem 3rem;
  max-width: 80%;
}
#printModal .top p {
  font-style: italic;
}
#printModal .bottom {
  margin: 1.4rem 0 1.1rem;
}
#printModal .bottom .options ul li {
  display: flex;
  align-items: center;
  margin-bottom: 0.4em;
}
#printModal .label {
  font-family: "Mulish", sans-serif;
  font-weight: 400;
  text-transform: uppercase;
  letter-spacing: 0.35em;
  letter-spacing: 0.25em;
  font-size: 0.7rem;
  color: #002E5D;
  margin-top: 0;
}
#printModal h3 {
  color: #495157;
  margin-top: 0;
  margin-bottom: 0.6rem;
}
#printModal .button.close {
  inset: initial;
  top: 2.6rem;
  right: 2.6rem;
  margin: 0;
}
#printModal button[type=submit] {
  margin-left: auto;
  padding: 0.8em 2em 0.8em 1.6em;
}
#printModal button[type=submit] .icon, #printModal button[type=submit] svg {
  margin-right: 1rem;
  font-size: 1.5rem;
}
#printModal button[type=submit] .fa-file-download {
  display: none;
}
#printModal button[type=submit]:focus .fa-file-pdf, #printModal button[type=submit]:hover .fa-file-pdf {
  display: none;
}
#printModal button[type=submit]:focus .fa-file-download, #printModal button[type=submit]:hover .fa-file-download {
  display: inline-block;
}

@keyframes fadeToGreyscaleWhite {
  0% {
    filter: grayscale(0) brightness(1);
  }
  1% {
    filter: grayscale(1) brightness(1);
  }
  100% {
    filter: grayscale(1) brightness(200);
  }
}
html.popup_visible_printModal #wrapper > main {
  filter: blur(5px);
}

/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Kendo Navigation top-level widget overrides */
/****************************************************************************************************/
/* Kendo Treeview (shared, general treeview styles) */
/* remember - these styles will affect ANY kendo treeview. So if you're making heavy changes then you probably want to target your specific treeview */
.k-treeview {
  padding: 0;
  /*    overflow-y: auto;
  overflow-x: hidden;*/
}
.k-treeview .k-item {
  color: inherit;
  position: relative;
  padding: 0;
  font-size: 1rem;
  border: none;
}
.k-treeview .k-item .k-icon {
  right: 5%;
  position: absolute;
  z-index: 3;
  width: 3rem;
  aspect-ratio: 1;
}
.k-treeview .k-item .k-icon:before {
  color: #fff;
  content: " ";
  font-size: 1rem;
  background-size: 20px;
}
.k-treeview .k-link {
  color: inherit;
  width: 100%;
  font-size: inherit;
  padding: 0;
}
.k-treeview .k-link.k-state-hover, .k-treeview .k-link.k-state-active, .k-treeview .k-link.k-state-selected, .k-treeview .k-link.k-state-focused {
  background: none;
  box-shadow: none;
  text-decoration: none;
}
.k-treeview:focus:focus-visible .k-state-focused {
  outline: 2px solid #495157;
  outline-offset: 0;
}

/* #endregion */
/****************************************************************************************************/
/*.k-animation-container {
    display: block !important;
    overflow: visible !important;

    .k-menu-group {
        display: block !important;
        transform: translateY(0) !important;
    }
}*/
/****************************************************************************************************/
/* #region DEFAULT Menu */
/****************************************************************************************************/
.mainNavWrapper .mainNav:not(.k-menu) {
  display: none;
}
.mainNavWrapper :is(.mainNav, .k-menu) {
  display: flex;
  justify-content: flex-end;
  flex-wrap: wrap;
  height: 100%;
  align-items: flex-end;
  color: #002E5D;
  gap: 2px;
}
.mainNavWrapper :is(.mainNav, .k-menu) li.k-item.rootMenuItem {
  font-weight: 400;
  font-size: 16px;
  padding: 0;
  margin: 0;
  border: none;
}
.mainNavWrapper :is(.mainNav, .k-menu) li.k-item.rootMenuItem.k-state-focused {
  box-shadow: none;
}
.mainNavWrapper :is(.mainNav, .k-menu) li.k-item.rootMenuItem > a.k-link {
  display: inline-flex;
  text-decoration: none;
  font-size: 1rem;
  font-weight: normal;
  line-height: 1;
  color: white;
  padding: 16px 16px;
  white-space: break-spaces;
}
.mainNavWrapper :is(.mainNav, .k-menu) li.k-item.rootMenuItem > a.k-link span.k-icon {
  margin-left: 10px;
}
.mainNavWrapper :is(.mainNav, .k-menu) li.k-item.rootMenuItem > a.k-link span.k-icon:before {
  background-size: 15px;
}
.mainNavWrapper :is(.mainNav, .k-menu) li.k-item.rootMenuItem > a.k-link.selected, .mainNavWrapper :is(.mainNav, .k-menu) li.k-item.rootMenuItem > a.k-link.childSelected {
  border: 1px solid #D0D3D4;
}
.mainNavWrapper :is(.mainNav, .k-menu) li.k-item.rootMenuItem > a.k-link.selected span.k-icon:before, .mainNavWrapper :is(.mainNav, .k-menu) li.k-item.rootMenuItem > a.k-link.childSelected span.k-icon:before {
  background-image: url(/CFImages/Icons/chevron-down.svg);
}
.mainNavWrapper :is(.mainNav, .k-menu) li.k-item.rootMenuItem.k-state-hover > a.k-link, .mainNavWrapper :is(.mainNav, .k-menu) li.k-item.rootMenuItem.k-state-focus > a.k-link, .mainNavWrapper :is(.mainNav, .k-menu) li.k-item.rootMenuItem.k-state-active > a.k-link {
  background-color: none;
  color: var(--Grey-3);
  cursor: pointer;
}
.mainNavWrapper :is(.mainNav, .k-menu) li.k-item.rootMenuItem.k-state-hover > a.k-link span.k-icon:before, .mainNavWrapper :is(.mainNav, .k-menu) li.k-item.rootMenuItem.k-state-focus > a.k-link span.k-icon:before, .mainNavWrapper :is(.mainNav, .k-menu) li.k-item.rootMenuItem.k-state-active > a.k-link span.k-icon:before {
  background-image: url(/CFImages/Icons/chevron-down.svg);
}
.mainNavWrapper :is(.mainNav, .k-menu) .k-animation-container {
  background-color: transparent;
  padding-top: 10px;
  min-width: 400px;
}
.mainNavWrapper :is(.mainNav, .k-menu) .k-animation-container > .k-popup {
  box-shadow: none;
}
.mainNavWrapper :is(.mainNav, .k-menu) .k-animation-container ul.k-menu-group {
  border-radius: 3px;
  padding: 0;
  background-color: transparent;
  width: 100%;
}
.mainNavWrapper :is(.mainNav, .k-menu) .k-animation-container ul.k-menu-group li.k-item {
  padding: 0;
  margin: 0 0 2px 0;
  background-color: transparent;
}
.mainNavWrapper :is(.mainNav, .k-menu) .k-animation-container ul.k-menu-group li.k-item.k-state-focused {
  box-shadow: none;
}
.mainNavWrapper :is(.mainNav, .k-menu) .k-animation-container ul.k-menu-group li.k-item a.k-link {
  margin: 0;
  padding: 12px 24px;
  background-color: white;
  border-radius: 0;
  color: #002E5D;
  border: none;
  font-size: 16px;
  font-weight: 400;
  position: relative;
  display: flex;
  align-items: center;
  gap: 1rem;
  width: 100%;
  overflow: hidden;
}
.mainNavWrapper :is(.mainNav, .k-menu) .k-animation-container ul.k-menu-group li.k-item a.k-link:focus, .mainNavWrapper :is(.mainNav, .k-menu) .k-animation-container ul.k-menu-group li.k-item a.k-link:hover, .mainNavWrapper :is(.mainNav, .k-menu) .k-animation-container ul.k-menu-group li.k-item a.k-link:active {
  background-color: white;
  text-decoration: none;
  border: none;
}
.mainNavWrapper :is(.mainNav, .k-menu) .k-animation-container ul.k-menu-group li.k-item a.k-link span.k-icon {
  display: flex;
}
.mainNavWrapper :is(.mainNav, .k-menu) .k-animation-container ul.k-menu-group li.k-item.k-state-hover, .mainNavWrapper :is(.mainNav, .k-menu) .k-animation-container ul.k-menu-group li.k-item.k-state-focus, .mainNavWrapper :is(.mainNav, .k-menu) .k-animation-container ul.k-menu-group li.k-item.k-state-active {
  background-color: black;
}
.mainNavWrapper :is(.mainNav, .k-menu) .k-animation-container ul.k-menu-group li.k-item.k-state-hover a.k-link, .mainNavWrapper :is(.mainNav, .k-menu) .k-animation-container ul.k-menu-group li.k-item.k-state-focus a.k-link, .mainNavWrapper :is(.mainNav, .k-menu) .k-animation-container ul.k-menu-group li.k-item.k-state-active a.k-link {
  background: radial-gradient(60.81% 37.42% at 59.01% 43.89%, #002E5D 7.84%, rgba(0, 46, 93, 0.6) 100%);
  background-size: 100% 1000px;
  /* adjust height */
  background-repeat: no-repeat;
  color: white;
}

/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Hamburger */
/****************************************************************************************************/
button.hamburger {
  top: 31px;
  right: 0;
  width: 48px;
  height: 48px;
  border: none;
  padding: 12px;
  margin: 0;
  position: absolute;
  z-index: 500;
  transition: all 0.2s ease, font-size 0s linear, padding 0s linear, margin 0s linear, outline 0s linear;
  display: none;
  background-color: rgba(0, 46, 93, 0.8);
  border-radius: 0;
}
button.hamburger:hover {
  cursor: pointer;
  background-color: rgba(0, 0, 0, 0.8);
}
button.hamburger .hamburger-inner, button.hamburger .hamburger-inner:after, button.hamburger .hamburger-inner:before {
  position: absolute;
  width: 34px;
  height: 2px;
  transition-timing-function: ease;
  transition-duration: 0.15s;
  transition-property: transform;
  background-color: white;
}
button.hamburger .hamburger-inner {
  top: 50%;
  left: 50%;
  display: block;
  transform: translate(-50%, -50%) rotate(0deg);
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  transition-duration: 75ms;
}
button.hamburger .hamburger-inner:before {
  top: -10px;
  transition: top 75ms ease 0.12s, opacity 75ms ease;
}
button.hamburger .hamburger-inner:after {
  bottom: -10px;
}
button.hamburger .hamburger-inner:after, button.hamburger .hamburger-inner:before {
  display: block;
  content: "";
}
button.hamburger.open {
  z-index: 10000;
  background-color: rgba(255, 255, 255, 0.8);
}
button.hamburger.open .hamburger-inner {
  transition-delay: 0.12s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  transform: translate(-50%, -50%) rotate(45deg);
}
button.hamburger.open .hamburger-inner:before {
  top: 0;
  transition: top 75ms ease, opacity 75ms ease 0.12s, color 75ms ease-in;
  opacity: 0;
}
button.hamburger.open .hamburger-inner:after {
  bottom: 0;
  transition: bottom 75ms ease, transform 75ms cubic-bezier(0.215, 0.61, 0.355, 1) 0.12s;
  transform: rotate(-90deg);
}

/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Mobile Menu */
/****************************************************************************************************/
/* sometimes a duplicate of the header, sometimes just a container for the mobile nav */
.mobileHeader {
  position: fixed;
  z-index: 1000;
}
.mobileHeader .cmsContent {
  display: flex;
  flex-direction: row;
  margin-top: 2rem;
  justify-content: center;
  align-content: center;
  align-items: center;
}
.mobileHeader.withNavOpen {
  background-color: black;
  width: 100%;
  height: 100vh;
}

/* tweak other elements when the mobile nav is open */
body.withNavOpen #header .topHeader {
  z-index: 9999;
}

/* the mobile nav menu */
nav.mobileNav {
  top: 0;
  right: 0;
  width: 100%;
  max-width: 100%;
  height: -moz-fit-content;
  height: fit-content;
  position: fixed;
  padding: 150px 2rem 2rem 2rem;
  overflow-x: hidden;
  overflow-y: auto;
  min-height: 100vh;
  transform: translateX(100%);
  transition: all 0.2s ease, font-size 0s linear, padding 0s linear, margin 0s linear, outline 0s linear, visibility linear 0s;
  visibility: hidden;
  background: radial-gradient(60.81% 37.42% at 59.01% 43.89%, #002E5D 7.84%, rgba(0, 46, 93, 0.6) 100%);
  background-size: 100% 1000px;
  /* adjust height */
  background-repeat: no-repeat;
}
nav.mobileNav.open {
  transform: translateX(0%);
  visibility: visible;
}
nav.mobileNav .k-treeview {
  color: white;
  height: 100%;
}
nav.mobileNav .k-treeview .k-link {
  white-space: break-spaces;
}
nav.mobileNav .k-treeview .k-link:focus:focus-visible {
  background-color: rgba(255, 255, 255, 0.1);
  color: white;
}
nav.mobileNav .k-treeview .k-link:hover {
  background-color: rgba(255, 255, 255, 0.1);
  color: white;
}
nav.mobileNav .k-treeview .k-link:active {
  background-color: rgba(255, 255, 255, 0.1);
  color: white;
}
nav.mobileNav .k-treeview .k-link.k-state-selected {
  background-color: rgba(255, 255, 255, 0.1);
  color: white;
}

/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Simple Side Navigation (based on NavigationView.CustomUL.cshtml inside the sideContent  */
/****************************************************************************************************/
.twoColumnLayout .sideContent .navCustomUl ul.reset {
  list-style: none;
  margin: 0 0 2rem 0;
  padding: 0;
}
.twoColumnLayout .sideContent .navCustomUl ul.reset li {
  position: relative;
  width: 100%;
  margin: 0;
  padding: 0;
  transition: all 0.2s ease, font-size 0s linear, padding 0s linear, margin 0s linear, outline 0s linear;
  border: none;
  /* ROOT + SUBMENU items: anchor fills the li */
  /* SUBMENU */
}
.twoColumnLayout .sideContent .navCustomUl ul.reset li > a {
  position: relative;
  display: flex;
  flex-wrap: nowrap;
  width: 100%;
  gap: 1rem;
  justify-content: space-between;
  align-content: center;
  align-items: center;
  font-size: 1.3rem;
  letter-spacing: -0.52px;
  text-decoration: none;
  word-break: break-word;
  -webkit-hyphens: auto;
          hyphens: auto;
  padding: 20px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.4);
  /* hover / keyboard focus for THIS anchor only */
}
.twoColumnLayout .sideContent .navCustomUl ul.reset li > a:after {
  content: "";
  display: flex;
  padding: 20px;
  aspect-ratio: 1;
  justify-content: center;
  align-items: center;
  border-radius: 1px;
  background-color: rgba(255, 255, 255, 0.2);
  z-index: 0;
}
.twoColumnLayout .sideContent .navCustomUl ul.reset li > a:before {
  content: "";
  position: absolute;
  top: 50%;
  right: 28px;
  width: 20px;
  height: 100%;
  transform: translatey(-50%);
  background-image: url(/CFImages/Icons/arrow-right.svg);
  background-size: 20px;
  background-repeat: no-repeat;
  background-position: center;
  transition: transform 0.35s ease;
  opacity: 0.7;
  z-index: 1;
}
.twoColumnLayout .sideContent .navCustomUl ul.reset li > a:hover, .twoColumnLayout .sideContent .navCustomUl ul.reset li > a:focus-visible {
  color: white;
  background: rgba(255, 255, 255, 0.05);
  border-bottom: 1px solid white;
}
.twoColumnLayout .sideContent .navCustomUl ul.reset li > a:hover::before, .twoColumnLayout .sideContent .navCustomUl ul.reset li > a:focus-visible::before {
  transform: translateY(-50%) rotate(-45deg);
  opacity: 1;
}
.twoColumnLayout .sideContent .navCustomUl ul.reset li > a:hover::after, .twoColumnLayout .sideContent .navCustomUl ul.reset li > a:focus-visible::after {
  background-color: rgba(255, 255, 255, 0.4);
}
.twoColumnLayout .sideContent .navCustomUl ul.reset li.selected > a,
.twoColumnLayout .sideContent .navCustomUl ul.reset li > a.selected {
  color: white;
  background: rgba(255, 255, 255, 0.05);
  border-bottom: 1px solid white;
}
.twoColumnLayout .sideContent .navCustomUl ul.reset li.selected > a::before,
.twoColumnLayout .sideContent .navCustomUl ul.reset li > a.selected::before {
  opacity: 1;
}
.twoColumnLayout .sideContent .navCustomUl ul.reset li.selected > a::after,
.twoColumnLayout .sideContent .navCustomUl ul.reset li > a.selected::after {
  background-color: rgba(255, 255, 255, 0.4);
}
.twoColumnLayout .sideContent .navCustomUl ul.reset li ul.subMenu {
  list-style: none;
  margin: 0;
  padding: 0;
}
.twoColumnLayout .sideContent .navCustomUl ul.reset li ul.subMenu li > a {
  display: block;
  width: 100%;
  padding: 24px 24px 24px 48px;
  color: #002E5D;
  background-color: white;
  transition: color all 0.2s ease, font-size 0s linear, padding 0s linear, margin 0s linear, outline 0s linear, background-color all 0.2s ease, font-size 0s linear, padding 0s linear, margin 0s linear, outline 0s linear;
  position: relative;
}
.twoColumnLayout .sideContent .navCustomUl ul.reset li ul.subMenu li > a:hover, .twoColumnLayout .sideContent .navCustomUl ul.reset li ul.subMenu li > a:focus-visible {
  color: #002E5D;
  background-color: #495157;
}
.twoColumnLayout .sideContent .navCustomUl ul.reset li ul.subMenu li > a.selected {
  background-color: #495157;
  color: #002E5D;
}
.twoColumnLayout .sideContent .navCustomUl ul.reset li ul.subMenu li > a.selected::after {
  opacity: 1;
  transform: translateY(-50%) translateX(0);
}

/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Kendo TreeView inside sideContent */
/****************************************************************************************************/
.k-treeview ul.mainTreeView {
  border-top: 1px solid #495157;
  border-bottom: 1px solid #495157;
  padding: 0;
}
.k-treeview ul.mainTreeView li.k-item {
  /* above the link */
  /* link styles */
  /* These are any nested groups */
  /* The selected li */
  /* This is the expanded li item */
  /* expand collapse icons */
}
.k-treeview ul.mainTreeView li.k-item .k-top, .k-treeview ul.mainTreeView li.k-item .k-mid, .k-treeview ul.mainTreeView li.k-item .k-bot {
  padding: 2px;
}
.k-treeview ul.mainTreeView li.k-item a.k-link {
  color: #495157;
  font-size: 1rem;
  padding: 0.5rem 2rem 0.5rem 2rem;
  border: 2px solid transparent;
}
.k-treeview ul.mainTreeView li.k-item a.k-link:focus:focus-visible {
  border: 2px rgba(73, 81, 87, 0.5) solid;
}
.k-treeview ul.mainTreeView li.k-item a.k-link:hover {
  border: 2px rgba(73, 81, 87, 0.5) solid;
}
.k-treeview ul.mainTreeView li.k-item ul.k-group {
  background-color: white;
}
.k-treeview ul.mainTreeView li.k-item ul.k-group li.k-item {
  /* Level 2 Nest */
}
.k-treeview ul.mainTreeView li.k-item ul.k-group li.k-item a.k-link {
  padding-left: 3rem;
  font-size: 0.9rem;
}
.k-treeview ul.mainTreeView li.k-item ul.k-group li.k-item a.k-link:after {
  width: 8px;
  height: 8px;
}
.k-treeview ul.mainTreeView li.k-item ul.k-group li.k-item ul.k-group li.k-item a.k-link {
  padding-left: 4rem;
}
.k-treeview ul.mainTreeView li.k-item.selected {
  background-color: #495157 !important;
  /* link styles (both the li and a have class of selected on them) */
}
.k-treeview ul.mainTreeView li.k-item.selected a.k-link.selected {
  color: white !important;
}
.k-treeview ul.mainTreeView li.k-item[aria-expanded=true] {
  background-color: #D0D3D4;
}
.k-treeview ul.mainTreeView li.k-item span.k-icon {
  right: initial;
  left: 1.5rem;
}
.k-treeview ul.mainTreeView li.k-item:focus:focus-visible {
  background-color: #D0D3D4;
}
.k-treeview ul.mainTreeView li.k-item:hover {
  background-color: #D0D3D4;
}

/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Sitemap */
/****************************************************************************************************/
ul.siteMapComplete {
  padding-left: 2em;
}
ul.siteMapComplete li {
  padding: 0.35em 0 0 0.25em;
  list-style-type: disc;
  text-transform: none;
}
ul.siteMapComplete li.rootMenuItem {
  list-style-type: square;
  text-transform: uppercase;
}
ul.siteMapComplete li.rootMenuItem ul {
  padding-left: 2em;
}
ul.siteMapComplete li.rootMenuItem ul.level2 {
  padding-left: 4em;
}
ul.siteMapComplete li.rootMenuItem ul.level3 {
  padding-left: 6em;
}
ul.siteMapComplete li.rootMenuItem ul.level4 {
  padding-left: 8em;
}
ul.siteMapComplete li.reset {
  padding: 0;
  margin: 0;
  list-style-type: none;
}
ul.siteMapComplete li a.toggleAction.button {
  margin: 0.5em 0 0 0;
}
ul.siteMapComplete li a.toggleAction.withPlusMinus .openIcon {
  display: inline-block;
}
ul.siteMapComplete li a.toggleAction.withPlusMinus .closeIcon {
  display: none;
}
ul.siteMapComplete li.active a.toggleAction.withPlusMinus .openIcon {
  display: none;
}
ul.siteMapComplete li.active a.toggleAction.withPlusMinus .closeIcon {
  display: inline-block;
}
ul.siteMapComplete div.toggleContent {
  display: none;
}
ul.siteMapComplete div.toggleContent.active {
  display: block;
}

/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Tabs / Tabstrip */
/****************************************************************************************************/
.tabstrip {
  display: none;
}

.tabstrip.k-widget {
  display: block;
}
.tabstrip.k-widget .button .k-flat {
  display: none;
}
.tabstrip.k-widget.k-tabstrip {
  background: none;
  border: none;
  font-size: inherit;
  padding-top: 1rem;
}
.tabstrip.k-widget.k-tabstrip .k-tabstrip-items {
  border: none;
  background: none;
  text-transform: uppercase;
}
.tabstrip.k-widget.k-tabstrip .k-tabstrip-items .k-item {
  border: none;
  background: none;
  border-radius: 0;
}
.tabstrip.k-widget.k-tabstrip .k-tabstrip-items .k-item .k-loading {
  border: none;
}
.tabstrip.k-widget.k-tabstrip .k-tabstrip-items .k-item .k-link {
  color: #495157;
  padding: 0 2rem 0;
  font-size: 1.4rem;
  background: none;
  text-transform: none;
  border-right: solid 1px #495157;
}
.tabstrip.k-widget.k-tabstrip .k-tabstrip-items .k-item.k-first .k-link {
  padding-left: 0;
}
.tabstrip.k-widget.k-tabstrip .k-tabstrip-items .k-item.k-last .k-link {
  border: none;
}
.tabstrip.k-widget.k-tabstrip .k-tabstrip-items .k-item.k-state-active .k-link {
  color: #fff;
}
.tabstrip.k-widget.k-tabstrip .k-tabstrip-items .k-item.k-state-hover .k-link {
  opacity: 0.8;
}
.tabstrip.k-widget.k-tabstrip .k-tabstrip-items .k-item:active .k-link {
  color: #fff;
}
.tabstrip.k-widget.k-tabstrip:focus {
  box-shadow: none;
}
.tabstrip.k-widget.k-tabstrip:focus:focus-visible {
  outline: 2px solid #495157;
  outline-color: #D0D3D4;
  outline-style: dashed;
}
.tabstrip.k-widget.k-tabstrip:focus:focus-visible .k-item.k-state-active {
  outline: 2px solid #495157;
}
.tabstrip.k-widget.k-tabstrip .k-content {
  border: none;
  padding: 0;
  background-color: transparent;
  overflow: hidden;
}
.tabstrip.k-widget.k-tabstrip .k-content.k-state-active {
  background-color: transparent;
}
.tabstrip.k-widget.k-tabstrip .k-content:focus {
  outline: none;
}
.tabstrip.k-widget.k-tabstrip .k-content:focus:focus-visible {
  outline: 2px solid #495157;
  outline-offset: 0;
}

/* #endregion */
/****************************************************************************************************/
/* #### For variable adjustments #### */
@media (max-width: 1299px) {
  :root {
    --container-padding: calc(3rem + (var(--scrollbar-width) * 0.5));
  }
}
@media (max-width: 1024px) {
  :root {
    --container-padding: calc(2rem + (var(--scrollbar-width) * 0.5));
  }
}
@media (max-width: 767px) {
  :root {
    --container-padding: calc(25px + (var(--scrollbar-width) * 0.5));
  }
}
@media (max-width: 767px) {
  :root {
    --layoutPadding: 2rem;
    --layoutPaddingSmall: 1rem;
    --container-padding: calc(1rem + (var(--scrollbar-width) * 0.5));
  }
}
/* Large Desktop (switch between simple and mobile nav) */
/* Small Desktop (switch between simple and mobile nav) */
@media only screen and (max-width: 1150px) {
  button.hamburger {
    display: block !important;
    right: var(--container-padding);
  }

  #header .topHeader .topHeaderGrid .topHeaderGridRight .menu {
    display: none !important;
  }
  #header .topHeader .topHeaderGrid .topHeaderGridRight .searchIcon {
    padding-right: 58px;
  }

  .k-treeview .k-item {
    font-size: 1.6rem;
  }
}
/* Tablet */
@media only screen and (max-width: 1024px) {
  main .bd .twoColumnLayout {
    flex-direction: column-reverse;
  }
  main .bd .twoColumnLayout .mainContent, main .bd .twoColumnLayout .sideContent {
    width: 100%;
    padding: 1rem 0;
  }

  .contactPage .mapOuter {
    display: none;
  }
}
/* Mobile Only */
@media only screen and (max-width: 767px) {
  blockquote {
    padding: 64px 96px 64px 64px;
  }
  blockquote:before {
    right: 36px;
  }

  .detailView.teammember .bioTopContent .bioPhotoWrapper {
    /* added to fix max size for bio photo */
    justify-content: center;
    transform: none;
  }
  .detailView.teammember .bioTopContent .bioPhotoWrapper .imgWrapper {
    width: 100%;
  }
  .detailView.teammember .bioTopContent .bioContact {
    position: relative;
    left: initial;
    top: initial;
    max-width: 100%;
    padding: 1rem 2rem 2rem 2rem !important;
  }
}
/* XS Mobile Only */
@media only screen and (max-width: 500px) {
  #header .topHeader .topHeaderGrid .topHeaderGridRight .contactAndSocial .cmsContent .socialLinks li:last-of-type {
    display: none;
  }
  #header .topHeader .topHeaderGrid .topHeaderGridRight .searchIcon {
    padding-right: 58px;
  }
}
@media only screen and (max-width: 450px) {
  #header .topHeader .topHeaderGrid .topHeaderGridRight .contactAndSocial .cmsContent .socialLinks {
    display: none;
  }
}
/* ### Bullets */
/* XXS Mobile (min width) */
/* XS Mobile (min width) */
/* XS Mobile (max width) */
/* Mobile (min width) */
/* Mobile (max width) */
/* Mobile (max width) */
/* Tablets (min width) */
/* Tablets (max width) */
/* Small Desktop  (min width) */
/* Small Desktop (max width) */
/* Large Desktop (min width) */
/* Large Desktop (max width) */
/* Extra-Large Desktop (min width) */
/* Extra-Large Desktop (max width) */
/* High Definition (HD) - THIS IS THE LEVEL OF OUR DEFAULT STYLES */
/* Containers - PLEASE USE REMS */
/* Container Padding */
/* Whitespace */
/* fontsize */
/* Base unit used for spacing gutters */
/* Buttons */
@media print {
  .noPrint {
    display: none;
  }

  .printOnly {
    display: block;
    height: auto;
    width: auto;
  }

  a[href]:after {
    content: none !important;
  }

  /* Hide these elements */
  .topHeader {
    display: none !important;
  }

  .mobile,
.topHeader,
header nav,
header .search,
footer,
video, audio, object, embed {
    display: none !important;
    height: 0 !important;
  }

  header .header.stuck {
    position: relative !important;
  }

  img {
    max-width: 100%;
  }

  @page {
    margin: 0.5cm;
  }
  body {
    line-height: 1.5;
  }

  h1 {
    font-size: 21pt;
  }

  h2 {
    font-size: 15pt;
    margin-top: 25px;
  }

  h3 {
    font-size: 13pt;
    margin-top: 20px;
  }

  p a {
    color: black;
    word-wrap: break-word;
  }
  p a:after {
    content: " " attr(href) ")";
  }
  p a[href^="#"]:after {
    display: none;
  }
  p a[href^="http://"]:after, p a a[href^="https://"]:after {
    content: " (" attr(href) ")";
  }

  .pageTopper {
    min-height: 0;
  }
  .pageTopper .topperImage {
    display: none;
  }

  .resources .innerContent .itemImage {
    display: none;
  }

  .filteredContent .filtersContainer, .filteredContent #loadingIndicator, .filteredContent #loadMoreContainer {
    display: none !important;
  }

  .viewMoreOuter {
    display: none;
  }

  .teammembers .teammember .bgImgWrapper {
    display: none;
  }
}
/* ####### THe actual Print Styles for the PDFS */
html:has(> .printWrapper) {
  background: white !important;
}

body:has(> .printWrapper) {
  background: white !important;
}

.printWrapper {
  background: white;
}
.printWrapper .bgTransparent90 {
  background-color: var(--Grey-1) !important;
}
.printWrapper .wrapper > * {
  opacity: 1;
  transform: none;
  transition: initial;
}
.printWrapper .wrapper.inViewport > * {
  opacity: 1;
  transform: none;
  transition: initial;
}
.printWrapper .wrapper.inViewport h2:after {
  width: initial;
}
.printWrapper .container {
  width: 100%;
  padding: 0;
  margin: 0;
  max-width: 100% !important;
}
.printWrapper .printHeader .printHeaderGrid .logo img {
  display: block;
  width: 120px;
  margin: 0;
  padding: 8px 0 16px 0;
}
.printWrapper .baseFont {
  font-family: "Mulish", sans-serif;
}
.printWrapper h2 {
  break-inside: avoid;
}
.printWrapper h2::after {
  content: "";
  display: block;
  height: 120px;
  margin-bottom: -120px;
}
.printWrapper h2.superMargin::after {
  content: "";
  display: block;
  height: 500px;
  margin-bottom: -500px;
}
.printWrapper h2.mediumMargin::after {
  content: "";
  display: block;
  height: 300px;
  margin-bottom: -300px;
}
.printWrapper .logo {
  display: block;
  width: 100%;
  margin: 0;
  padding: 0 0 1rem 0;
}
.printWrapper .detailView.teammember {
  display: block;
  position: relative;
  padding-top: 0 !important;
  font-size: 14px;
  /* Expertise*/
}
.printWrapper .detailView.teammember h2 {
  font-size: 22px;
  padding-bottom: 10px;
  margin-top: 20px;
}
.printWrapper .detailView.teammember h3 {
  font-size: 18px;
  padding-bottom: 10px;
}
.printWrapper .detailView.teammember .largerText {
  font-size: 18px;
}
.printWrapper .detailView.teammember .gradientOuter {
  background-color: black;
}
.printWrapper .detailView.teammember .gradientOuter .gradient {
  background: radial-gradient(60.81% 37.42% at 59.01% 43.89%, #002E5D 7.84%, rgba(0, 46, 93, 0.6) 100%);
  background-size: 100% 400px;
  /* adjust height */
  background-repeat: no-repeat;
}
.printWrapper .detailView.teammember .bioTopContent {
  padding: 0;
}
.printWrapper .detailView.teammember .bioTopContent:before {
  background-size: 110%;
  background-position: -200px top;
}
.printWrapper .detailView.teammember .bioTopContent table td {
  padding: 0;
  vertical-align: top;
}
.printWrapper .detailView.teammember .bioTopContent table.topGrid .bioContact {
  padding: 2rem;
  width: 100%;
}
.printWrapper .detailView.teammember .bioTopContent table.topGrid .bioContact a {
  border-bottom: none;
}
.printWrapper .detailView.teammember .bioTopContent table.topGrid .bioContact .nameDesignationsPronunciation h1 {
  font-size: 1.5rem;
  background-size: 20px 20px;
  padding: 0px 20px 0 0;
}
.printWrapper .detailView.teammember .bioTopContent table.topGrid .bioContact .position {
  font-size: 1rem;
}
.printWrapper .detailView.teammember .bioTopContent table.topGrid .bioContact .contactInfo {
  font-size: 0.8rem;
  margin: 0.75rem 0 0.75rem 0;
}
.printWrapper .detailView.teammember .bioTopContent table.topGrid .bioContact .contactInfo .contactItemWrapper .prefixLabel {
  font-size: 0.8rem;
}
.printWrapper .detailView.teammember .personalQuote blockquote {
  padding: 36px 48px 36px 36px;
  font-size: 18px;
}
.printWrapper .detailView.teammember .personalQuote blockquote p {
  font-size: 18px;
}
.printWrapper .detailView.teammember .personalQuote blockquote:before {
  content: "";
  position: absolute;
  right: 36px;
  top: 36px;
  height: calc(100% - 64px);
  border-right: 8px solid rgba(255, 255, 255, 0.2);
}
.printWrapper .detailView.teammember .bioGrid {
  margin-top: 20px;
}
.printWrapper .detailView.teammember .bioGrid .mainContent {
  padding-right: 1rem;
}
.printWrapper .detailView.teammember .bioGrid .mainContent .cmsContent:first-child {
  margin-top: 0;
  padding-top: 0;
}
.printWrapper .detailView.teammember .bioGrid .sideContent {
  padding-left: 0.5rem;
}
.printWrapper .detailView.teammember .bioGrid .sideContent h3:first-of-type {
  margin-top: 0;
  padding-top: 0;
}
.printWrapper .detailView.teammember .bioGrid .sideContent h3 {
  padding-bottom: 0;
  font-size: 18px;
}
.printWrapper .detailView.teammember .listView.related.expertises {
  --card-width: 300px;
  --card-gap: 8px;
}
.printWrapper .detailView.teammember .cardView.expertise {
  border-bottom: 1px solid rgba(0, 46, 93, 0.2);
  padding: 12px 20px;
  position: relative;
}
.printWrapper .detailView.teammember .cardView.expertise:before {
  content: none;
}
.printWrapper .detailView.teammember .cardView.expertise:after {
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  height: 40px;
  width: 40px;
  background-position: bottom right;
  background-image: url(/CFImages/Icons/nested-bullet-primary.svg);
  background-size: 30px 30px;
  background-repeat: no-repeat;
  opacity: 0.2;
}
.printWrapper .detailView.teammember .cardView.expertise h3 {
  font-size: 14px;
  text-align: left;
  padding: 0;
  margin: 0;
  font-weight: normal;
  line-height: 1.4;
}
.printWrapper .detailView.teammember .cmsContent.recognitions ul {
  --card-width: 300px;
  --card-gap: 8px;
}
.printWrapper .detailView.teammember .cmsContent.recognitions ul li {
  position: relative;
  padding: 20px 20px;
  border-bottom: 1px solid rgba(0, 46, 93, 0.2);
  font-size: 14px;
  text-align: left;
}
.printWrapper .detailView.teammember .cmsContent.recognitions ul li:before {
  content: none;
}
.printWrapper .detailView.teammember .cmsContent.recognitions ul li:after {
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  height: 40px;
  width: 40px;
  background-position: bottom right;
  background-image: url(/CFImages/Icons/nested-bullet-primary.svg);
  background-size: 30px 30px;
  background-repeat: no-repeat;
  opacity: 0.2;
}
.printWrapper .detailView.teammember .cmsContent.insightsStatic ul {
  --card-gap: 8px;
}
.printWrapper .detailView.teammember .cmsContent.insightsStatic ul li {
  position: relative;
  padding: 15px 20px;
  border-bottom: 1px solid rgba(0, 46, 93, 0.2);
  font-size: 14px;
  width: 100%;
}
.printWrapper .detailView.teammember .cmsContent.insightsStatic ul li:before {
  content: none;
}
.printWrapper .detailView.teammember .cmsContent.insightsStatic ul li:after {
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  height: 40px;
  width: 40px;
  background-position: bottom right;
  background-image: url(/CFImages/Icons/nested-bullet-primary.svg);
  background-size: 30px 30px;
  background-repeat: no-repeat;
  opacity: 0.2;
}

/*# sourceMappingURL=main.css.map*/