/*!*************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./.yarn/__virtual__/css-loader-virtual-bf286824a5/0/cache/css-loader-npm-6.7.3-63aa933400-473cc32b6c.zip/node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./.yarn/__virtual__/postcss-loader-virtual-1b7e30ecb8/0/cache/postcss-loader-npm-7.3.0-788d8ed604-f09fe68bde.zip/node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[1].use[2]!./.yarn/cache/resolve-url-loader-npm-5.0.0-9b441067c9-6d483733a4.zip/node_modules/resolve-url-loader/index.js??ruleSet[1].rules[1].use[3]!./.yarn/__virtual__/sass-loader-virtual-51a5632b47/0/cache/sass-loader-npm-13.2.2-b5bbed2dce-0368e4eaa4.zip/node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[1].use[4]!./.yarn/cache/@splidejs-splide-npm-4.1.4-574032679c-919f6e1e5d.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/0/cache/css-loader-npm-6.7.3-63aa933400-473cc32b6c.zip/node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./.yarn/__virtual__/postcss-loader-virtual-1b7e30ecb8/0/cache/postcss-loader-npm-7.3.0-788d8ed604-f09fe68bde.zip/node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[1].use[2]!./.yarn/cache/resolve-url-loader-npm-5.0.0-9b441067c9-6d483733a4.zip/node_modules/resolve-url-loader/index.js??ruleSet[1].rules[1].use[3]!./.yarn/__virtual__/sass-loader-virtual-51a5632b47/0/cache/sass-loader-npm-13.2.2-b5bbed2dce-0368e4eaa4.zip/node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[1].use[4]!./.yarn/cache/@splidejs-splide-npm-4.1.4-574032679c-919f6e1e5d.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/0/cache/css-loader-npm-6.7.3-63aa933400-473cc32b6c.zip/node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./.yarn/__virtual__/postcss-loader-virtual-1b7e30ecb8/0/cache/postcss-loader-npm-7.3.0-788d8ed604-f09fe68bde.zip/node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[1].use[2]!./.yarn/cache/resolve-url-loader-npm-5.0.0-9b441067c9-6d483733a4.zip/node_modules/resolve-url-loader/index.js??ruleSet[1].rules[1].use[3]!./.yarn/__virtual__/sass-loader-virtual-51a5632b47/0/cache/sass-loader-npm-13.2.2-b5bbed2dce-0368e4eaa4.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 */
/* Subheader */
/* Base unit used for spacing gutters */
/* Buttons */
/****************************************************************************************************/
/* #region Buttons */
/****************************************************************************************************/
/*
    Button styles were moved from placeholders to here to reduce generated CSS selector length.
    Ideally you should always either use a real <button> or add the .button class(es) where you needed,
    BUT if you really need it (perhaps to override some 3rd-party styles) you can always do this:

    #specific_selector .my-custom-button {
        @include button; // default styles
        // or
        @include button("secondary", true); // predefined styles WITH base button styles
    }

    You can also "extend" button classes defined in global.scss if you need to (similar to the old way).
    This keeps the css nice and light AS LONG as it's not super-nested beneath some comma-separated parents

    #specific_selector .my-custom-button {
        @extend .button.secondary;
    }
*/
/* #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);
*/
/****************************************************************************************************/
/* #region Font Styless & Fluid Type */
/****************************************************************************************************/
/* Font Size Clamp */
/* #endregion */
/****************************************************************************************************/
/* #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 */
/****************************************************************************************************/
/* #######  FIELD LAW SPECIFIC ######### */
/* 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;
}

.borderBottomShort {
  position: relative;
}
.borderBottomShort:after {
  content: " ";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 3rem;
  height: 1px;
  background-color: #40395F;
}

.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 */
/* Subheader */
/* Base unit used for spacing gutters */
/* Buttons */
/* these need to be here for intellisense and go-to-definition to work */
/****************************************************************************************************/
/* #region Document */
/****************************************************************************************************/
::selection {
  background: #8D7249;
  color: white;
}

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

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

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

:-ms-input-placeholder {
  color: #8D7249;
  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;
  --polygon-size: 60px;
  --polygon-size-l: 120px;
}

html {
  min-height: auto;
  font-style: normal;
  font-family: "Roboto", sans-serif;
  font-weight: 400;
  line-height: 1.5;
  font-size: clamp(16px, 8.5454545455px + 0.0072727273 * 100vw, 18px);
  scroll-behavior: smooth;
}

body {
  min-height: 100vh;
  /* overflow-x: hidden; // stops mobile menu from adding scrollbars
  overflow-y: auto;*/
  color: black;
  font-style: normal;
  font-family: "Roboto", sans-serif;
  font-weight: 400;
  background-color: #F4F4F2;
}

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

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

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

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

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

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

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

/* #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 {
  margin: 1rem auto 2rem;
  padding: 1rem 0 1rem 2rem;
  position: relative;
  border-left: solid 2px #8D7249;
  color: #8D7249;
  text-align: left;
  font-size: 1.1rem;
  font-weight: 700;
}
blockquote p {
  color: inherit;
  font-weight: 700;
  font-style: normal;
}
blockquote > :last-child {
  margin-bottom: 0;
}
blockquote cite {
  font-style: italic;
  font-family: "Montserrat", sans-serif;
}
a {
  color: #8D7249;
  transition: all 0.2s ease, font-size 0s linear, padding 0s linear, margin 0s linear, outline 0s linear;
  text-decoration: none;
}

a:hover {
  color: #8D7249;
  text-decoration: underline;
}

a:active {
  color: #40395F;
  text-decoration: none;
}

hr {
  border: none;
  border-top: 2px solid #E6E6E6;
  position: relative;
  height: 1px;
  margin: 2em 0;
}

hr::before,
hr::after {
  content: "";
  position: absolute;
  top: -7px;
  /* Move triangles upward onto the line */
  width: 0;
  height: 0;
  border-left: 6px solid transparent;
  border-right: 6px solid transparent;
  border-bottom: 11px solid #000;
}

hr::before {
  left: 50%;
  transform: translateX(-12px);
  /* Move left triangle */
  border-bottom: 11px solid #63569F;
}

hr::after {
  left: 50%;
  transform: translateX(2px);
  /* Move right triangle */
}

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 */
/****************************************************************************************************/
span.seperator {
  padding: 0 7px;
  color: #A3A3A3;
}

/* Headings */
h1, h2, h3, h4, h5, h6, .h, .cmsContent.highlightFirstElement > :first-child {
  font-style: normal;
  font-family: "Montserrat", sans-serif;
  font-weight: 700;
  line-height: 1.2;
  color: #40395F;
  margin: 1.4rem 0 1.38rem;
  padding: 0;
  display: block;
  text-transform: uppercase;
}
h1.centered, h2.centered, h3.centered, h4.centered, h5.centered, h6.centered, .h.centered, .cmsContent.highlightFirstElement > .centered:first-child {
  text-align: center;
}

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

h1 {
  font-size: 2.488rem;
}
@media only screen and (max-width: 500px) {
  h1 {
    font-size: 1.8rem;
  }
}

h2 {
  font-size: 1.802rem;
}

h3 {
  font-size: 1.424rem;
}
h3 a {
  color: #40395F;
}

h4 {
  font-size: 1.266rem;
}

h5 {
  font-size: 1.125rem;
}

h6 {
  font-size: 1rem;
}

/* fake headings (turn any element into a heading, basically). These need to match the above. */
.h1 {
  color: #40395F !important;
  font-size: 2.488rem !important;
}

.h2 {
  font-size: 1.602rem !important;
}

.h3, .cmsContent.highlightFirstElement > :first-child {
  font-size: 1.424rem !important;
}

.h4 {
  font-size: 1.266rem !important;
}

.h5 {
  font-size: 1.125rem !important;
}

.h6 {
  font-size: 1rem !important;
}

/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Buttons */
/****************************************************************************************************/
:is(.button, button),
.cmsContent :is(.button, button) {
  background: transparent;
  color: #40395F;
  border-radius: 50vh;
  display: inline-block;
  padding: 0.75rem 1.25rem;
  justify-content: center;
  align-items: center;
  /*gap: 0.625rem;*/
  gap: 0.8rem;
  transition: all 0.2s ease, font-size 0s linear, padding 0s linear, margin 0s linear, outline 0s linear;
  font-size: 0.9rem;
  border: solid 1px #40395F;
  cursor: pointer;
  margin-top: 1.4em;
}
:is(.button, button):hover, :is(.button, button):focus,
.cmsContent :is(.button, button):hover,
.cmsContent :is(.button, button):focus {
  color: #fff;
  background: #8D7249;
  text-decoration: none;
}
:is(.button, button):active,
.cmsContent :is(.button, button):active {
  color: white;
  background: #8D7249;
  text-decoration: none;
}
:is(.button, button):active:after,
.cmsContent :is(.button, button):active:after {
  filter: brightness(0) invert(1);
}
:is(.button, button).arrow:after,
.cmsContent :is(.button, button).arrow:after {
  content: " ";
  width: 1em;
  height: 1em;
  display: inline-block;
  transition: all 0.2s ease, font-size 0s linear, padding 0s linear, margin 0s linear, outline 0s linear;
  background: url(/CFImages/Icons/arrow-right.svg) no-repeat center;
  background-size: 100% auto;
}
:is(.button, button).transparent,
.cmsContent :is(.button, button).transparent {
  color: white;
  background: transparent;
}
:is(.button, button).transparent svg path,
.cmsContent :is(.button, button).transparent svg path {
  fill: currentColor;
}
:is(.button, button).transparent:hover, :is(.button, button).transparent:focus,
.cmsContent :is(.button, button).transparent:hover,
.cmsContent :is(.button, button).transparent:focus {
  color: #8D7249;
  background: transparent;
}
:is(.button, button).transparent:active,
.cmsContent :is(.button, button).transparent:active {
  color: #6b5738;
  background: transparent;
}
.light :is(.button, button),
.light .cmsContent :is(.button, button) {
  background: #2b263f;
  color: white;
}
.light :is(.button, button):after,
.light .cmsContent :is(.button, button):after {
  filter: brightness(0) invert(1);
}
.light :is(.button, button):hover, .light :is(.button, button):focus,
.light .cmsContent :is(.button, button):hover,
.light .cmsContent :is(.button, button):focus {
  color: #2b263f;
  background: white;
  text-decoration: none;
}
.light :is(.button, button):hover:after, .light :is(.button, button):focus:after,
.light .cmsContent :is(.button, button):hover:after,
.light .cmsContent :is(.button, button):focus:after {
  filter: none;
}
.light :is(.button, button):active,
.light .cmsContent :is(.button, button):active {
  color: white;
  background: #8D7249;
}
.light :is(.button, button):active:after,
.light .cmsContent :is(.button, button):active:after {
  filter: brightness(0) invert(1);
}

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

/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Images */
/****************************************************************************************************/
img {
  width: auto;
  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%;
}

/* As BACKGROUND image */
.bgImgWrapper {
  max-width: 100%;
  z-index: 0;
  overflow: hidden;
  position: relative;
}
.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%;
}
.bgImgWrapper:after {
  /* to clear float */
  content: "";
  display: table;
  clear: both;
}
.bgImgWrapper .bgImg {
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  position: absolute;
}
.bgImgWrapper .bgImg {
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
}
.bgImgWrapper a {
  width: 100%;
  height: 100%;
  display: block;
}

/* As fullscreenimage */
.backstretch .overlay {
  inset: 0;
  position: absolute;
}

/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/*#region TYPOGRAPHY CMS Content Styles */
/****************************************************************************************************/
.cmsContent {
  color: black;
  font-size: 1em;
  line-height: 1.5;
  /* 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 */
  /* Misc content elements */
  /* last child selector */
  /*
  > :last-child {
  }
  */
}
.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, .cmsContent .h, .cmsContent.highlightFirstElement > :first-child {
  color: #40395F;
}
.cmsContent h1:first-child, .cmsContent h2:first-child, .cmsContent h3:first-child, .cmsContent h4:first-child, .cmsContent h5:first-child, .cmsContent h6:first-child, .cmsContent .h:first-child, .cmsContent.highlightFirstElement > :first-child {
  margin-top: 0;
}
.cmsContent a {
  color: #8D7249;
  text-decoration: none;
}
.cmsContent a:hover, .cmsContent a:focus {
  text-decoration: underline;
}
.cmsContent a:active {
  color: #6b5738;
  text-decoration: underline;
}
.cmsContent .socialLinks a[target=_blank]:after {
  content: none;
}
.cmsContent p {
  line-height: 1.5;
}
.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: black;
}
.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: "";
  display: inline-block;
  width: 0;
  height: 0;
  border-top: 4px solid transparent;
  border-left: 4px solid #40395F;
  border-bottom: 4px solid transparent;
  /* Color of the arrow */
  position: absolute;
  left: 0;
  top: 0.3rem;
}
.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: black;
  position: absolute;
  font-weight: 400;
}
.cmsContent address {
  margin: 0.5rem 0 1rem;
}
.cmsContent mark {
  color: white;
  background-color: #E6E6F3;
}
.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 {
  margin: 0 0 1.38rem;
}
.cmsContent.highlightFirstElement > :first-child > * {
  font: inherit;
  line-height: inherit;
}

.dark, .dark .cmsContent {
  color: white;
  /* 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 */
}
.dark ::selection, .dark .cmsContent ::selection {
  background: #1057AD;
  color: white;
}
.dark h1, .dark h2, .dark h3, .dark h4, .dark h5, .dark h6, .dark p, .dark ul li, .dark address, .dark .cmsContent h1, .dark .cmsContent h2, .dark .cmsContent h3, .dark .cmsContent h4, .dark .cmsContent h5, .dark .cmsContent h6, .dark .cmsContent p, .dark .cmsContent ul li, .dark .cmsContent address {
  color: white;
}
.dark a:link, .dark a:visited, .dark .cmsContent a:link, .dark .cmsContent a:visited {
  color: white;
}
.dark a:hover, .dark a:active, .dark a:focus, .dark .cmsContent a:hover, .dark .cmsContent a:active, .dark .cmsContent a:focus {
  color: #8D7249;
  text-decoration: underline;
}
.dark a.button:hover, .dark a.button:active, .dark a.button:focus, .dark .cmsContent a.button:hover, .dark .cmsContent a.button:active, .dark .cmsContent a.button:focus {
  color: white;
}
.dark ul,
.dark ol, .dark .cmsContent ul,
.dark .cmsContent ol {
  /* SHARED nested list styles */
}
.dark ul ol > li:before,
.dark ul ul > li:before,
.dark ol ol > li:before,
.dark ol ul > li:before, .dark .cmsContent ul ol > li:before,
.dark .cmsContent ul ul > li:before,
.dark .cmsContent ol ol > li:before,
.dark .cmsContent ol ul > li:before {
  color: white;
}
.dark ul > li, .dark .cmsContent ul > li {
  /* bullet icon */
}
.dark ul > li:before, .dark .cmsContent ul > li:before {
  color: white;
  background-image: url(/CFImages/Icons/bullet-square-solid-white.svg);
}
.dark ol > li:before, .dark .cmsContent ol > li:before {
  color: white;
}
.dark mark, .dark .cmsContent mark {
  color: white;
  background-color: #1057AD;
}
.dark pre, .dark .cmsContent pre {
  background-color: #2b263f;
  color: white;
}
.dark blockquote, .dark .cmsContent blockquote {
  background-color: #2b263f;
  color: white;
}
.dark blockquote p, .dark .cmsContent blockquote p {
  color: white;
}

.dark :is(.button, button),
.dark .cmsContent :is(.button, button) {
  color: #fff;
  border-radius: 50vh;
  padding: 0.75rem 1.25rem;
  border: 1px solid #CCCCCC;
  margin-top: 0;
}

/* #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/plus.svg) url(/CFImages/Icons/minus.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/plus.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 {
  transform: rotate(360deg);
  background-image: url(/CFImages/Icons/minus.svg);
}
.k-icon.k-i-collapse:before {
  background-image: url(/CFImages/Icons/minus.svg);
}
.k-state-active .k-icon.k-i-collapse:before {
  background-image: url(/CFImages/Icons/plus-white.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/plus-white.svg);
}
li.k-item.selected > div .k-icon:first-of-type.k-i-collapse:before {
  background-image: url(/CFImages/Icons/minus-white.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.bookmark:before {
  background-image: url(/CFImages/Icons/bookmark.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 #E6E6F3;
  border-radius: 15px;
  background-color: black;
}

/* #endregion */
/**

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

#wrapper {
  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 .animateIn > * {
  opacity: 1 !important;
  transform: translatey(0) !important;
}

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

.wrapperPadding {
  padding: 4rem 0rem 5rem;
  position: relative;
}

.primaryWrapper {
  background-color: #40395F;
}

.primaryLightWrapper {
  background-color: #63569F;
}

.offWhiteWrapper {
  background-color: #E6E6F3;
}
.offWhiteWrapper hr {
  border-color: #CCCCCC;
}
.offWhiteWrapper .cardView.insight:not(.medium) .cardContent:hover {
  background-color: #F4F4F2;
}

.whiteWrapper {
  background-color: #fff;
}

.bodyWrapper {
  background-color: #F4F4F2;
}

.secondaryWrapper {
  background-color: #8D7249;
}

.jumpMenuWrapper {
  padding: 2rem 2rem 5rem;
  background-color: #fff;
  border: 1px solid #CCCCCC;
}
@media only screen and (max-width: 767px) {
  .jumpMenuWrapper {
    margin-top: 2rem;
  }
}
.jumpMenuWrapper a {
  color: #40395F;
  text-transform: uppercase;
  font-family: "Montserrat", sans-serif;
  font-weight: 700;
}
.jumpMenuWrapper a:hover {
  color: #8D7249;
  cursor: pointer;
}
.jumpMenuWrapper .callout {
  margin-top: 1rem;
  font-size: 0.9rem;
}
.jumpMenuWrapper .callout .button {
  font-size: 0.8rem;
}
.jumpMenuWrapper .callout .button:hover {
  color: #fff;
}
.jumpMenuWrapper .jumpMenu li {
  padding-bottom: 0.5rem;
}
.jumpMenuWrapper .printAndShare {
  border: solid 1px #63569F;
  border-left: none;
  border-right: none;
  border-top: none;
  padding-bottom: 1rem;
  margin-bottom: 1rem;
  font-size: 0.9rem;
  font-weight: 700;
}
.jumpMenuWrapper .printAndShare .button, .jumpMenuWrapper .printAndShare button {
  margin: 0;
  padding: 0;
  border: none;
}
.jumpMenuWrapper .printAndShare a {
  margin-right: 1rem;
}
.jumpMenuWrapper ul.socialLinks {
  justify-content: flex-start;
}
.jumpMenuWrapper ul.socialLinks li {
  display: inline-block;
  font-size: 0.9rem;
  margin-left: 0;
  margin-right: 2rem;
}
.jumpMenuWrapper ul.socialLinks li a:hover {
  color: #40395F;
}
.jumpMenuWrapper h6 {
  margin-bottom: 0.5rem;
}
.jumpMenuWrapper .contactInfo a {
  font-size: 0.8rem;
  text-transform: none;
  font-weight: 400;
}

:root {
  /* change this if you need a gap for your header */
  --stick-offset: 8rem;
}

/* visually invisible but it reserves space so the page doesn’t jump */
#sentinel {
  height: var(--sticky-height, 0);
}

/* normal state */
#stickyElement {
  position: relative;
  /* stays in document flow until “fixed” */
  z-index: 100;
}
#stickyElement .fa-plus {
  display: block;
}
#stickyElement .fa-minus {
  display: none;
}
#stickyElement.fixed {
  position: fixed;
  top: var(--stick-offset);
  /* 3 rem below top of viewport */
  left: 0;
  right: 0;
  width: 350px;
}
#stickyElement.fixed.showAll {
  margin-left: 1rem;
}
#stickyElement.fixed.showAll .fa-plus {
  display: none;
}
#stickyElement.fixed.showAll .fa-minus {
  display: block;
}
#stickyElement.fixed.showAll:after {
  transform: inherit;
}
#stickyElement.fixed:after {
  transform: translate(-30px, 12px) rotate(-135deg);
  transform-origin: center;
  transition: all 0.2s ease, font-size 0s linear, padding 0s linear, margin 0s linear, outline 0s linear;
}
#stickyElement .fa-minus {
  display: none;
}
#stickyElement .afterTrigger {
  display: block !important;
  position: absolute;
  bottom: 0.5rem;
  left: 0.5rem;
  z-index: 10001;
}
#stickyElement .afterTrigger svg {
  color: #fff;
}

#stickyElement.fixed:not(.showAll) {
  /*box-shadow: 0 2px 5px rgba(0,0,0,.15);*/
  border: none;
  background-color: transparent;
  width: 60px;
  height: 60px;
  /*transition: all 0.2s ease;*/
}
#stickyElement.fixed:not(.showAll) .collapse {
  display: none;
}

.topRightOverlay:after {
  content: "";
  position: absolute;
  z-index: 2;
  top: 0;
  right: 0;
  width: var(--polygon-size);
  aspect-ratio: 1;
  background-color: #40395F;
  -webkit-clip-path: polygon(0% calc(100% - var(--polygon-size)), var(--polygon-size) 100%, 100% 100%, 100% 0%, 0% 0%);
          clip-path: polygon(0% calc(100% - var(--polygon-size)), var(--polygon-size) 100%, 100% 100%, 100% 0%, 0% 0%);
}

.topRightCut {
  -webkit-clip-path: polygon(0% 0%, 0% 100%, 100% 100%, 100% var(--polygon-size), calc(100% - var(--polygon-size)) 0%);
          clip-path: polygon(0% 0%, 0% 100%, 100% 100%, 100% var(--polygon-size), calc(100% - var(--polygon-size)) 0%);
}

.topLeftCut {
  -webkit-clip-path: polygon(var(--polygon-size) 0%, 0% var(--polygon-size), 0% 101%, 100% 101%, 100% 0%);
          clip-path: polygon(var(--polygon-size) 0%, 0% var(--polygon-size), 0% 101%, 100% 101%, 100% 0%);
}

.bottomLeftCut {
  -webkit-clip-path: polygon(0% calc(100% - var(--polygon-size)), var(--polygon-size) 100%, 100% 100%, 100% 0%, 0% 0%);
          clip-path: polygon(0% calc(100% - var(--polygon-size)), var(--polygon-size) 100%, 100% 100%, 100% 0%, 0% 0%);
}

.bottomLeftOverlayGold {
  position: relative;
}
.bottomLeftOverlayGold:after {
  content: "";
  position: absolute;
  z-index: 2;
  bottom: 0;
  left: 0;
  width: var(--polygon-size);
  aspect-ratio: 1;
  background-color: #8D7249;
  -webkit-clip-path: polygon(0% 0%, 0% 100%, 100% 100%, 100% var(--polygon-size), calc(100% - var(--polygon-size)) 0%);
          clip-path: polygon(0% 0%, 0% 100%, 100% 100%, 100% var(--polygon-size), calc(100% - var(--polygon-size)) 0%);
}

.bottomLeftOverlayOffWhite {
  position: relative;
}
.bottomLeftOverlayOffWhite:after {
  content: "";
  position: absolute;
  z-index: 2;
  bottom: 0;
  left: 0;
  width: var(--polygon-size);
  aspect-ratio: 1;
  background-color: #E6E6F3;
  -webkit-clip-path: polygon(0% 0%, 0% 100%, 100% 100%, 100% var(--polygon-size), calc(100% - var(--polygon-size)) 0%);
          clip-path: polygon(0% 0%, 0% 100%, 100% 100%, 100% var(--polygon-size), calc(100% - var(--polygon-size)) 0%);
}

.topLeftOverlayOffWhite:after {
  content: "";
  position: absolute;
  z-index: 2;
  top: 0;
  left: 0;
  width: var(--polygon-size);
  aspect-ratio: 1;
  background-color: #E6E6F3;
  -webkit-clip-path: polygon(0% 0%, 100% 0%, 100% calc(100% - var(--polygon-size)), calc(100% - var(--polygon-size)) 100%, 0% 100%, 0% 0%);
          clip-path: polygon(0% 0%, 100% 0%, 100% calc(100% - var(--polygon-size)), calc(100% - var(--polygon-size)) 100%, 0% 100%, 0% 0%);
}

.topLeftOverlayBody:after {
  content: "";
  position: absolute;
  z-index: 2;
  top: 0;
  left: 0;
  width: var(--polygon-size);
  aspect-ratio: 1;
  background-color: #F4F4F2;
  -webkit-clip-path: polygon(0% 0%, 100% 0%, 100% calc(100% - var(--polygon-size)), calc(100% - var(--polygon-size)) 100%, 0% 100%, 0% 0%);
          clip-path: polygon(0% 0%, 100% 0%, 100% calc(100% - var(--polygon-size)), calc(100% - var(--polygon-size)) 100%, 0% 100%, 0% 0%);
}

.bottomLeftOverlayBody {
  position: relative;
}
.bottomLeftOverlayBody:after {
  content: "";
  position: absolute;
  z-index: 2;
  bottom: 0;
  left: 0;
  width: var(--polygon-size);
  aspect-ratio: 1;
  background-color: #F4F4F2;
  -webkit-clip-path: polygon(0% 0%, 0% 100%, 100% 100%, 100% var(--polygon-size), calc(100% - var(--polygon-size)) 0%);
          clip-path: polygon(0% 0%, 0% 100%, 100% 100%, 100% var(--polygon-size), calc(100% - var(--polygon-size)) 0%);
}

.bottomLeftOverlayWhite {
  position: relative;
}
.bottomLeftOverlayWhite:after {
  content: "";
  position: absolute;
  z-index: 2;
  bottom: 0;
  left: 0;
  width: var(--polygon-size);
  aspect-ratio: 1;
  background-color: #ffffff;
  -webkit-clip-path: polygon(0% 0%, 0% 100%, 100% 100%, 100% var(--polygon-size), calc(100% - var(--polygon-size)) 0%);
          clip-path: polygon(0% 0%, 0% 100%, 100% 100%, 100% var(--polygon-size), calc(100% - var(--polygon-size)) 0%);
}

.topRightOverlayPrimaryLight:after {
  content: "";
  position: absolute;
  z-index: 2;
  top: 0;
  right: 0;
  width: var(--polygon-size);
  aspect-ratio: 1;
  background-color: #63569F;
  -webkit-clip-path: polygon(0% calc(100% - var(--polygon-size)), var(--polygon-size) 100%, 100% 100%, 100% 0%, 0% 0%);
          clip-path: polygon(0% calc(100% - var(--polygon-size)), var(--polygon-size) 100%, 100% 100%, 100% 0%, 0% 0%);
}

/* #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(50rem);
}
.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: 200;
  position: absolute;
  transition: all 0.2s ease, font-size 0s linear, padding 0s linear, margin 0s linear, outline 0s linear;
}
#header.up {
  position: fixed;
  animation: header-slide-in 300ms ease;
}
#header.down:not(.top), #header.up:not(.top) {
  position: fixed;
}
#header.down:not(.top) .topHeader .topHeaderGrid, #header.up:not(.top) .topHeader .topHeaderGrid {
  box-shadow: 0px 0px 12px 5px rgba(102, 102, 102, 0.13);
  background-color: #F4F4F2;
}
#header.down:not(.top) .topHeader .topHeaderGrid .topHeaderGridLeft img, #header.up:not(.top) .topHeader .topHeaderGrid .topHeaderGridLeft img {
  width: 140px;
  transition: all 0.2s ease, font-size 0s linear, padding 0s linear, margin 0s linear, outline 0s linear;
}
#header .searchHiddenWrapper {
  /* refer to "region Site Search" styles below */
  display: none;
}
#header .topHeader {
  position: relative;
  padding: 0.5rem 0;
  z-index: 1001;
}
#header .topHeader p {
  margin: 0;
}
#header .topHeader .topHeaderGrid .topHeaderGridLeft img {
  width: 275px;
  max-width: 275px !important;
  margin: 1rem 0;
  transition: all 0.2s ease, font-size 0s linear, padding 0s linear, margin 0s linear, outline 0s linear;
}
#header .topHeader .topHeaderGrid .topHeaderGridRight {
  display: flex;
  flex-direction: row;
  justify-content: flex-end;
  align-items: center;
}

body.withNavOpen #header .topHeader .topHeaderGrid {
  background-color: #40395F !important;
  box-shadow: none !important;
}

/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/*#region Page Topper (Banner) */
/****************************************************************************************************/
/* Usually nested in the topper */
.topperSection {
  position: relative;
  margin: 0;
  text-align: left;
}
.topperSection .svgTriangles {
  position: absolute;
  right: 2rem;
  height: 100%;
  width: 240px;
  -webkit-mask-image: linear-gradient(28deg, transparent 10%, black);
          mask-image: linear-gradient(28deg, transparent 10%, black);
}
.topperSection .meta {
  text-transform: uppercase;
  font-size: 0.8rem;
}
.topperSection .meta .separator {
  margin: 0 0.4rem;
}
.topperSection .contentTypeLabels {
  font-size: inherit;
}
.topperSection hr {
  margin: 2rem 0 0;
}
.topperSection .topperContent {
  padding: 3rem 0;
  text-align: left;
}
.topperSection .topperContent .topperTagLine {
  text-align: center;
}
.topperSection:has(.topperImage) {
  overflow: hidden;
  min-height: 500px;
}
.topperSection:has(.topperImage) .topperImage {
  position: absolute;
  height: 100%;
  width: 100%;
}
.topperSection:has(.topperImage) .topperImage .imgWrapper {
  height: 100%;
  width: 100%;
}
.topperSection:has(.topperImage) .topperContent h1 {
  color: #fff;
}
.topperSection:has(.topperImage) .topperContent .meta {
  color: #E6E6F3;
}
/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/*#region Site Main Content */
/****************************************************************************************************/
.breadCrumbInner {
  font-size: 0.7rem;
  display: flex;
  align-items: center;
  margin-bottom: 1rem;
  gap: 6px;
}
.breadCrumbInner a {
  color: #555555;
  text-decoration: none;
  font-weight: 400;
}
.breadCrumbInner > *:last-child {
  color: #40395F;
}
.breadCrumbInner > *:not(:last-child) {
  color: #555555;
  font-weight: 400;
}
.breadCrumbInner > *:not(:last-child):hover, .breadCrumbInner > *:not(:last-child):focus {
  text-decoration: underline;
}
.breadCrumbInner span.separator {
  margin: 0.23rem 0.5em;
  width: 0;
  height: 0;
  border-top: 5px solid transparent;
  border-bottom: 5px solid transparent;
  border-left: 5px solid #40395F;
}
.breadCrumbInner span.current, .breadCrumbInner a.activeCrumb {
  color: #8D7249;
  background-color: #E6E6F3;
  padding: 0.25rem 1rem;
  border-radius: 1rem;
}
.breadCrumbInner span.current {
  display: flex;
  padding: 6px 10px;
  align-items: center;
  gap: 12px;
  border-radius: 12px;
  background: #E6E6F3;
}

main {
  padding-top: var(--header-height);
}
main .bd .mainContent .sfContentBlock img {
  max-width: 100%;
}
main .bd .sideContent {
  padding: 3rem 0;
}
main .bd .sidebarGrid {
  display: flex;
  justify-content: flex-start;
  align-content: flex-start;
}
main .bd .sidebarGrid .mainContent {
  width: calc(100% - 350px);
  /*> :last-child {
      margin-bottom: 4rem;
  }*/
}
main .bd .sidebarGrid .mainContent > :first-child {
  margin-top: 3rem;
}
main .bd .sidebarGrid .sideContent {
  width: 350px;
  padding-right: 3rem;
}
main .bd .sidebarGrid .sideContent h2 {
  margin: 0 0 1.5rem;
}
main .bd .sidebarGrid .sideContent .viewAllMoreWrapper {
  margin-bottom: 1rem;
  padding-bottom: 1rem;
}
main .bd .sidebarGrid .sideContent .sideContentInner {
  /*
  > :last-child {
      margin-bottom: 4rem;
  }*/
}
main .bd .sidebarGrid .sideContent .sideContentInner > :first-child {
  margin-top: 3rem;
}
@media only screen and (max-width: 1024px) {
  main .bd .sidebarGrid .mainContent {
    width: calc(100% - 270px);
  }
  main .bd .sidebarGrid .sideContent {
    width: 270px;
  }
}
@media only screen and (max-width: 767px) {
  main .bd .sidebarGrid {
    flex-direction: column;
    position: relative;
    padding-bottom: 6rem;
  }
  main .bd .sidebarGrid .mainContent {
    width: 100%;
  }
  main .bd .sidebarGrid .sideContent {
    padding: 0;
    width: 100%;
  }
}

/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/*#region Site Footer */
/****************************************************************************************************/
/* all footer sections */
/* NOTE USE mixin utility classes of mvxl or pvxl etc on Templates to contol padding and margins */
.siteFooter {
  position: relative;
  z-index: 1;
  /* &:not(.simple) .preFooter {
      &:after {
          display: none;
      }
  }*/
}
.siteFooter .preFooter .callOut.simple {
  background-color: #D7D2CF;
  padding: 2rem 4rem 4rem;
  margin-top: 2rem;
}
.siteFooter .preFooter .callOut.simple img {
  position: absolute;
  top: 0;
  right: 0;
  width: 14%;
}
.siteFooter .preFooter .offWhiteFooter {
  background: linear-gradient(180deg, #E6E6F3 50%, #40395f 50%);
}
.siteFooter .preFooter .offWhiteFooter .callOut.simple {
  margin-top: 0;
}
.siteFooter .preFooter .offWhiteFooter .callOut.simple h6 {
  margin: 2rem 0;
}
.siteFooter .preFooter {
  position: relative;
  background: linear-gradient(180deg, transparent 50%, #40395f 50%);
}
.siteFooter .preFooter:after {
  content: "";
  position: absolute;
  z-index: 2;
  top: 0;
  left: 0;
  width: 60px;
  aspect-ratio: 1;
  background-color: #8D7249;
  -webkit-clip-path: polygon(0% 0%, 100% 0%, 100% calc(100% - 60px), calc(100% - 60px) 100%, 0% 100%, 0% 0%);
          clip-path: polygon(0% 0%, 100% 0%, 100% calc(100% - 60px), calc(100% - 60px) 100%, 0% 100%, 0% 0%);
}
.siteFooter .preFooter .callOut {
  position: relative;
  z-index: 3;
}
.siteFooter .preFooter .callOut .cmsContent {
  width: 80%;
}
.siteFooter .preFooter .callOut .cmsContent p {
  font-size: 90%;
}
.siteFooter .preFooter .callOut .cmsContent .button {
  margin-top: 0;
}
@media only screen and (max-width: 767px) {
  .siteFooter .preFooter .callOut .cmsContent {
    font-size: 80%;
    top: 3rem;
    width: 70%;
  }
  .siteFooter .preFooter .callOut .cmsContent p {
    font-size: 80%;
  }
  .siteFooter .preFooter .callOut .cmsContent h2 {
    font-size: 1rem;
  }
}
@media only screen and (max-width: 600px) {
  .siteFooter .preFooter .callOut .cmsContent .button {
    background-color: #40395F;
    color: #fff;
  }
}
@media only screen and (max-width: 500px) {
  .siteFooter .preFooter .callOut.imgBackground {
    display: none;
  }
}
.siteFooter .preFooter .callOut.imgBackground .cmsContent {
  position: absolute;
  top: 5rem;
  left: 50%;
  transform: translateX(-50%);
  text-align: center;
}
@media only screen and (max-width: 650px) {
  .siteFooter .preFooter .callOut.imgBackground .cmsContent {
    top: 2rem;
  }
}
.siteFooter .preFooter:after {
  top: 50%;
}
.siteFooter .mainFooter {
  background-color: #40395F;
  font-size: 0.8rem;
}
.siteFooter .mainFooter .mainFooterGrid .mainFooterLeft {
  font-size: 0.8rem;
}
.siteFooter .mainFooter .mainFooterGrid .mainFooterLeft img {
  max-width: 275px !important;
  filter: brightness(0) invert(100%);
  margin-bottom: 3rem;
}
.siteFooter .mainFooter .mainFooterGrid .mainFooterRight {
  /* sitemap navs */
}
@media only screen and (max-width: 1024px) {
  .siteFooter .mainFooter .mainFooterGrid .mainFooterRight {
    padding-top: 2rem;
  }
}
.siteFooter .mainFooter .mainFooterGrid .mainFooterRight .topLevelSimple {
  max-width: 100%;
}
.siteFooter .mainFooter .mainFooterGrid .mainFooterRight .topLevelSimple ul {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  font-size: 1rem;
  font-weight: bold;
}
@media only screen and (max-width: 767px) {
  .siteFooter .mainFooter .mainFooterGrid .mainFooterRight .topLevelSimple ul {
    grid-template-columns: 1fr 1fr;
    gap: 0rem 2rem;
  }
}
.siteFooter .mainFooter .mainFooterGrid .mainFooterRight .topLevelSimple ul li {
  margin-bottom: 0.5rem;
}
.siteFooter .copyright {
  border-top: solid 1px #E6E6F3;
  padding-top: 0.5rem;
}

.hideFooterIcon .siteFooter:not(.simple) .preFooter:after {
  content: none;
}

/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Sticky Sidebar (Scroll Nav) */
/****************************************************************************************************/
.sticky-wrapper {
  position: relative;
}

.stickySidebar {
  padding: 0;
  position: relative;
  height: calc(100vh - 300px);
  overflow: auto;
  display: flex;
  width: 100%;
  justify-content: flex-start;
}
.stickySidebar.stuck {
  position: fixed;
  top: 250px;
  z-index: 10;
}
.stickySidebar ul.scrollingSideBar {
  padding: 1.5rem;
  width: 100%;
  background-color: rgba(255, 255, 255, 0.8);
  box-shadow: rgba(0, 0, 0, 0.19) 0px 10px 20px, rgba(0, 0, 0, 0.23) 0px 6px 6px;
}
.stickySidebar ul.scrollingSideBar li {
  position: relative;
  padding: 0.4rem 0;
}
.stickySidebar ul.scrollingSideBar li a {
  padding: 0 1.5rem 0 0;
  font-size: 1rem;
  color: #0D0D0D;
  text-decoration: none;
  display: block;
  width: 100%;
}
.stickySidebar ul.scrollingSideBar li a:focus, .stickySidebar ul.scrollingSideBar li a:hover, .stickySidebar ul.scrollingSideBar li a:active {
  color: #0D0D0D;
  padding: 0 0 0 1.5rem;
  font-weight: 600;
  transition: all 0.2s ease, font-size 0s linear, padding 0s linear, margin 0s linear, outline 0s linear;
}
.stickySidebar ul.scrollingSideBar li a:focus:before, .stickySidebar ul.scrollingSideBar li a:hover:before, .stickySidebar ul.scrollingSideBar li a:active:before {
  content: "";
  position: absolute;
  width: 0.4rem;
  height: 0.4rem;
  top: 50%;
  left: 0%;
  transform: rotate(180deg) translateX(-50%) translateY(50%);
  background-size: 100% auto;
  background-position: center;
  background-image: url(/CFImages/Icons/chevron-right-secondary.svg);
}

/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Universal Styles - Shared across cardViews and detailViews */
/****************************************************************************************************/
.audioButton {
  padding: 0rem;
}

.audioFile {
  border: none;
  border-radius: 3px;
  cursor: pointer;
  margin: 0;
  display: inline;
}
.audioFile a {
  padding: 0;
  display: inline-block;
  color: #8D7249;
  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 {
  margin-bottom: 1rem;
}

.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: #40395F;
  display: inline-block;
  font-family: "Montserrat", 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: #40395F;
  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;
}
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 {
  list-style: none;
  margin-bottom: 0;
  display: flex;
  align-items: center;
}
ul.socialLinks li:first-child,
.cmsContent ul.socialLinks li:first-child {
  margin-left: 0;
}

/** 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: #A3A3A3;
  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: #707070;
  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: #40395F;
  font-size: 1.2rem;
  opacity: 1;
  margin: 0;
  border: solid 1px #40395F;
  border-radius: 50%;
  bottom: 0;
  top: inherit;
}
.splide .splide__arrow.splide__arrow--prev {
  left: 0;
}
.splide .splide__arrow.splide__arrow--prev svg {
  transform: translatex(0);
}
.splide .splide__arrow.splide__arrow--next {
  left: 3rem;
}
.splide .splide__arrow.splide__arrow--next svg {
  transform: translatex(0);
}
.splide .splide__arrow:hover {
  background-color: #40395F;
  color: #fff;
}
.splide.arrowsRight .splide__arrow.splide__arrow--prev {
  bottom: -0.75rem;
  right: 3.5rem;
  left: inherit;
}
.splide.arrowsRight .splide__arrow.splide__arrow--next {
  bottom: -0.75rem;
  right: 0.5rem;
  left: inherit;
}

.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: #A3A3A3;
}
.homeSlideshow ul.splide__pagination li .splide__pagination__page.is-active {
  transform: scale(1);
  background-color: #40395F;
}
.homeSlideshow .splide__slide {
  position: relative;
  min-height: 30rem;
  padding: 3rem 0;
}
.homeSlideshow .splide__slide .cardContent {
  height: 100%;
  display: flex;
  position: relative;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  /*opacity: 0;*/
}
.homeSlideshow .splide__slide .cardContent .summary {
  font-size: 1.4rem;
  font-weight: 100;
  width: 50rem;
  text-align: center;
}
.homeSlideshow .splide__slide .cardContent .button {
  display: inline-block;
  margin-top: 2rem;
}
.homeSlideshow .splide__slide.is-visible .cardContent {
  opacity: 1;
}

/* #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;
}

/* ### Content Specific Sizing of Grids if required exact dimensions can be paired with default or fixedSizeScales or .fixedSize ### */
.listView.teammembers {
  --card-width: 20rem;
}

.listView.expertises, .expertises .s {
  --card-width: 48%;
}

.listView.offices {
  --card-width: 22%;
}
@media (max-width: 1299px) {
  .listView.offices {
    --card-width: 48%;
  }
}

.listView.insights.eventitems {
  --card-width: 400px;
}
@media (max-width: 767px) {
  .listView.insights.eventitems {
    --card-width: 100%;
  }
}

:not(.related).listView.rankings {
  --card-width: 100%;
}

.listView.faqs {
  --card-width: 48%;
}

/* 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;
  }
}
/* DOWNLOADABLE QR CODES SECTION*/
.listView.QRCodes {
  --card-width: 100%;
}
.listView.QRCodes .cardView.teamQRCode {
  display: flex;
  flex-direction: row;
  gap: 2rem;
  padding: 1rem;
  border: 1px solid #000;
  background-color: #fff;
  color: black;
  justify-content: space-between;
  align-items: flex-start;
}
.listView.QRCodes .cardView.teamQRCode a {
  color: black;
}
.listView.QRCodes .cardView.teamQRCode .imgWrapper {
  width: 150px;
}
.listView.QRCodes .cardView.teamQRCode .imgWrapper img {
  -o-object-fit: contain;
     object-fit: contain;
}
.listView.QRCodes .cardView.teamQRCode .QRCodes {
  width: 50%;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
}
.listView.QRCodes .cardView.teamQRCode .QRCodes .biolink h3, .listView.QRCodes .cardView.teamQRCode .QRCodes .biocardlink h3 {
  font-size: 1.1rem;
  margin: 0.5rem 0;
  color: inherit;
}
.listView.QRCodes .cardView.teamQRCode .QRCodes .biolink img, .listView.QRCodes .cardView.teamQRCode .QRCodes .biocardlink img {
  width: 200px;
  margin: 1rem 0 0 0;
}

/* END DOWNLOADABLE QR CODES SECTION*/
/* Related Content Lists (if different) */
/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region CARDS - .cardView */
/****************************************************************************************************/
/* Shared/Common Card Views Styles */
.cardView {
  height: 100%;
  width: 100%;
}
.cardView .cardContent h3 {
  font-size: 1rem;
}
.cardView ul.simple {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
}
.cardView ul.simple li .button {
  font-size: 0.7rem;
  padding: 0.25rem 1rem;
}
.cardView.reverse {
  background-color: #fff;
  border-radius: 5px;
  padding: 1.25rem;
  color: #40395F !important;
  /* Title */
}
.cardView.reverse h3 {
  font-size: 1.2rem;
  color: #40395F;
  margin-top: 0;
}
.cardView.reverse h3 a:link, .cardView.reverse h3 a:visited {
  color: #40395F;
}
.cardView.reverse h3 a:hover, .cardView.reverse h3 a:active {
  color: #E6E6F3;
}
.cardView.reverse a:link, .cardView.reverse a:visited {
  color: #40395F;
}
.cardView.reverse a:hover, .cardView.reverse a:active {
  color: #E6E6F3;
}
.cardView.twoColumn {
  padding: 0;
  display: grid;
  grid-template-columns: 1fr 1fr;
  overflow: hidden;
}
.cardView.twoColumn .cardContent {
  padding: 1.25rem;
}
.cardView .imageCard {
  overflow: hidden;
  border-radius: 5px;
  box-shadow: 0 20px 40px -14px rgba(0, 0, 0, 0.25);
}
.cardView .imageCard .imgWrapper {
  position: relative;
  max-height: 250px;
  overflow: hidden;
}
.cardView .imageCard .imgWrapper img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 1.4;
}
.cardView .imageCard span.featured {
  position: absolute;
  top: 0.5rem;
  right: 0.5rem;
  padding: 4px 8px;
  border-radius: 0.25rem;
  background-color: #40395F;
  font-size: 0.9rem;
  color: #fff;
  text-transform: uppercase;
}
.cardView .imageCard .cardContent {
  position: relative;
  padding: 1.5rem 1rem;
}
.cardView .imageCard.withScrollbar {
  /* scrollbar option*/
}
.cardView .imageCard.withScrollbar .cardContent {
  margin: 1.5rem 0.75rem 1.5rem 0.25rem;
  padding-top: 0;
  max-height: 400px;
  overflow-y: scroll;
}
.cardView .imageCard.withScrollbar .cardContent::-webkit-scrollbar {
  width: 0.375rem;
}
.cardView .imageCard.withScrollbar .cardContent::-webkit-scrollbar-track {
  box-shadow: 0;
  border-radius: 1rem;
}
.cardView .imageCard.withScrollbar .cardContent::-webkit-scrollbar-thumb {
  background: #CCCCCC;
  border-radius: 1rem;
}
.cardView .imageCard:hover .imgWrapper img {
  transition: all 0.6s ease;
  transform: scale(1.2);
}
.cardView .imageOverlayCard {
  position: relative;
  height: 100%;
  min-height: 200px;
}
.cardView .imageOverlayCard .overlayWrapper {
  position: relative;
  overflow: hidden;
  width: 100%;
  height: 100%;
  /* zoom in the image */
}
.cardView .imageOverlayCard .overlayWrapper .imgWrapper {
  width: 100%;
  height: 100%;
}
.cardView .imageOverlayCard .overlayWrapper .imgWrapper img {
  transition: all 0.6s ease;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: 50% 0%;
     object-position: 50% 0%;
}
.cardView .imageOverlayCard .overlayWrapper:hover .imgWrapper img {
  transform: scale(1.2);
}
.cardView .imageOverlayCard .overlayWrapper .overlay {
  position: absolute;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}
.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:not(.keyContact) {
  background-color: #E6E6F3;
  border: 1px solid #CCCCCC;
  position: relative;
  transition: all 0.2s ease, font-size 0s linear, padding 0s linear, margin 0s linear, outline 0s linear;
  position: relative;
  /* content wrapper  */
  /* position */
  /* email & phone etc */
}
.cardView.teammember:not(.keyContact):after {
  content: "";
  position: absolute;
  z-index: 2;
  bottom: 0;
  left: 0;
  width: 60px;
  aspect-ratio: 1;
  background-color: #40395F;
  -webkit-clip-path: polygon(0% 0%, 0% 100%, 100% 100%, 100% 60px, calc(100% - 60px) 0%);
          clip-path: polygon(0% 0%, 0% 100%, 100% 100%, 100% 60px, calc(100% - 60px) 0%);
}
.cardView.teammember:not(.keyContact):hover {
  position: relative;
}
.cardView.teammember:not(.keyContact):hover:after {
  content: "";
  position: absolute;
  z-index: 2;
  bottom: 0;
  left: 0;
  width: 60px;
  aspect-ratio: 1;
  background-color: #8D7249;
  -webkit-clip-path: polygon(0% 0%, 0% 100%, 100% 100%, 100% 60px, calc(100% - 60px) 0%);
          clip-path: polygon(0% 0%, 0% 100%, 100% 100%, 100% 60px, calc(100% - 60px) 0%);
}
.cardView.teammember:not(.keyContact) .imgWrapper {
  position: absolute;
  right: 0;
  height: 100%;
  width: 55%;
  padding-top: 1rem;
}
.cardView.teammember:not(.keyContact) .imgWrapper img {
  aspect-ratio: 1.5;
  -o-object-position: right bottom;
     object-position: right bottom;
  -o-object-fit: contain;
     object-fit: contain;
}
.cardView.teammember:not(.keyContact) .cardContent {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  padding: 0 1.5rem 1rem;
  height: 100%;
  padding-bottom: 3rem;
  max-width: 70%;
}
.cardView.teammember:not(.keyContact) .spaceFiller {
  height: 1.5rem;
}
.cardView.teammember:not(.keyContact) .nameDesignationsPronunciation {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-start;
  margin: 1rem 0 0 0;
  padding: 0.25rem 0;
  /* title */
  /* designations */
  /* audio */
}
.cardView.teammember:not(.keyContact) .nameDesignationsPronunciation h3 {
  font-size: 1.1rem;
  margin: 0;
}
.cardView.teammember:not(.keyContact) .nameDesignationsPronunciation .designation {
  color: #8D7249;
}
.cardView.teammember:not(.keyContact) .nameDesignationsPronunciation .audioFile {
  display: inline-block;
  margin: 0;
  padding-left: 1rem;
}
.cardView.teammember:not(.keyContact) .nameDesignationsPronunciation .audioFile .icon.audio {
  font-size: 0.8rem;
}
.cardView.teammember:not(.keyContact) .genderPronouns {
  font-size: 0.8rem;
}
.cardView.teammember:not(.keyContact) .position {
  color: #40395F;
  text-transform: uppercase;
  font-weight: 700;
  font-size: 0.9rem;
  display: block;
  margin: 0.75rem 0;
}
.cardView.teammember:not(.keyContact) .contactInfo {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  min-height: 5rem;
  font-size: 0.8rem;
}
.cardView.teammember:not(.keyContact) .contactInfo li .prefixLabel {
  font-weight: 700;
  color: #40395F;
  display: inline-block;
  margin-right: 0.3em;
}
.cardView.teammember:not(.keyContact) .contactInfo li a {
  font-family: inherit;
  color: black;
  text-decoration: none;
}
.cardView.teammember:not(.keyContact) .contactInfo li a:focus, .cardView.teammember:not(.keyContact) .contactInfo li a:hover {
  text-decoration: underline;
}
.cardView.teammember:not(.keyContact) .contactInfo li a:active {
  text-decoration: underline;
}

/* Expertise: Card View*/
.cardView.expertise h3 {
  margin-top: 0;
  color: black;
  padding-bottom: 1em;
  text-decoration: none;
  word-break: break-word;
  -webkit-hyphens: auto;
          hyphens: auto;
  margin: 0;
}
.cardView.expertise h3:after {
  width: 3.8rem;
}
.cardView.expertise h3 a {
  text-decoration: none;
}
.cardView.expertise h3 a:focus, .cardView.expertise h3 a:hover {
  color: #8D7249;
}
.cardView.expertise h3 a:active {
  color: #6b5738;
}

.cardView.office {
  background-color: #40395F;
  border: 1px solid #CCCCCC;
  -webkit-clip-path: polygon(0% 0%, 100% 0%, 100% calc(100% - 60px), calc(100% - 60px) 100%, 0% 100%, 0% 0%);
          clip-path: polygon(0% 0%, 100% 0%, 100% calc(100% - 60px), calc(100% - 60px) 100%, 0% 100%, 0% 0%);
  transition: all 0.2s ease, font-size 0s linear, padding 0s linear, margin 0s linear, outline 0s linear;
  /*&:hover {
      @include polygonCutBottomRight(15px)
  }*/
  /* content wrapper  */
}
.cardView.office .imgWrapper {
  background-color: #F4F4F2;
}
.cardView.office .imgWrapper img {
  aspect-ratio: 1.5;
  -o-object-position: top;
     object-position: top;
}
.cardView.office .cardContent {
  background-color: #E6E6F3;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  padding: 0 1rem 2rem;
  height: 100%;
}

/* Insight CardView */
/*a cheat to add a border on the cut part of the clip-path below. Requires an extra element. Review _Card_Common_No_image_title*/
.bottomLeftCutClone {
  -webkit-clip-path: polygon(0% calc(100% - 60px), 60px 100%, 100% 100%, 100% 0%, 0% 0%);
          clip-path: polygon(0% calc(100% - 60px), 60px 100%, 100% 100%, 100% 0%, 0% 0%);
  background-color: #000;
  position: absolute;
  height: 100%;
  width: 100%;
  z-index: -1;
}

.cardView.insight:not(.medium) {
  position: relative;
  /* content wrapper  */
}
.cardView.insight:not(.medium):hover .cardContent {
  background-color: #E6E6F3;
}
.cardView.insight:not(.medium) .cardContent {
  border: 1px solid #CCCCCC;
  padding: 2rem 2rem 4rem;
  min-height: 200px;
  height: 100%;
  -webkit-clip-path: polygon(0% calc(100% - 60px), 60px 100%, 100% 100%, 100% 0%, 0% 0%);
          clip-path: polygon(0% calc(100% - 60px), 60px 100%, 100% 100%, 100% 0%, 0% 0%);
  background-color: #fff;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  transition: all 0.2s ease, font-size 0s linear, padding 0s linear, margin 0s linear, outline 0s linear;
}
.cardView.insight:not(.medium) .cardContent h6.readtime {
  font-size: 0.8rem;
}
.cardView.insight:not(.medium) .imgWrapper img {
  aspect-ratio: 2;
}

.cardView.insight.eventitem {
  flex-direction: column;
  justify-content: space-between;
  height: 100%;
}
.cardView.insight.eventitem .meta {
  display: flex;
  justify-content: space-between;
  font-size: 14px;
}
.cardView.insight.eventitem .meta .eventType {
  color: #8F8FCB;
}
.cardView.insight.eventitem .meta .eventStatus {
  color: #8D7249;
  text-transform: uppercase;
}
.cardView.insight.eventitem div.dates {
  font-size: 14px;
  width: 100%;
  margin: 10px 0;
}
.cardView.insight.eventitem .cpdSummary {
  font-size: 20px;
  line-height: 1;
  letter-spacing: -0.8px;
  text-transform: uppercase;
  color: #8D7249;
  margin-top: 32px;
}

/* Ranking CardView */
/*.cardView.ranking {
    height: 100%;

    .cardContent {
        height: 100%;
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        align-items:center;
    }
}*/
.cardView.ranking:not(.team) .cardContent {
  display: grid;
  grid-template-columns: 2fr 3fr;
  gap: 2rem;
  /* optional item */
}
@media only screen and (max-width: 500px) {
  .cardView.ranking:not(.team) .cardContent {
    grid-template-columns: 1fr;
    gap: 0;
  }
}
.cardView.ranking:not(.team) .cardContent .publication {
  padding-right: 2rem;
}
.cardView.ranking.team .cardContent {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
  height: 100%;
}
.cardView.ranking.team .cardContent h3 {
  text-align: center;
  margin: 0 0 0.5rem;
}

/* Testimonial CardView */
.cardView.testimonial blockquote {
  margin: 0;
  padding: 0;
  padding: 1rem 5rem;
  color: #8D7249;
}
.cardView.testimonial blockquote cite {
  display: block;
  margin-top: 1.4rem;
  font-size: 1rem;
}

/* Global Alert CardView */
.cardView.globalalert {
  padding: 0.5rem 0;
  position: relative;
  display: flex;
  align-items: center;
}
.cardView.globalalert .alertIcon {
  padding-right: 1rem;
}
.cardView.globalalert .alertIcon svg {
  font-size: 1.2rem;
  color: white;
}
.cardView.globalalert .alertContent a.alertLabelLink {
  text-decoration: underline;
  display: block;
  margin-bottom: 0.25rem;
  font-size: 0.9rem;
}
.cardView.globalalert .alertContent .optionalContent {
  font-size: 0.8rem;
}
.cardView.globalalert .alertContent .optionalContent p {
  margin: 0;
  font-size: 0.8rem;
}
.cardView.globalalert .alertContent .optionalContent a {
  text-decoration: underline;
}

/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region DETAIL VIEWS - .detailView */
/****************************************************************************************************/
/* Shared detailView Styles */
.detailView {
  /* Social */
}
.detailView .topperSection {
  position: relative;
  margin: 0;
  /* print / share buttons */
}
.detailView .topperSection .meta {
  color: #40395F;
  margin-bottom: 0.6rem;
  text-transform: uppercase;
  font-size: 0.8rem;
}
.detailView .topperSection .meta .separator {
  margin: 0 0.4rem;
}
.detailView .topperSection .contentTypeLabels {
  font-size: inherit;
}
.detailView .topperSection h1 {
  margin-top: 0;
}
.detailView .topperSection hr {
  margin: 2rem 0 0;
}
.detailView .topperSection .topperContent {
  padding: 4rem 0 2rem;
}
.detailView .topperSection .authorTeam a {
  color: #555555;
}
.detailView .topperSection .authorTeam a:hover, .detailView .topperSection .authorTeam a:focus {
  color: #8D7249;
}
.detailView div.topHighlight {
  margin: 1rem auto 2rem;
  padding: 1rem 0 1rem 2rem;
  position: relative;
  border-left: solid 2px #8D7249;
  color: #8D7249;
  text-align: left;
  font-size: 1.1rem;
  font-weight: 700;
}
.detailView div.topHighlight p {
  color: inherit;
  font-weight: 700;
  font-style: normal;
}
.detailView div.topHighlight p:last-of-type {
  margin-bottom: 0;
}
.detailView .overview {
  margin-top: 0;
}
.detailView .overview .readMoreButtonWrapper {
  margin-top: 2rem;
  display: flex;
  align-items: center;
  justify-content: center;
}
.detailView .overview .readMoreButtonWrapper .toggleReadMore {
  margin: 0 auto;
}
.detailView div.socialAndSharing {
  display: flex;
  display: flex;
  flex: 0 1 auto;
  flex-wrap: wrap;
  flex-direction: row;
  margin-left: -0.5rem;
  margin-right: -0.5rem;
  box-sizing: border-box;
  padding: 1rem 0;
}
.detailView div.socialAndSharing > ul {
  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;
}
.detailView div.socialAndSharing ul.socialLinks {
  font-size: 1.8rem;
}
.detailView div.socialAndSharing ul.socialLinks li {
  align-items: flex-end;
}
.detailView div.socialAndSharing ul.sharingLinks {
  font-size: 1.8rem;
}
.detailView div.socialAndSharing ul.sharingLinks li {
  align-items: flex-end;
}

/* Content Specfic detailView Styles */
/* Team Detail View */
.detailView.teammember .bioTopContent {
  position: relative;
  width: 100%;
  display: grid;
  grid-template-columns: 3fr 2fr;
  overflow: hidden;
  color: #40395F;
}
@media only screen and (max-width: 1299px) {
  .detailView.teammember .bioTopContent {
    grid-template-columns: 3fr 2fr;
  }
}
@media only screen and (max-width: 1024px) {
  .detailView.teammember .bioTopContent {
    grid-template-columns: 1fr 1fr;
  }
}
@media only screen and (max-width: 767px) {
  .detailView.teammember .bioTopContent {
    grid-template-columns: auto;
  }
  .detailView.teammember .bioTopContent .bioContact {
    order: 1;
  }
  .detailView.teammember .bioTopContent .bioContact .listView.teammembers .cardView.teammember .cardContent {
    max-width: 100%;
  }
  .detailView.teammember .bioTopContent .bioPhotoWrapper {
    order: 0;
  }
  .detailView.teammember .bioTopContent .bioPhotoWrapper .imgWrapper img {
    aspect-ratio: 3/2;
    -o-object-fit: contain;
       object-fit: contain;
  }
}
.detailView.teammember .bioTopContent a {
  color: #40395F;
}
.detailView.teammember .bioTopContent .bioMobileButtons {
  visibility: hidden;
  position: absolute;
  top: 2rem;
  right: 1rem;
  z-index: 5;
}
@media only screen and (max-width: 650px) {
  .detailView.teammember .bioTopContent .bioMobileButtons {
    visibility: visible;
  }
  .detailView.teammember .bioTopContent .bioMobileButtons a {
    background-color: #40395F;
    border-radius: 100%;
    height: 2rem;
    width: 2rem;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: 0.5rem;
    position: relative;
    cursor: pointer;
    transition: all 0.2s ease, font-size 0s linear, padding 0s linear, margin 0s linear, outline 0s linear;
  }
  .detailView.teammember .bioTopContent .bioMobileButtons a:before {
    content: none;
  }
  .detailView.teammember .bioTopContent .bioMobileButtons a svg {
    color: #fff;
  }
  .detailView.teammember .bioTopContent .bioMobileButtons a:hover {
    transform: scale(1.2);
  }
}
.detailView.teammember .bioTopContent .bioPhotoWrapper {
  flex: auto;
  display: flex;
  flex-direction: row-reverse;
  width: 100%;
  flex-basis: auto;
  position: relative;
}
.detailView.teammember .bioTopContent .bioContact {
  display: flex;
  height: 100%;
  flex-direction: column;
  justify-content: center;
  margin-top: 2rem;
}
.detailView.teammember .bioTopContent .bioContact .nameDesignationsPronunciation {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
  padding: 0.25rem 0;
  /* title */
  /* designations */
  /* audio */
}
.detailView.teammember .bioTopContent .bioContact .nameDesignationsPronunciation h1 {
  position: relative;
  margin: 0.25rem 0;
}
.detailView.teammember .bioTopContent .bioContact .nameDesignationsPronunciation h1 span {
  font-size: 60%;
  font-weight: 300;
}
.detailView.teammember .bioTopContent .bioContact .nameDesignationsPronunciation h1:after {
  content: none;
}
.detailView.teammember .bioTopContent .bioContact .nameDesignationsPronunciation .designations {
  color: #E6E6F3;
  display: block;
  margin: 0;
}
.detailView.teammember .bioTopContent .bioContact .nameDesignationsPronunciation .audioFile {
  display: inline-block;
  margin: 0;
  padding-left: 1rem;
  font-size: 1.4rem;
}
.detailView.teammember .bioTopContent .bioContact .nameDesignationsPronunciation .audioFile a:hover {
  color: #E6E6F3;
}
.detailView.teammember .bioTopContent .bioContact h4.position {
  color: #63569F;
}
.detailView.teammember .bioTopContent .bioContact .calltobars {
  display: flex;
  justify-content: space-between;
  border: solid 1px #707070;
  padding: 0.5rem 0;
  margin-bottom: 0.5rem;
  border-left: none;
  border-right: none;
}
.detailView.teammember .bioTopContent .bioContact .calltobars span {
  text-transform: uppercase;
  font-weight: 700;
}
.detailView.teammember .bioTopContent .bioContact .calltobars ul {
  display: flex;
  justify-content: flex-end;
}
.detailView.teammember .bioTopContent .bioContact .calltobars ul li {
  padding-left: 0.25rem;
}
.detailView.teammember .bioTopContent .bioContact .contactInfo {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  margin: 0;
}
.detailView.teammember .bioTopContent .bioContact .contactInfo .prefixLabel {
  color: #8D7249;
}
.detailView.teammember .bioTopContent .bioContact .listView.offices {
  margin: 1rem 0 0 0;
}
.detailView.teammember .bioTopContent .bioContact .listView.offices p {
  margin: 0;
}
.detailView.teammember .bioTopContent .bioContact .languages .title {
  color: #8D7249;
}
.detailView.teammember .bioTopContent .bioContact .officesWrapper {
  display: flex;
  margin-top: 1rem;
}
.detailView.teammember .bioTopContent .bioContact .officesWrapper .listViewTitle {
  color: #8D7249;
}
.detailView.teammember .bioTopContent .bioContact .officesWrapper .listView.offices {
  display: flex;
  margin: 0;
  /* width: 100%; */
  /* justify-content: flex-start; */
  /* align-items: flex-end; */
  flex: 0;
  gap: 0.25rem;
}
.detailView.teammember .bioTopContent .bioContact .officesWrapper .listView.offices li + li {
  border-left: 1px solid #8D7249;
  padding-left: 0.35rem;
}
.detailView.teammember .bioTopContent .bioContact .officesWrapper .listView.offices li {
  display: inline;
}
.detailView.teammember .bioTopContent .bioContact .officesWrapper .listView.offices li .cardView.office {
  background-color: transparent;
  -webkit-clip-path: none;
          clip-path: none;
  border: none;
}
.detailView.teammember .bioTopContent .bioContact .officesWrapper .listView.offices li .cardView.office .cardContent {
  margin: 0;
  padding: 0;
  background-color: transparent;
  border: none;
}
.detailView.teammember .bioTopContent .bioContact .listView.teammembers .cardView.teammember {
  -webkit-clip-path: none;
          clip-path: none;
  background-color: transparent;
  border: none;
}
.detailView.teammember .bioTopContent .bioContact .listView.teammembers .cardView.teammember:after {
  content: none;
}
.detailView.teammember .bioTopContent .bioContact .listView.teammembers .cardView.teammember .cardContent {
  padding: 0;
  margin: 0;
  background-color: transparent;
}
.detailView.teammember .bioTopContent .bioContact .listView.teammembers .cardView.teammember .cardContent .contactInfo {
  margin: 0;
  min-height: 0;
}
.detailView.teammember .bioTopContent .bioContact .listView.teammembers .cardView.teammember .cardContent .contactInfo a {
  color: #40395F;
}
.detailView.teammember .bioTopContent .bioContact .listView.teammembers .cardView.teammember .cardContent h4 {
  margin: 0.5rem 0 0 0;
  border-top: solid 1px #63569F;
  padding-top: 1.5rem;
}
.detailView.teammember .bioTopContent .bioContact .listView.teammembers .cardView.teammember .cardContent h5 {
  margin: 0 0 0.5rem 0;
  color: #63569F;
}
.detailView.teammember .personalQuote {
  font-size: 2.5rem !important;
  margin-bottom: 0 !important;
  padding: 1rem;
  border-top: solid 1px #E6E6F3;
  text-align: center;
}
.detailView.teammember .jumpMenuWrapper .printAndShare {
  padding: 1rem 0;
  margin: 1rem 0;
  border-top: solid 1px #40395F;
}
.detailView.teammember .mainContent .overview {
  padding-bottom: 3rem;
}
.detailView.teammember .mainContent .overview iframe {
  max-width: 100%;
  width: 960px;
  aspect-ratio: 16/9;
  border: 0;
  display: block;
  margin: 2rem 0;
}

.detailView.insight.eventitem .sidebarGrid .sideContent {
  width: 450px;
  max-width: 100%;
}
.detailView.insight.eventitem #stickyElement {
  background-color: #F4F4FA;
}
.detailView.insight.eventitem #stickyElement.fixed {
  background-color: transparent;
}
.detailView.insight.eventitem .topperSection .topperContent .topperTitle h1 {
  font-size: clamp(40px, 2.6017391304px + 0.0365217391 * 100vw, 61px);
}
.detailView.insight.eventitem .topperSection .topperContent .topperTitle h1 span {
  color: #8F8FCB;
}
.detailView.insight.eventitem div.cpdBanner {
  background-color: #40395F;
  -webkit-clip-path: polygon(0% 0%, 0% 100%, 100% 100%, 100% 100px, calc(100% - 100px) 0%);
          clip-path: polygon(0% 0%, 0% 100%, 100% 100%, 100% 100px, calc(100% - 100px) 0%);
  padding: 50px;
}
.detailView.insight.eventitem div.cpdBanner .container {
  display: flex;
  justify-content: flex-end;
  align-items: center;
}
.detailView.insight.eventitem .cpdCard {
  background-color: #63569F;
  -webkit-clip-path: polygon(0% 0%, 100% 0%, 100% calc(100% - 60px), calc(100% - 60px) 100%, 0% 100%, 0% 0%);
          clip-path: polygon(0% 0%, 100% 0%, 100% calc(100% - 60px), calc(100% - 60px) 100%, 0% 100%, 0% 0%);
  border-top-left-radius: 70px;
  border-bottom-left-radius: 70px;
  overflow: hidden;
  display: grid;
  padding: 18px 36px 18px 18px;
  align-content: center;
  grid-template-columns: 80px auto;
  gap: 20px;
  width: -moz-fit-content;
  width: fit-content;
}
.detailView.insight.eventitem .cpdCard .imgWrapper img {
  aspect-ratio: 1;
  -o-object-fit: contain;
     object-fit: contain;
  width: 80px;
  height: auto;
  border-radius: 100%;
  overflow: hidden;
}
.detailView.insight.eventitem .cpdCard .cpdSummary {
  max-width: 225px;
  font-size: 16px;
}
.detailView.insight.eventitem .eventDetails {
  color: #40395F;
  font-size: 16px;
}
.detailView.insight.eventitem .eventDetails h2 {
  font-size: 24px;
  margin: 0 0 1rem 0;
}
.detailView.insight.eventitem .eventDetails .cost span, .detailView.insight.eventitem .eventDetails .location span {
  color: #8D7249;
  padding-left: 8px;
}
.detailView.insight.eventitem .eventDetails .cpdSummary {
  color: #8D7249;
  margin-bottom: 36px;
}
.detailView.insight.eventitem .eventDetails div.eventSuffix {
  margin: 24px 0;
}
.detailView.insight.eventitem .eventPart .eventPartContent {
  padding: 36px 0;
}
.detailView.insight.eventitem .cardView.session {
  position: relative;
  background-color: #63569F;
  padding: 36px 200px 26px 36px;
  margin: 36px 0;
  min-height: 400px;
  -webkit-clip-path: polygon(0% 0%, 100% 0%, 100% calc(100% - 100px), calc(100% - 100px) 100%, 0% 100%, 0% 0%);
          clip-path: polygon(0% 0%, 100% 0%, 100% calc(100% - 100px), calc(100% - 100px) 100%, 0% 100%, 0% 0%);
}
.detailView.insight.eventitem .cardView.session span.sessionNumber {
  position: absolute;
  right: 36px;
  top: 36px;
  font-weight: 900;
  font-size: 180px;
  opacity: 0.1;
  color: white;
  width: 300px;
  height: 300px;
  border: 30px solid #F4F4FA;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: transparent;
  text-align: center;
}
/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region QR Codes and Online Business Card */
/****************************************************************************************************/
/* The QRCode Image itself */
span.QRCodeWrapper {
  display: flex;
  align-items: center;
  width: -moz-fit-content;
  width: fit-content;
  flex-direction: column;
  border: 1px solid black;
  background: #fff;
  margin: 1rem 0;
  padding: 0.5rem;
}
span.QRCodeWrapper a {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
span.QRCodeWrapper img {
  width: 100px;
}
span.QRCodeWrapper span.QRCodeLabel {
  font-size: 0.8rem;
}

/* Modal version */
#QRModal {
  display: none;
}

#QRModalMobile {
  display: none;
}

#QRModal {
  max-width: 100%;
  background-color: white;
  padding: 1rem;
  border: 1px solid #CCCCCC;
  border-radius: 1rem;
}
#QRModal span.QRCodeWrapper {
  border: none;
  margin: 0;
  padding: 0;
}
#QRModal span.QRCodeWrapper img {
  width: 280px;
}

/* THE BIO CARD (Online Business Card) */
.bioCardTemplate a {
  text-decoration: none;
}
.bioCardTemplate header .bioCardHeader .container.narrow {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.5rem;
}
.bioCardTemplate main .bd .detailView.teammember.bioCard {
  --busCardImageWidth: 150px;
}
.bioCardTemplate main .bd .detailView.teammember.bioCard .busCard {
  position: relative;
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-bottom: 2rem;
}
.bioCardTemplate main .bd .detailView.teammember.bioCard .busCard .busCardHeader {
  display: flex;
  justify-content: space-around;
  width: 100%;
  position: relative;
  z-index: 1;
}
.bioCardTemplate main .bd .detailView.teammember.bioCard .busCard .busCardHeader .busCardLogo {
  display: flex;
  justify-content: flex-end;
  align-items: flex-start;
  height: auto;
  width: var(--busCardImageWidth);
  background-image: url(/CFImages/logo.png);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: top right;
}
.bioCardTemplate main .bd .detailView.teammember.bioCard .busCard .busCardHeader .busCardLogo img {
  width: 100%;
}
.bioCardTemplate main .bd .detailView.teammember.bioCard .busCard .busCardHeader .busCardImage {
  width: var(--busCardImageWidth);
  border: 3px solid #fff;
  background-color: #E6E6F3;
  border-radius: 0;
  overflow: hidden;
}
.bioCardTemplate main .bd .detailView.teammember.bioCard .busCard .busCardContent {
  background-color: #fff;
  padding: 6rem 3rem 3rem;
  width: calc(100% - var(--busCardImageWidth)/2);
  margin-top: calc(var(--busCardImageWidth)/2 * -1);
  position: relative;
  z-index: 0;
  /* Call To Action Links (View Full Bio, Download Contact) */
}
.bioCardTemplate main .bd .detailView.teammember.bioCard .busCard .busCardContent h3 {
  margin: 0;
  font-size: 1rem;
}
.bioCardTemplate main .bd .detailView.teammember.bioCard .busCard .busCardContent .fullTitle .nameAndPronunciation {
  margin-top: 1rem;
}
.bioCardTemplate main .bd .detailView.teammember.bioCard .busCard .busCardContent .fullTitle .nameAndPronunciation h1 {
  font-size: 1.5rem;
  font-weight: 700;
  color: #40395F;
  margin: 0;
}
.bioCardTemplate main .bd .detailView.teammember.bioCard .busCard .busCardContent .fullTitle .nameAndPronunciation h1:after {
  content: none;
}
.bioCardTemplate main .bd .detailView.teammember.bioCard .busCard .busCardContent .fullTitle .nameAndPronunciation span.audioFile {
  padding-left: 1rem;
}
.bioCardTemplate main .bd .detailView.teammember.bioCard .busCard .busCardContent .fullTitle .designationsAndPronouns span.designations {
  font-size: 1rem;
}
.bioCardTemplate main .bd .detailView.teammember.bioCard .busCard .busCardContent .fullTitle .designationsAndPronouns .pronounsWrapper ul li {
  font-size: 1rem;
}
.bioCardTemplate main .bd .detailView.teammember.bioCard .busCard .busCardContent .callToActionWrapper {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 1rem;
  justify-content: space-between;
  margin-top: 1.5rem;
  font-size: 1.25rem;
}
.bioCardTemplate main .bd .detailView.teammember.bioCard .busCard .busCardContent .callToActionWrapper .socialLinks {
  font-size: 1.5rem;
  display: flex;
  gap: 1rem;
  align-items: center;
}
.bioCardTemplate main .bd .detailView.teammember.bioCard .busCard .busCardContent .callToActionWrapper .button {
  margin: 0;
}
.bioCardTemplate main .bd .detailView.teammember.bioCard .busCard .busCardContent .contactInfo {
  border-top: solid 1px #CCCCCC;
  padding-top: 2rem;
  margin: 2rem 0;
}
.bioCardTemplate main .bd .detailView.teammember.bioCard .busCard .busCardContent .contactInfo li {
  display: flex;
  gap: 1rem;
  margin-bottom: 1rem;
}
.bioCardTemplate main .bd .detailView.teammember.bioCard .busCard .busCardContent .contactInfo li .icon {
  background-color: #40395F;
  border-radius: 100%;
  height: 3rem;
  width: 3rem;
  display: flex;
  justify-content: center;
  align-items: center;
}
.bioCardTemplate main .bd .detailView.teammember.bioCard .busCard .busCardContent .contactInfo li .icon:before {
  content: none;
}
.bioCardTemplate main .bd .detailView.teammember.bioCard .busCard .busCardContent .contactInfo li .icon svg {
  color: #fff;
}
.bioCardTemplate main .bd .detailView.teammember.bioCard .additionalInformation {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 2rem;
  /* ShortBio */
  /* Languages Spoken*/
  /* Location */
  /* Assistants */
  /* Social Media */
}
.bioCardTemplate main .bd .detailView.teammember.bioCard .additionalInformation div.shortBio {
  width: 80%;
  text-align: center;
}
.bioCardTemplate main .bd .detailView.teammember.bioCard .additionalInformation .languagesSpoken {
  display: flex;
  flex-direction: row;
  gap: 0.25rem;
}
.bioCardTemplate main .bd .detailView.teammember.bioCard .additionalInformation .languagesSpoken p {
  font-weight: bold;
  margin: 0;
  text-align: right;
}
.bioCardTemplate main .bd .detailView.teammember.bioCard .additionalInformation .related.wrapper {
  border: 1px solid #CCCCCC;
  border-radius: 1rem;
  box-shadow: rgba(0, 0, 0, 0.19) 0px 10px 20px, rgba(0, 0, 0, 0.23) 0px 6px 6px;
  padding: 2rem;
  width: 100%;
}
.bioCardTemplate main .bd .detailView.teammember.bioCard .additionalInformation .related.wrapper h2.listViewTitle {
  margin: 0 0 0.5rem 0;
  font-size: 1.2rem;
  text-transform: uppercase;
  color: black;
  font-weight: 700;
}
.bioCardTemplate main .bd .detailView.teammember.bioCard .additionalInformation .related.teammembersWrapper.assistant .cardView.teammember .itemContent {
  padding: 0;
}
.bioCardTemplate main .bd .detailView.teammember.bioCard .additionalInformation .socialLinks {
  font-size: 1.5rem;
  display: flex;
  gap: 1.5rem;
}
.bioCardTemplate main .bd .detailView.teammember.bioCard span.QRCodeWrapper img {
  width: 150px;
}
@media only screen and (max-width: 650px) {
  .bioCardTemplate main .bd .detailView.teammember.bioCard .busCard {
    justify-content: flex-start;
    align-items: center;
    flex-direction: column;
  }
  .bioCardTemplate main .bd .detailView.teammember.bioCard .busCard .busCardImage {
    position: relative;
    left: initial;
    width: var(--busCardImageWidth);
  }
  .bioCardTemplate main .bd .detailView.teammember.bioCard .busCard .busCardContent {
    margin-top: calc((var(--busCardImageWidth)/2) * -1);
    padding: calc(2rem + var(--busCardImageWidth)/2) 2rem 2rem 2rem;
    width: 100%;
  }
  .bioCardTemplate main .bd .detailView.teammember.bioCard .busCard .busCardContent .busCardLogo {
    background-position: top left;
  }
}
.bioCardTemplate footer .bioCardFooter {
  text-align: center;
}

/* #endregion */
/****************************************************************************************************/
/* Insight Detail View */
.detailView.insight .topperSection .topperContent .topperTitle h1 {
  margin-top: 0;
}
.detailView.insight .overview {
  margin-bottom: 4rem;
}

/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Expertises + Sectors  */
/****************************************************************************************************/
/* expertise tree view */
.expertisesWrapper li {
  border-bottom: solid 1px #63569F;
}
.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: #6b5738;
}
.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/plus.svg);
}
.expertisesWrapper .treeViewWrapper .k-treeview .k-item .k-icon.k-i-collapse:before {
  background-image: url(/CFImages/Icons/minus.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/plus-white.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/minus-white.svg);
}
.expertisesWrapper .treeViewWrapper .k-treeview .level1 > .k-item {
  margin-bottom: 0.8rem;
}

/*plain hierarchical ul*/
.expertises .level1 li, .sectors .level1 li {
  padding: 0.75rem 0;
  border-bottom: solid 1px #63569F;
  position: relative;
}
.expertises .level1 li a, .sectors .level1 li a {
  text-transform: uppercase;
  font-weight: 700;
  color: #40395F;
  font-size: 1.1rem;
}
.expertises .level1 li:hover, .sectors .level1 li:hover {
  background-color: #E6E6F3;
}
.expertises .level1 li:hover a, .sectors .level1 li:hover a {
  text-decoration: none;
}
.expertises .level1 li .level2, .sectors .level1 li .level2 {
  display: none;
}
.expertises .level1 li ::after, .sectors .level1 li ::after {
  content: "";
  display: inline-block;
  width: 0;
  height: 0;
  border-top: 8px solid transparent;
  border-bottom: 8px solid transparent;
  border-left: 8px solid #40395F;
  /* Color of the arrow */
  position: absolute;
  right: 1rem;
  top: 50%;
  transform: translateY(-50%);
}

/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Documents */
/****************************************************************************************************/
.document {
  font-size: 0.8rem;
  background-color: #F7F7F7;
}
.document a {
  width: 100%;
  display: block;
  padding: 1rem 1.4rem 0.8rem 1.4rem;
  text-decoration: none !important;
  border-bottom: 1px solid #40395F;
}
.document a .iconExtension {
  width: 1.5rem;
  flex-grow: 0;
  flex-basis: auto;
  align-items: center;
  justify-content: center;
  color: #40395F;
}
.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: #eaeaea;
  border-color: #8D7249;
}
.document a:focus:focus-visible .grid .col.iconExtension {
  color: #8D7249;
}
.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: #eaeaea;
  border-color: #8D7249;
}
.document a:hover .grid .col.iconExtension {
  color: #8D7249;
}
.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: #40395F;
  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: #A3A3A3;
}
.fieldGroups .k-dropdown .k-dropdown-wrap {
  border: 1px solid #CCCCCC;
  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: #555555;
  -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/plus.svg);
  background-size: 0.6rem auto;
}

.k-list-container {
  border: 1px solid #A3A3A3;
  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: #8D7249;
}
.k-list-optionlabel.k-state-selected:hover,
.k-list .k-item.k-state-selected:hover {
  background-color: #7c6440;
}

/* Filters */
.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;
}
.filtersContainer .openModal {
  height: 1.5rem;
  width: 1.5rem;
  border-radius: 50%;
  padding: 0;
  margin: 0.25rem;
  font-size: 50%;
}

/* Keyword Search */
.keywordSearchWrapper {
  margin-bottom: 1.4rem;
  position: relative;
  display: grid;
  grid-template-columns: 1fr 6rem;
  max-width: 600px;
}
.keywordSearchWrapper input[type=search] {
  border: none;
  background-color: transparent;
  border-bottom: 1px solid #CCCCCC;
  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, #40395F, #40395F 50%, transparent 50%, transparent 75%);*/
  /*background-image: linear-gradient(to right, #A3A3A3, #A3A3A3 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 {
  margin: 0;
  border: none;
}
.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 #8D7249;
  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: #8D7249;
  color: white;
}
.searchByInitialContainer .alphaList a.initialFilter:hover {
  background-color: #8D7249;
  color: white;
}
.searchByInitialContainer .alphaList a.disabledFilter {
  color: #707070;
  cursor: not-allowed;
  opacity: 0.5;
  text-decoration: none;
  border-color: #707070;
}

/* 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;
}

/* Active filters tags/pills */
#activeFilters {
  margin: 1rem 0;
}
#activeFilters .activeFilterGroup {
  display: inline-flex;
  flex-wrap: wrap;
}
#activeFilters .activeFilterGroup .activeFilterTag {
  border: 1px solid #E6E6E6;
  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: #707070;
}
#activeFilters .activeFilterGroup .activeFilterTag:not(:last-of-type) {
  margin-right: 0.6rem;
}
#activeFilters .activeFilterGroup .activeFilterTag:after {
  top: 50%;
  content: " ";
  right: 0.8rem;
  color: #8D7249;
  background-image: url(/CFImages/Icons/plus.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: #A3A3A3;
}
#activeFilters .activeFilterGroup .activeFilterTag:active {
  border-color: #A3A3A3;
}

.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: #707070;
  font-style: italic;
}

#filteredContentResult li.noResults {
  color: #707070;
  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 #CCCCCC;
}
.popup_wrapper .button.close:before {
  background-image: url(/CFImages/Icons/plus.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/plus-white.svg);*/
}
.popup_wrapper .button.close:active {
  background-color: transparent;
}
.popup_wrapper .button.close:active:before {
  /*background-image: url(/CFImages/Icons/plus-white.svg);*/
}

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

/* Text Fields */
input {
  color: #555555;
  width: 100%;
  height: 3.15rem;
  max-width: 100%;
  padding: 0.2rem 1rem;
  padding-right: 3rem;
  text-overflow: ellipsis;
  border: 1px solid #CCCCCC;
  background-color: white;
  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;
  /*    &:hover, &:focus {
      @include placeholder {
          opacity: 0.4;
      }
  }*/
}
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;
}
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;
}
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;
}
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;
}
input:focus:focus-visible {
  outline: 1px solid #8D7249;
  outline-offset: 0;
}
textarea {
  width: 100%;
  min-height: 5rem;
  display: block;
  border: 1px solid #CCCCCC;
  font-weight: 100;
}
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 #8D7249;
  outline-offset: 0;
}

/* Select Lists */
select {
  width: 100%;
  height: 3.15rem;
  max-width: 100%;
  color: #555555;
  cursor: pointer;
  border: 1px solid #CCCCCC;
  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/plus.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(64, 57, 95, 0.7);
}
select:focus {
  outline: none;
  outline: 1px solid #8D7249;
  outline-offset: 0;
}
select > option {
  text-transform: none;
}
select > option:checked, select > option:hover {
  background-color: #E6E6E6;
}

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

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

/*  */
form {
  /* Form-only Buttons */
}
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] 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: #ff3c00;
}
[data-sf-role=form-container] [data-sf-role=success-message] h3 {
  color: #8D7249;
}
[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] {
  /* 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) */
  color: #8D7249;
  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: 300;
  text-align: center;
  text-transform: uppercase;
  text-decoration: none !important;
  border: 1px solid #8D7249;
  border-radius: 4px;
  background-color: transparent;
  transition: all 0.2s ease, font-size 0s linear, padding 0s linear, margin 0s linear, outline 0s linear;
  white-space: nowrap;
  letter-spacing: 0.1em;
  height: auto;
  width: -moz-fit-content;
  width: fit-content;
  /* FontAwesome Icons in markup */
  /* Reverse (flip the colours of the standard button */
  /* Outline */
}
[data-sf-role=form-container] [data-sf-role=file-field-inputs] input[type=file]:after {
  width: 1em;
  height: 1em;
  display: inline-block;
  content: initial;
  position: relative;
  background-repeat: no-repeat;
  background-position: center;
  margin-left: 0.6em;
}
[data-sf-role=form-container] [data-sf-role=file-field-inputs] input[type=file] [class*=fa-] {
  margin-left: 0.6rem;
}
[data-sf-role=form-container] [data-sf-role=file-field-inputs] input[type=file]:hover, [data-sf-role=form-container] [data-sf-role=file-field-inputs] input[type=file]:focus {
  color: white;
  background-color: #7c6440;
  text-decoration: none !important;
}
[data-sf-role=form-container] [data-sf-role=file-field-inputs] input[type=file]:active {
  color: white;
  text-decoration: none !important;
  background-color: #6b5738;
}
[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 #8D7249;
  }
}
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 #8D7249;
  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: #8D7249;
  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 */
/****************************************************************************************************/
.searchHiddenWrapper {
  background-color: white;
  padding: 0.5rem 0;
}
.searchHiddenWrapper .form-inline {
  width: 100%;
}
.searchHiddenWrapper .searchHidden {
  display: flex;
  align-items: center;
  justify-content: center;
}
.searchHiddenWrapper .searchHidden .formGroup {
  display: flex;
  width: 80%;
}
.searchHiddenWrapper .searchHidden .formGroup input[type=search] {
  width: 90%;
  color: #40395F;
  background-color: transparent;
  border: 1px solid #40395F;
  padding: 0.2rem 3rem 0.2rem 1em;
  font-size: 1rem;
  background-repeat: no-repeat;
  background-position: right 1em center;
  text-overflow: ellipsis;
}
.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: #40395F;
  text-transform: none;
}
.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: #40395F;
  text-transform: none;
}
.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: #40395F;
  text-transform: none;
}
.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: #40395F;
  text-transform: none;
}
.searchHiddenWrapper .searchHidden .formGroup input[type=search]:hover::-webkit-input-placeholder, .searchHiddenWrapper .searchHidden .formGroup input[type=search]:focus::-webkit-input-placeholder {
  opacity: 0.4;
}
.searchHiddenWrapper .searchHidden .formGroup input[type=search]:hover:-moz-placeholder, .searchHiddenWrapper .searchHidden .formGroup input[type=search]:focus:-moz-placeholder {
  opacity: 0.4;
}
.searchHiddenWrapper .searchHidden .formGroup input[type=search]:hover::-moz-placeholder, .searchHiddenWrapper .searchHidden .formGroup input[type=search]:focus::-moz-placeholder {
  opacity: 0.4;
}
.searchHiddenWrapper .searchHidden .formGroup input[type=search]:hover:-ms-input-placeholder, .searchHiddenWrapper .searchHidden .formGroup input[type=search]:focus:-ms-input-placeholder {
  opacity: 0.4;
}
.searchHiddenWrapper .searchHidden .formGroup input[type=search]:focus {
  outline: 2px solid #E6E6F3;
}
.searchHiddenWrapper .searchHidden .formGroup .sfsearchSubmit {
  color: #40395F;
  background: transparent;
  margin: 0 0 0 -2.5rem;
  padding: 0.25rem 0.5rem;
  font-size: 1.1rem;
  border: none;
}
.searchHiddenWrapper .searchHidden .formGroup .sfsearchSubmit svg {
  margin: 0;
}
.searchHiddenWrapper .searchHidden .formGroup .sfsearchSubmit:hover {
  cursor: pointer;
  color: #40395F;
}
.searchHiddenWrapper button.searchCollapse {
  border: none;
}
.searchHiddenWrapper button.searchCollapse [class*=fa-] {
  margin-left: 0;
}

.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: 650px) {
  .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: #555555;
}

/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Global Alerts */
/****************************************************************************************************/
/* refer to class .dark for a lot of the styles */
.alertsHeader {
  height: auto;
}

/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Accordions + FAQs */
/****************************************************************************************************/
.accordionGroup.k-group .k-item {
  margin-bottom: 0;
  width: 100%;
  background-color: #8D7249;
  white-space: normal;
}
.accordionGroup.k-group .k-item .accordionTop {
  padding: 0.5rem 1rem 0.5rem 2rem;
  border-bottom: solid 1px #ab8d5e;
}
.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/plus.svg);
}
.accordionGroup.k-group .k-item .accordionTop .k-icon.k-i-collapse:before {
  background-image: url(/CFImages/Icons/minus.svg);
}
.accordionGroup.k-group .k-item .k-content {
  display: block;
  background-color: #E6E6E6;
  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 #8D7249;
}
.imageGallery.slider .gallerySliderNav .splide__slide:before {
  content: " ";
  background-color: #F7F7F7;
  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 */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Page - Home Page */
/****************************************************************************************************/
.homePage .insights.cases .case .overlayWrapper {
  display: grid;
  grid-template-columns: 1fr 1fr;
}
.homePage .insights.cases .case .overlayWrapper .imgWrapper {
  order: 1;
}
.homePage .insights.cases .case .cardContent {
  background-color: #63569F;
  color: #fff;
  border: none;
}
.homePage .insights.cases .case .cardContent * {
  color: inherit;
}

/* Lawyer Search (FindASearch) */
.findASearch {
  width: 37rem;
  max-width: 100%;
}
.findASearch input[type=text] {
  color: #707070;
  width: 100%;
  height: 3.15rem;
  max-width: 100%;
  padding: 0.75rem 3rem 0.75rem 0;
  text-overflow: ellipsis;
  background-color: transparent;
  font-size: 1.2rem;
  font-weight: 300;
  transition: all 0.2s ease, font-size 0s linear, padding 0s linear, margin 0s linear, outline 0s linear;
  background-image: url(/CFImages/Icons/magnifying-glass-sharp-solid-secondary.svg);
  background-repeat: no-repeat;
  background-position: top 0.75rem right 0.5rem;
  background-size: 1.2rem auto;
  outline-offset: -2px;
  border: none;
  box-sizing: border-box;
  height: 2.5rem;
  border-bottom: 1.5px solid #63569F;
}
@media only screen and (max-width: 767px) {
  .findASearch input[type=text] {
    font-size: 0.8rem;
  }
}
.findASearch input[type=text]:focus {
  outline: none !important;
}
.findASearch input[type=text]::placeholder {
  color: #8D7249;
  font-weight: 800;
  text-transform: uppercase;
}
.findASearch .k-widget:focus, .findASearch .k-widget:active, .findASearch .k-widget:hover, .findASearch .k-widget.k-state-focused {
  outline: none !important;
}
.findASearch .k-widget.k-combobox {
  width: 100%;
  color: #707070;
  border: none;
  box-shadow: none;
  background: transparent;
}
.findASearch .k-widget.k-combobox > .k-state-focused {
  box-shadow: none !important;
}
.findASearch .k-widget.k-combobox .k-dropdown-wrap {
  border: none !important;
  background: transparent;
}
.findASearch .k-widget.k-combobox .k-select {
  display: none !important;
}
.findASearch #findALawyerDropdownContainer .k-list .k-item:first-of-type {
  display: none !important;
}
.findAnything fieldset {
  border: none;
  padding: 0;
}

/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Page - Careers (and child pages) */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Insights (shared styles) - Cards and Detail View  */
/****************************************************************************************************/
.wrapper.careersWrapper .k-treeview .listView.careers {
  --card-width: 100%;
  gap: 0;
}
.wrapper.careersWrapper .k-treeview .listView.careers .k-item {
  margin-bottom: 0.5rem;
  padding: 0;
  /*.k-icon:before {
          background-image: url(/CFImages/Icons/plus-white.svg);
      }

      .k-icon.k-i-collapse:before {
          background-image: url(/CFImages/Icons/minus-white.svg);
      }*/
}
.wrapper.careersWrapper .k-treeview .listView.careers .k-item .k-icon {
  right: 1rem;
}
.wrapper.careersWrapper .k-treeview .listView.careers .k-item .k-in {
  width: 100%;
  background-color: transparent;
  padding: 1rem 2rem 1rem 0;
  white-space: normal;
  border-bottom: solid 1px #63569F;
}
.wrapper.careersWrapper .k-treeview .listView.careers .k-item .k-in h4 {
  margin: 0;
  padding: 0;
}
.wrapper.careersWrapper .k-treeview .listView.careers .k-item .k-in.k-state-focused {
  box-shadow: none;
}
.wrapper.careersWrapper .k-treeview .listView.careers .k-item .k-content {
  display: block;
  background-color: #E6E6E6;
  padding: 2rem;
  white-space: normal;
}
.wrapper.careersWrapper .k-treeview .listView.careers .k-item .k-content .k-in {
  display: none;
}

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

#printModal {
  display: none;
}

.printModalWrapper #printModal {
  display: block;
}

#printModal {
  width: 36rem;
  background-color: white;
  padding: 4rem;
  padding-top: 3rem;
  border: 1px solid #CCCCCC;
}
#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;
  text-transform: uppercase;
}
#printModal .label {
  font-family: "Montserrat", sans-serif;
  font-weight: 400;
  text-transform: uppercase;
  letter-spacing: 0.35em;
  letter-spacing: 0.25em;
  font-size: 0.7rem;
  color: #40395F;
  margin-top: 0;
}
#printModal h3 {
  color: #8D7249;
  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 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 - Position, Display, Float */
/****************************************************************************************************/
/* Floating */
.float-none {
  float: none;
}

.float-left {
  float: left;
}

.float-right {
  float: right;
}

/* Positioning */
.position-absolute {
  position: absolute;
}

.position-relative {
  position: relative;
}

.position-fixed {
  position: fixed;
}

/* Display */
.display-flex {
  display: flex;
}

.display-block {
  display: block;
}

.display-inline-block {
  display: inline-block;
}

.display-inline {
  display: inline;
}

.display-none {
  display: none;
}

/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Utility Classes - Text Alignment */
/****************************************************************************************************/
.txt-c, table .txt-c, table tr .txt-c, table tr td.txt-c {
  text-align: center !important;
}

.txt-l, table .txt-l, table tr .txt-l, table tr td.txt-l {
  text-align: left !important;
}

.txt-r, table .txt-r, table tr .txt-r, table tr td.txt-r {
  text-align: right !important;
}

.txt-t, table .txt-t, table tr .txt-t, table tr td.txt-t, table tr th.txt-t {
  vertical-align: top !important;
}

.txt-b, table .txt-b, table tr .txt-b, table tr td.txt-b, table tr th.txt-b {
  vertical-align: bottom !important;
}

.txt-m, table .txt-m, table tr .txt-m, table tr td.txt-m, table tr th.txt-m {
  vertical-align: middle !important;
}

/* Table cell content alignment */
/* horizontal alignment */
/* vertical alignment */
/* #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;
}

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

/* ##### txt colours ##### (replaces old txtGrey txtPrimary etc.)*/
/*    Examples: .txt-primary .txt-secondary .txt-grey .txt-grey-dark */
.txt-white {
  color: #fff !important;
}
.txt-black {
  color: #000 !important;
}
.txt-primary {
  color: #40395F !important;
}
.txt-primary-light {
  color: #63569F !important;
}
.txt-primary-dark {
  color: #2b263f !important;
}
.txt-secondary {
  color: #8D7249 !important;
}
.txt-secondary-light {
  color: #ab8d5e !important;
}
.txt-secondary-dark {
  color: #6b5738 !important;
}
.txt-tertiary {
  color: #E6E6F3 !important;
}
.txt-tertiary-light {
  color: white !important;
}
.txt-tertiary-dark {
  color: #c4c4e2 !important;
}
.txt-grey {
  color: #707070 !important;
}
.txt-grey-dark {
  color: #555555 !important;
}
.txt-grey-xdark {
  color: #222222 !important;
}
.txt-grey-light {
  color: #A3A3A3 !important;
}
.txt-grey-xlight {
  color: #CCCCCC !important;
}
.txt-grey-xxlight {
  color: #E6E6E6 !important;
}
.txt-grey-xxxlight {
  color: #F7F7F7 !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: #555555 !important;
}
.bg-light {
  background-color: #E6E6E6 !important;
}
.bg-offwhite {
  background-color: #E6E6F3 !important;
}
.bg-primary {
  background-color: #40395F !important;
}
.bg-primary-light {
  background-color: #63569F !important;
}
.bg-primary-dark {
  background-color: #2b263f !important;
}
.bg-secondary {
  background-color: #8D7249 !important;
}
.bg-secondary-light {
  background-color: #ab8d5e !important;
}
.bg-secondary-dark {
  background-color: #6b5738 !important;
}
.bg-tertiary {
  background-color: #E6E6F3 !important;
}
.bg-tertiary-light {
  background-color: white !important;
}
.bg-tertiary-dark {
  background-color: #c4c4e2 !important;
}
.bg-grey {
  background-color: #707070 !important;
}
.bg-grey-dark {
  background-color: #555555 !important;
}
.bg-grey-xdark {
  background-color: #222222 !important;
}
.bg-grey-light {
  background-color: #A3A3A3 !important;
}
.bg-grey-xlight {
  background-color: #CCCCCC !important;
}
.bg-grey-xxlight {
  background-color: #E6E6E6 !important;
}
.bg-grey-xxxlight {
  background-color: #F7F7F7 !important;
}

/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Utility Classes - Misc */
/****************************************************************************************************/
/* (simple, single-purpose classes intended for use in Siteifnity editors, etc) */
.border {
  border: 1px solid #CCCCCC;
}

.equalTopMargins > :first-child {
  margin-top: 1rem;
}

.pullQuote {
  padding: 30px 50px;
  border-top: 1px solid black;
  border-bottom: 1px solid black;
  font-size: 1.3em;
  font-weight: 700;
}

.subtle {
  color: #60568f;
  font-size: 0.8em;
}

.center {
  text-align: center;
}

.k-list .k-item.k-state-selected, .k-list-optionlabel.k-state-selected {
  background-color: #40395F !important;
  color: #fff;
}

@media only screen and (max-width: 1024px) {
  .highlightArea .phxxl {
    padding: 0 !important;
  }
}
.highlightGrid .cmsContent {
  display: grid;
  grid-template-columns: 3rem 3fr;
}
.highlightGrid .cmsContent h3 {
  color: #8D7249;
  font-size: 3rem;
  line-height: 0.9;
}

.noMargin {
  margin: 0 !important;
}

.marginUpOne {
  margin-top: -1px;
}

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

.marginUpMore {
  margin-top: -6rem !important;
}

.imgCover, .imgCover img {
  -o-object-fit: cover;
  object-fit: cover;
  height: 100%;
  width: 100%;
}

.imgContain, .imgContain img {
  -o-object-fit: contain;
     object-fit: contain;
  height: 100%;
  width: 100%;
}

.imgBottomLeft {
  position: absolute;
  bottom: 0;
  left: 0;
  transform: rotate(180deg) !important;
  width: 150px;
}

.imgBottomRight {
  position: absolute;
  bottom: 0;
  right: 0;
  transform: rotate(90deg) !important;
  width: 150px;
}

.highlightListItem li {
  margin-bottom: 0.5rem;
}
.highlightListItem h5 {
  margin: 0;
}
.highlightListItem strong {
  color: #8D7249;
}

/* #endregion */
/****************************************************************************************************/
/*Filtered content*/
.pagination-page {
  color: #40395F;
}
.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: #40395F;
  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 #40395F 1px;
  border-radius: 6px;
  overflow-y: auto;
}
.goToPageLbl li {
  margin-right: 3px;
}
.goToPageLbl li.selected {
  background: #F7F7F7;
}

.goToPageLbl:hover {
  color: #40395F;
}

/* #endregion */
/****************************************************************************************************/
.featuredGrid {
  display: block;
  position: relative;
}
.featuredGrid .container {
  display: grid;
  grid-template-columns: 50% 50%;
}
.featuredGrid .content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-content: center;
  padding: 2rem 0;
}
.featuredGrid.withPhoto .container {
  grid-template-columns: 1fr 1fr;
  border-radius: 0;
  background-color: transparent;
  gap: 80px;
}
.featuredGrid.withPhoto div.photo {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
}
.featuredGrid.withPhoto div.photo img {
  width: 100%;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 1;
  margin: 0 auto;
  padding-bottom: 2rem;
}
@media (max-width: 1024px) {
  .featuredGrid .container {
    display: flex;
    flex-direction: column;
    grid-template-columns: 1fr;
    width: 100%;
  }
  .featuredGrid .container .content {
    padding: 2rem 0;
  }
  .featuredGrid.reversed .container {
    flex-direction: column-reverse;
  }
}

.historySlider {
  display: grid;
  grid-template-columns: 20vw 80vw;
  background-color: #000;
}
@media only screen and (max-width: 500px) {
  .historySlider {
    grid-template-columns: 30vw 70vw;
  }
  .historySlider .cardView p {
    padding-right: 2rem;
  }
}
.historySlider .custom-nav {
  display: flex;
  gap: 1rem;
  flex-direction: column;
  align-items: flex-end;
  border-right: 2px solid #8D7249;
  padding: 2rem 0 2rem 2rem;
}
.historySlider .custom-nav a {
  padding-right: 2rem;
  display: block;
  color: #8D7249;
  position: relative;
  transition: none;
}
.historySlider .custom-nav a:hover {
  color: #fff;
}
.historySlider .custom-nav a.active {
  color: #fff !important;
}
.historySlider .custom-nav a.active:after {
  content: "";
  display: inline-block;
  width: 0;
  height: 0;
  border-top: 10px solid transparent;
  border-right: 10px solid #8D7249;
  border-bottom: 10px solid transparent;
  /* Color of the arrow */
  position: absolute;
  right: 0;
  top: 50%;
  transform: translatey(-50%);
}
.historySlider .splide .splide__track {
  height: 100%;
  width: 80vw;
}
.historySlider .splide .splide__track .slide.is-active:after {
  content: "";
  position: absolute;
  z-index: 2;
  top: 0;
  right: 0;
  width: 60px;
  aspect-ratio: 1;
  background-color: #F4F4F2;
  -webkit-clip-path: polygon(0% calc(100% - 60px), 60px 100%, 100% 100%, 100% 0%, 0% 0%);
          clip-path: polygon(0% calc(100% - 60px), 60px 100%, 100% 100%, 100% 0%, 0% 0%);
}
.historySlider .splide .splide__track .slide.is-active:after {
  top: -1px;
}
.historySlider .splide .splide__track .slide.is-active .imgWrapper img {
  opacity: 0.3;
}
.historySlider .splide .splide__track .slide.is-active .cardView {
  background-color: rgba(171, 141, 94, 0.7);
}
.historySlider .splide .splide__track .slide .imgWrapper {
  position: absolute;
  top: 0;
  z-index: -1;
  height: 100%;
}
.historySlider .splide .splide__track .slide .imgWrapper img {
  -o-object-fit: cover;
     object-fit: cover;
  opacity: 0;
  transition: all 0.2s ease, font-size 0s linear, padding 0s linear, margin 0s linear, outline 0s linear;
}
.historySlider .splide .splide__track .slide .cardView {
  flex-direction: column;
  gap: 1rem;
  position: static;
  height: 100%;
  padding: 2rem 1.5rem;
  color: #fff;
}
.historySlider .splide .splide__track .slide .cardView * {
  color: inherit;
}

/**********************************************************************************************************************/
/* #region Hero Slider / Animation */
/**********************************************************************************************************************/
.hero {
  height: calc(100vh - var(--header-height));
  min-height: 34rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
  --header-height: 116px;
}
.hero .hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr);
  transform: translateY(-5vh);
}
@media only screen and (max-width: 767px) {
  .hero .hero-grid {
    grid-template-columns: minmax(0, 1.2fr) minmax(0, 0.5fr);
  }
}
.hero .hero-grid > :nth-child(1) {
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.hero .hero-grid > :nth-child(1) .hero-blurb-wrap {
  margin: 4rem 0;
  font-size: 1rem;
  color: #40395F;
  width: 37rem;
  max-width: 100%;
}
.hero .hero-grid > :nth-child(1) .hero-blurb-wrap p:last-child {
  margin-bottom: 0;
}
.hero .hero-grid > :nth-child(2) {
  position: relative;
}
.hero .hero-grid > :nth-child(2) .lottie-controls {
  position: absolute;
  top: 0;
  left: 0;
  display: none !important;
}
.hero .hero-grid > :nth-child(2) .animation-wrap {
  width: 100%;
  aspect-ratio: 1/1;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.hero .hero-grid > :nth-child(2) .animation-wrap .animation {
  inset: 0;
  position: absolute;
  display: flex;
  justify-content: center;
  align-items: center;
}
.hero .hero-grid > :nth-child(2) .animation-wrap .animation svg {
  width: 100%;
  height: 100%;
}
.hero .hero-grid > :nth-child(2) .animation-wrap .animation.active {
  display: block;
}

.heroAnimation {
  /*    display: flex;
  justify-content: center;
  flex-direction: column;*/
}
.heroAnimation #hero-headline {
  position: relative;
  font-size: 3rem;
  font-size: clamp(2rem, -1.7236rem + 5.8182vw, 3rem);
  line-height: 1;
}
.heroAnimation #hero-headline .headline-top {
  position: relative;
  display: block !important;
  color: #63569F !important;
  height: 1em !important;
}
.heroAnimation #hero-headline .headline-bottom {
  display: block !important;
}

#lottie_canvas {
  width: 100%;
  aspect-ratio: 1/1;
}

/* #endregion */
/**********************************************************************************************************************/
/****************************************************************************************************/
/*#region Enhanced Search */
/****************************************************************************************************/
.searchModal {
  display: none;
}

.searchBox {
  display: flex;
  justify-content: flex-end;
}
.searchBox .sfsearchOpen {
  color: #40395F;
  margin: 0;
  padding: 0;
  border: none;
  margin-right: 0.8rem;
  width: 2rem;
  height: 2rem;
  background: none;
  font-size: 1.6rem;
}
.searchBox .sfsearchOpen:focus, .searchBox .sfsearchOpen:hover {
  background-color: transparent;
}
.searchBox .sfsearchOpen:active {
  background-color: transparent;
}

.popup_background.searchModalBackground {
  opacity: 0.9 !important;
  background-color: #f7f7f7 !important;
}

.popup_wrapper[id^=searchModal] {
  padding: 5rem;
}
@media (max-width: 767px) {
  .popup_wrapper[id^=searchModal] {
    padding: 5rem 2rem;
  }
}
@media (max-width: 500px) {
  .popup_wrapper[id^=searchModal] {
    padding: 5rem 1rem;
  }
}

.searchModal {
  /*width: $container;*/
  width: 42rem;
  max-width: 100%;
  padding: 2.4rem;
  background-color: white;
  border: 1px solid #707070;
  /*@media(max-width: $S_Max) {*/
  /*width: calc(100vw - 4rem);*/
  /*padding: 3rem 2rem;
  }*/
}
.searchModal h3 {
  color: #40395F;
  font-size: 1.6rem;
  margin-top: 0;
  margin-bottom: 0.4rem;
}
@media (max-width: 500px) {
  .searchModal {
    padding: 2rem 1rem;
  }
}
.searchModal fieldset {
  border: none;
  padding: 0;
}
.searchModal fieldset legend {
  font-weight: 600;
  /*margin-bottom: .5em;*/
  color: #707070;
  background-color: white;
  padding: 0 0.4rem;
}
.searchModal .filters {
  display: grid;
  /*grid-template-columns: 1.3fr 2fr;*/
  grid-template-columns: 1fr 1fr;
  margin: 1.4rem 0;
  gap: 1.4rem;
}
.searchModal .filters fieldset {
  border: 1px solid #E6E6E6;
  padding: 1rem;
}
.searchModal .fields input[type=search] {
  margin-right: -1px;
}
.searchModal .fields .button {
  margin: 0;
  border-radius: 0;
  border: 1px solid #CCCCCC;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: auto;
  background-color: white;
}
.searchModal .sfsearchSubmit {
  margin: 0;
}
.searchModal .sfsearchSubmit:after {
  width: var(--button-icon-size);
  height: var(--button-icon-size);
  background-size: cover;
  /*right: calc(var(--button-icon-size) / -2);*/
}
.searchModal .keywordSearchWrapper {
  gap: 0;
  position: relative;
  display: flex;
  flex-wrap: nowrap;
  --button-icon-size: 2.6rem;
  /*padding-right: calc(var(--button-icon-size) / 2);*/
  /*        button {
      width: 3rem;
      border: $border;
      border-radius: 0;
      margin: 0;
      padding: .2rem .6rem;

      @include focusAndHover {
          .icon {
              &:before {
                  filter: brightness(0) invert(1);
              }
          }
      }
  }*/
}
.searchModal .keywordSearchWrapper input[type=search] {
  background: none;
  z-index: 10;
  /*            border-top-left-radius: 999px;
  border-bottom-left-radius: 999px;*/
}
.searchModal .keywordSearchWrapper .sfsearchSubmit {
  border-bottom-left-radius: 0;
  border-top-left-radius: 0;
  margin-left: -1px;
  /*margin-left: -39px;*/
}
.searchModal .keywordSearchWrapper .sfsearchSubmit:focus {
  outline: 2px solid #40395F;
}
.searchModal input[type=radio] {
  cursor: pointer;
  accent-color: #40395F;
}
.searchModal input[type=checkbox] {
  cursor: pointer;
}
.searchModal input[type=checkbox]:disabled {
  cursor: default;
}
.searchModal .radios {
  /*        display: flex;
  flex-direction: column;*/
  gap: 0.4rem 1.4rem;
  display: grid;
  grid-template-columns: 1fr;
  grid-auto-rows: 1fr;
}
.searchModal .radios .field {
  position: relative;
  min-height: 1rem;
}
.searchModal .radios .field label {
  display: block;
  padding-left: 1.2rem;
}
.searchModal .radios .field label input {
  position: absolute;
  top: 0.1em;
  left: 0;
  line-height: 1;
  height: 1em;
  /*                    
  left: 0;
  top: 50%;
  transform: translateY(-50%);*/
}
.searchModal .radios .field.field-current-page label {
  font-weight: 700;
}
.searchModal .checkboxes {
  width: 100%;
  margin: 0;
  display: grid;
  gap: 0.4rem 1.4rem;
  grid-template-columns: repeat(auto-fit, minmax(8rem, 1fr));
}
.searchModal .checkboxes .field {
  border-color: #e6e6e6;
  display: inline-flex;
  align-items: center;
  font-size: 1rem;
  min-height: 1rem;
}
.searchModal .checkboxes .field label {
  padding: 0 0.5rem;
}
.searchModal .checkboxes .field input[type=checkbox] {
  accent-color: #40395F;
}
.searchModal .checkboxes .field input[type=checkbox]:disabled + label {
  color: #E6E6E6;
}
.searchModal button.close {
  top: 2rem;
  right: 2rem;
  width: 2.6rem;
  height: 2.6rem;
  position: absolute;
  border: none;
  padding: 0;
  border-radius: 999px;
  background-color: white;
  border: none;
  background: transparent;
  color: white;
  font-size: 1.3rem;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #40395F;
}
.searchModal button.close:focus:focus-visible {
  color: white;
  background-color: #707070;
}
.searchModal button.close:hover {
  color: white;
  background-color: #707070;
}
.searchModal button.close:before {
  background-image: url(/CFImages/Icons/plus-red.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;
}
.searchModal button.close html.popup_visible_searchModal-1 #wrapper > main {
  filter: blur(5px);
}

.enhancedSearchResults {
  display: grid;
  grid-template-columns: 16rem 1fr;
  gap: 1.4rem;
  padding-top: 1rem;
  /* Filters */
  /* Search Results List */
}
.enhancedSearchResults .searchFilters {
  grid-column: 1;
  position: relative;
}
.enhancedSearchResults .searchFilters .sticky {
  /*top: var(--header-height);*/
  top: 2rem;
  position: sticky;
  /*            &.stuck {
      inset: initial;
      top: 0;
      position: fixed;
  }*/
}
.enhancedSearchResults .searchFilters .contentTypes input[type=checkbox]:disabled + label {
  color: #E6E6E6;
}
.enhancedSearchResults .searchFilters fieldset {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  border: 1px solid #CCCCCC;
  padding: 1rem;
  width: 100%;
}
.enhancedSearchResults .searchFilters fieldset legend {
  text-transform: none;
  color: #707070;
  font-size: 0.7rem;
}
.enhancedSearchResults .searchFilters fieldset .checkbox {
  width: 100%;
}
.enhancedSearchResults .searchFilters fieldset .checkbox label:after {
  border-color: #E6E6E6;
}
.enhancedSearchResults .searchFilters input {
  color: #707070;
  background: white;
  border: 1px solid #CCCCCC;
}
.enhancedSearchResults .searchFilters select {
  color: #707070;
  border: 1px solid #CCCCCC;
  background-color: white;
}
.enhancedSearchResults .searchFilters .radios {
  display: grid;
  grid-template-columns: 1fr;
  gap: 0.4rem 1.4rem;
}
.enhancedSearchResults .searchFilters .radios .field {
  position: relative;
  min-height: 1rem;
}
.enhancedSearchResults .searchFilters .radios .field label {
  display: block;
  padding-left: 1.2rem;
}
.enhancedSearchResults .searchFilters .radios .field label input {
  position: absolute;
  top: 0.1em;
  left: 0;
  line-height: 1;
  height: 1em;
}
.enhancedSearchResults .searchFilters .checkboxes {
  display: grid;
  gap: 0.4rem 1.4rem;
}
.enhancedSearchResults .searchFilters label.fieldLabel {
  text-transform: none;
  color: #707070;
  font-size: 0.7rem;
}
.enhancedSearchResults .searchFilters .fields {
  display: flex;
  gap: 1rem;
  width: 100%;
  flex-wrap: wrap;
}
.enhancedSearchResults .searchFilters .fields .field {
  width: 100%;
  flex: 1 1 auto;
}
.enhancedSearchResults .loadingCounterWrapper {
  /*        background-color: white;
  border: $border;
  padding: 1rem;
  position: sticky;
  top: var(--header-height);
  z-index: 999;
  margin-bottom: 1rem;
  margin-top: 1.5rem;*/
  margin-bottom: 2rem;
}
.enhancedSearchResults .loadingCounterWrapper #loadingCounter {
  /*margin: 0.5rem 0 2rem;*/
  margin: 0;
  height: 1.4rem;
}
.enhancedSearchResults .loadingCounterWrapper #loadingCounter strong {
  font-style: italic;
}
.enhancedSearchResults .searchResultsWrapper {
  padding-top: 1.2rem;
}
.enhancedSearchResults #searchResults {
  grid-column: 2;
  gap: 1rem;
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
}
.enhancedSearchResults #searchResults > h2 {
  margin-top: 0;
}
.enhancedSearchResults #searchResults ul.results {
  gap: 2rem;
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: auto;
  margin: 2rem 0;
}
.enhancedSearchResults #searchResults ul.results > li {
  width: 100%;
  min-width: 0;
}
.enhancedSearchResults #searchResults div.searchPager {
  margin: 2rem 0;
  text-align: center;
}
.enhancedSearchResults #searchResults 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;
}
.enhancedSearchResults #searchResults 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;
}
.enhancedSearchResults #searchResults div.searchPager ul.pagination li {
  margin-top: 1rem;
}
.enhancedSearchResults #searchResults div.searchPager ul.pagination li.active a {
  color: #8D7249;
}
@media (max-width: 767px) {
  .enhancedSearchResults {
    grid-template-columns: 1fr;
  }
  .enhancedSearchResults .searchFilters .checkboxes {
    display: grid;
    gap: 0.4rem;
    grid-template-columns: repeat(auto-fill, minmax(10rem, 1fr));
    overflow-y: scroll;
    max-height: 7rem;
    font-size: 0.9rem;
  }
}

/* Search Result Card (SHARED) */
.searchResult.cardView {
  border: 1px solid #CCCCCC;
  padding: 1.4rem 1.4rem;
  width: 100%;
  position: relative;
}
.searchResult.cardView.clickable:before {
  inset: 0;
}
.searchResult.cardView .meta {
  display: flex;
  gap: 0.7rem;
  align-items: center;
  margin-bottom: 1.2rem;
}
.searchResult.cardView .meta .labelValuesSeparator {
  width: 1px;
  height: 1em;
  background-color: #40395F;
  margin: 0 0.6em;
}
.searchResult.cardView .meta .areas {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  gap: 0.4rem;
  margin: 0;
}
.searchResult.cardView .meta .areas .area {
  font-size: 12px;
  background: #40395F;
  color: white;
  padding: 4px 10px;
}
.searchResult.cardView .meta .dates {
  display: flex;
  align-items: center;
  color: #707070;
  display: block;
  margin: 0.2em 0;
  font-style: italic;
  /*            &:before {
      content: ' ';
      background-color: $primaryColour;
      width: 1px;
      height: 0.8rem;
      position: relative;
      margin: 0 0.6em;
  }*/
}
.searchResult.cardView .meta .type, .searchResult.cardView .meta .contentType {
  color: white;
  /*background-color: $primaryColour;*/
  background: #707070;
  font-size: 12px;
  padding: 4px 10px;
  display: inline-block;
}
.searchResult.cardView h3 {
  margin: 0;
}
@media (max-width: 767px) {
  .searchResult.cardView h3 {
    font-size: 1.2rem;
  }
}
.searchResult.cardView .preview {
  display: flex;
  gap: 2rem;
}
.searchResult.cardView .preview .image {
  width: 10rem;
  height: 100%;
  flex: 0 0 auto;
}
.searchResult.cardView .preview .image img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
.searchResult.cardView .itemContent .excerpt {
  margin: 0.8rem 0;
  display: -webkit-box;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
}
.searchResult.cardView .links {
  display: flex;
  width: 100%;
  gap: 0.6rem;
  /*justify-content: flex-end;*/
  justify-content: flex-start;
}
.searchResult.cardView .links a {
  border: 1px solid #CCCCCC;
  border-radius: 50px;
  padding: 0.4rem 1rem;
  display: inline-block;
  text-decoration: none;
  background-color: white;
}
.searchResult.cardView .links a svg {
  margin-right: 0.4em;
}
.searchResult.cardView .links .button {
  width: auto;
  min-width: 9rem;
  padding-right: 2.7rem;
}

/* BackEnd Edit Link Styles */
article.detailView, .top.detailView {
  position: relative;
}

a.backendEditLink {
  display: flex;
  margin: 0.5rem 0;
  position: absolute;
  z-index: 5;
  border: 1px solid #40395F;
  border-radius: 0.5rem;
  background: white;
  justify-content: center;
  align-items: center;
  align-content: flex-end;
  width: auto;
  height: auto;
  right: 1rem;
  top: 0;
  padding: 0.5rem;
  color: #40395F !important;
  font-size: 0.8rem;
  gap: 0.4em;
}
a.backendEditLink:hover {
  color: #40395F !important;
}

.icon.audio {
  display: inline-block;
  font-size: 16px;
}
.icon.audio:before {
  content: " ";
  width: 1.4em;
  height: 1.4em;
  display: inline-block;
  background-image: url(/CFImages/Icons/audio.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}

/* #endregion */
/**********************************************************************************************************************/
/****************************************************************************************************/
/* #region Kendo Navigation top-level widget overrides */
/****************************************************************************************************/
/****************************************************************************************************/
/* Kendo Menu Widget */
/*.k-menu {
    &.k-menu-horizontal {
        border: none;
        background: none;
    }

    .k-item {
        .k-link {
            &:focus {
                outline: none;
            }

            &:focus-visible {
                outline: 2px solid red;
            }
        }
    }

    &:not(.k-context-menu) {
        > .k-item {
            &.k-state-focused {
                outline: none;
                box-shadow: none;
            }

            > a.k-state-active {
                color: white;
            }

            .k-group {
                visibility: visible !important;
            }
        }

        &:focus {

            > .k-item {

                &.k-state-focused {
                    outline: none;
                    box-shadow: none;
                }
            }

            &:focus-visible {
                outline: 1px dashed $greyLight;
                outline-offset: 0;

                > .k-item.k-state-focused {
                    outline: $outline;
                    box-shadow: none;
                }
            }
        }
    }
}*/
/****************************************************************************************************/
/* 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-widget .k-in.k-state-selected {
  background-color: inherit;
  color: inherit;
}
.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;
}
.k-treeview .k-item .k-icon:before {
  color: #fff;
  content: " ";
  font-size: 1rem;
}
.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 #E6E6F3;
  outline-offset: 0;
}

/* #endregion */
/****************************************************************************************************/
/* CF Default Menu */
.mainNavWrapper {
  height: 100%;
}
.mainNavWrapper .mainNav:not(.k-menu) .rootMenuItem ul {
  display: none;
}
.mainNavWrapper :is(.mainNav, .k-menu) {
  display: flex;
  justify-content: flex-end;
  flex-wrap: nowrap;
  height: 100%;
  align-items: center;
}
.mainNavWrapper :is(.mainNav, .k-menu) :is(li, .k-item) {
  font-weight: 700;
  font-size: 1rem;
  /*&:focus, &:hover*/
}
.mainNavWrapper :is(.mainNav, .k-menu) :is(li, .k-item):hover ::after {
  content: "";
  display: inline-block;
  width: 0;
  height: 0;
  border-left: 6px solid transparent;
  border-top: 6px solid #8D7249;
  border-right: 6px solid transparent;
  /* Color of the arrow */
  position: absolute;
  left: 50%;
  bottom: -0.1rem;
  transform: translatex(-50%);
}
.mainNavWrapper :is(.mainNav, .k-menu) :is(li, .k-item).selected, .mainNavWrapper :is(.mainNav, .k-menu) :is(li, .k-item).childSelected {
  color: #8D7249;
}
.mainNavWrapper :is(.mainNav, .k-menu) :is(li, .k-item) :is(a, .k-link) {
  font: inherit;
  padding: 0.4em 1em;
  color: #40395F;
  text-transform: uppercase;
  font-weight: 700;
}
.mainNavWrapper :is(.mainNav, .k-menu) :is(li, .k-item) :is(a, .k-link) .k-menu-expand-arrow {
  filter: invert(1);
  margin-left: 0;
}
.mainNavWrapper :is(.mainNav, .k-menu) :is(li, .k-item).k-last {
  /*.k-link {
      padding-right: 0;
  }*/
}
.mainNavWrapper :is(.mainNav, .k-menu) :is(ul, .k-menu-group) {
  border-radius: 0.5rem;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
  padding: 1rem 1.4rem;
  border: none;
  background-color: #40395F;
  display: none;
}
.mainNavWrapper :is(.mainNav, .k-menu) :is(ul, .k-menu-group) :is(a, .k-link) {
  padding: 0.4rem 0;
  color: white;
  background-color: #40395F;
}
.mainNavWrapper :is(.mainNav, .k-menu) :is(ul, .k-menu-group) :is(a, .k-link):focus, .mainNavWrapper :is(.mainNav, .k-menu) :is(ul, .k-menu-group) :is(a, .k-link):hover {
  color: #6b5738;
  background-color: #40395F;
}

/* #endregion */
/****************************************************************************************************/
.k-treeview .subMenu {
  display: grid;
  flex-wrap: wrap;
  gap: 1.5rem;
  grid-template-columns: 1fr 1fr;
}
@media only screen and (max-width: 650px) {
  .k-treeview .subMenu {
    grid-template-columns: 1fr;
  }
}
.k-treeview .subMenu li {
  flex-basis: 48%;
  padding-left: 0;
}
@media only screen and (max-width: 767px) {
  .k-treeview .subMenu li {
    flex-basis: 100%;
  }
}
.k-treeview .subMenu li a {
  display: block;
  border-bottom: solid 1px #63569F;
  padding-bottom: 0.5rem;
  text-transform: uppercase;
  font-weight: 700;
  color: #40395F;
  white-space: normal;
}
.k-treeview .subMenu li a.k-state-focused {
  box-shadow: none;
}
.k-treeview .subMenu li a:hover {
  color: #8D7249;
  text-decoration: none;
  background-color: transparent;
}
.k-treeview .subMenu li ul li {
  padding-top: 1rem;
}
.k-treeview .subMenu li ul li a {
  padding-left: 1rem;
  font-size: 90%;
}

/****************************************************************************************************/
/* #region Hamburger */
/****************************************************************************************************/
.cmsContent button.hamburger {
  width: 35px;
  height: 35px;
  border: none;
  padding: 12px;
  margin: 0;
  position: relative;
  z-index: 500;
  transition: all 0.2s ease, font-size 0s linear, padding 0s linear, margin 0s linear, outline 0s linear;
  border: none !important;
  background: transparent;
}
.cmsContent button.hamburger:focus {
  background-color: transparent !important;
}
.cmsContent button.hamburger:hover {
  cursor: pointer;
  background: transparent !important;
}
.cmsContent button.hamburger:hover .hamburger-inner, .cmsContent button.hamburger:hover .hamburger-inner:after, .cmsContent button.hamburger:hover .hamburger-inner:before {
  background-color: #40395F;
}
.cmsContent button.hamburger .hamburger-inner, .cmsContent button.hamburger .hamburger-inner:after, .cmsContent button.hamburger .hamburger-inner:before {
  position: absolute;
  width: 34px;
  height: 2px;
  transition-timing-function: ease;
  transition-duration: 0.15s;
  transition-property: transform;
  background-color: #40395F;
}
.cmsContent 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;
}
.cmsContent button.hamburger .hamburger-inner:before {
  top: -10px;
  transition: top 75ms ease 0.12s, opacity 75ms ease;
}
.cmsContent button.hamburger .hamburger-inner:after {
  bottom: -10px;
}
.cmsContent button.hamburger .hamburger-inner:after, .cmsContent button.hamburger .hamburger-inner:before {
  display: block;
  content: "";
}
.cmsContent button.hamburger.open {
  z-index: 10000;
}
.cmsContent 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);
  background-color: #fff;
}
.cmsContent button.hamburger.open .hamburger-inner:before {
  top: 0;
  transition: top 75ms ease, opacity 75ms ease 0.12s, color 75ms ease-in;
  opacity: 0;
}
.cmsContent 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);
  background-color: #fff;
}

/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Mobile Menu */
/****************************************************************************************************/
/* sometimes a duplicate of the header, sometimes just a container for the mobile nav */
.mobileHeader {
  position: fixed;
  z-index: 1000;
}
/* tweak other elements when the mobile nav is open */
body.withNavOpen #header {
  top: 0;
  left: 0;
  right: 0;
  bottom: initial;
  position: fixed;
}
body.withNavOpen #header .topHeader .topHeaderGrid .topHeaderGridLeft img {
  position: relative;
  z-index: 10000;
  filter: brightness(0) invert(1);
  width: 200px;
}
body.withNavOpen .listView.offices {
  --card-width: 48%;
}
@media (max-width: 1299px) {
  body.withNavOpen .listView.offices {
    --card-width: 40%;
  }
}
body.withNavOpen .cardView.office .cardContent {
  font-size: 80%;
}

/* the mobile nav menu */
nav.mobileNav {
  top: 0;
  right: 0;
  width: 100%;
  max-width: 100%;
  height: 100%;
  position: fixed;
  padding: 124px 4rem 2rem 4rem;
  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-color: #40395F;
  display: flex;
  /* height: 100%; */
  /*align-items: center;

  @media only screen and (min-width : $L_Max) {
      align-items: flex-start;
  }*/
}
@media only screen and (max-width: 650px) {
  nav.mobileNav {
    padding: 124px 2rem 2rem 2rem;
  }
}
nav.mobileNav.open {
  transform: translateX(0%);
  visibility: visible;
}
nav.mobileNav .k-treeview {
  color: white;
  height: 100%;
}

/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Kendo TreeView inside sideContent */
/****************************************************************************************************/
.sideContent nav {
  width: 100%;
  max-width: 300px;
}

.k-treeview ul.mainTreeNav {
  padding: 1rem 0 2rem;
}
.k-treeview ul.mainTreeNav li.k-item {
  /* above the link */
  /* link styles */
  /* These are any nested groups */
  /* This is the expanded li item */
  /* expand collapse icons */
}
.k-treeview ul.mainTreeNav li.k-item .k-top, .k-treeview ul.mainTreeNav li.k-item .k-mid, .k-treeview ul.mainTreeNav li.k-item .k-bot {
  padding: 0;
}
.k-treeview ul.mainTreeNav li.k-item a.k-link {
  color: #fff;
  font-size: 1.5rem;
  padding: 6px 1.5rem 6px 0;
  text-transform: uppercase;
  white-space: normal;
}
.k-treeview ul.mainTreeNav li.k-item a.k-link.k-state-focused {
  box-shadow: none;
}
.k-treeview ul.mainTreeNav li.k-item a.k-link.k-state-active {
  background-color: inherit;
}
.k-treeview ul.mainTreeNav li.k-item a.k-link.k-state-selected {
  background-color: inherit;
}
.k-treeview ul.mainTreeNav li.k-item a.k-link:hover {
  background-color: transparent;
}
.k-treeview ul.mainTreeNav li.k-item a.k-link:hover:after {
  content: "";
  display: inline-block;
  width: 0;
  height: 0;
  border-top: 10px solid transparent;
  border-left: 10px solid #ab8d5e;
  border-bottom: 10px solid transparent;
  /* Color of the arrow */
  position: absolute;
  left: -1rem;
  top: 50%;
  transform: translatey(-50%);
}
.k-treeview ul.mainTreeNav li.k-item ul.k-group li.k-item {
  padding: 0;
  margin: 0;
  /* Level 2 Nest */
}
.k-treeview ul.mainTreeNav li.k-item ul.k-group li.k-item a.k-link {
  padding-left: 1rem;
  border-left: solid 3px #63569F;
}
.k-treeview ul.mainTreeNav li.k-item ul.k-group li.k-item a.k-link:hover {
  border-color: #ab8d5e;
  color: #ab8d5e;
}
.k-treeview ul.mainTreeNav li.k-item ul.k-group li.k-item ul.k-group li.k-item a.k-link {
  padding-left: 1rem;
}
.k-treeview ul.mainTreeNav li.k-item span.k-icon:before {
  background-size: 1rem;
}
.k-treeview ul.mainTreeNav li.k-item span.k-icon.k-i-expand {
  filter: invert(1);
}
.k-treeview ul.mainTreeNav li.k-item span.k-icon.k-i-collapse {
  filter: invert(1);
}

/* #endregion */
/****************************************************************************************************/
/* #region Top Level Simple */
/****************************************************************************************************/
nav.topLevelSimple {
  width: 100%;
}
nav.topLevelSimple ul {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
nav.topLevelSimple ul a {
  text-decoration: none;
  text-transform: uppercase;
  color: #fff !important;
  opacity: 0.9;
}
nav.topLevelSimple ul a:hover {
  color: #E6E6F3 !important;
}

/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Mega Menu - Disabled by default */
/****************************************************************************************************/
/* .k-animation-container {
    display: block !important;
    overflow: visible !important;

    .k-menu-group {
        display: block !important;
        transform: translateY(0) !important;
    }
}*/
/*nav ul.megaNav {*/
/* (The Mega Dropdown) */
/*.megaContainer {
    display: none; //hide until initialized
}

.k-animation-container {
    width: calc(60vw) !important;
    max-height: 750px !important;
    display: none;*/
/*top: 65px !important;*/
/*top: calc(100% + 3px) !important;
    border: none !important;*/
/*transform: translatex(-50%) !important;
    left: 50% !important;

    .k-item.k-state-default {
        white-space: normal !important;
    }

    .k-group.megaContainer { //individual megamenu container
        width: 100% !important;*/
/* border: solid 2px red;*/
/*box-shadow: 0px 5px 27px 7px rgba(0,0,0,0.12);
            display: flex !important;
            flex-direction: row;
            flex-wrap: wrap;
            padding: 2.5rem;

            a {
                padding-bottom: .3rem;
                padding-left: 0;

                &:after {
                    transition: $transitionMenuItem;
                }

                &:hover {
                    @extend %borderBottomShort;
                }
            }

            > li.k-item {
                display: inline-block;
                width: 100%;
                font-size: .9rem;
                padding-bottom: .5rem;

                &:hover {
                    background-color: transparent;
                }

                h4 {
                    margin-top: 0;
                }

                .k-content {
                    background-color: transparent;

                    .level1 {
                        li {
                            padding-bottom: .5rem;
                        }
                    }

                    .button {
                        white-space: normal;
                        text-align: left;

                        a:hover {
                            color: #fff;
                        }
                    }
                }
            }

            &.commonPanel {
                column-count: 2;
                display: block !important;
            }

            &.expertises {
                display: flex;

                ul {
                    margin: 0;
                }

                .k-first {
                    flex-basis: 70%;
                }

                .k-last {
                    flex-basis: 30%;
                }

                .k-content {
                    &.megaLeft {
                        margin-right: 2rem;

                        .level1 {
                            column-count: 2;
                            column-gap: 2rem;

                            li {
                                display: inline-block;
                                width: 100%;
                            }
                        }
                    }
                }
            }

            &.teammembers {
                flex-direction: column;
            }

            &.insights {
                padding: 0;

                ul.level1 {
                    column-count: 2;
                }

                .k-content {
                    flex-direction: column;
                }

                > li {
                    padding: 2.5rem;
                }

                li:first-of-type {
                    background-color: $greyXXXLight !important;
                }

                li.k-item + li.k-item {
                    padding-top: 1rem;
                }
            }
        }
    }
}*/
/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Nav - Description List */
/****************************************************************************************************/
/*nav.descriptionList {
margin: 5rem 0 4.5rem !important;

h2 {
    color: $primaryColour;
    font-size: 1rem;
    font-family: $primaryFont;
    margin-bottom: 2rem;
}

ul.menuItems.listView {
    @include grid(4, 2rem, "li");
    margin-top: 4rem;

    li.menuItem {
        position: relative;
        margin-bottom: 2.4rem;*/
/*flex-basis: 25%;*/
/*margin: 0;*/
/*&:before {
            content: ' ';
            position: absolute;
            inset: -1rem;
            background-color: rgba($secondaryColour, .1);
            z-index: 1;
            opacity: 0;
            display: block;
            transition: $transition;
        }

        > {
            position: relative;
            z-index: 2;
        }

        &.selected {
            //background-color: $secondaryColourTransparent;

            h3:after {
                background-color: $secondaryColour;
            }
        }

        &:hover {
            &:before {
                opacity: 1;
            }
        }

        .navItemInner {*/
/*padding: 1rem;*/
/*position: relative;
                z-index: 9;

                .bgImgWrapper {
                    @include aspectRatioBox(1 1, ".bgImg");
                }

                a {
                    text-decoration: none;
                    color: inherit;
                    display: block;
                }

                h3 {
                    margin: 0;
                    position: relative;
                    padding-bottom: 1.5rem;
                    color: $grey;

                    &:after {
                        content: ' ';
                        position: absolute;
                        background-color: $primaryColour;
                        height: 1px;
                        width: calc(50% - 1.5rem);
                        left: 0;
                        bottom: 0;
                    }
                }
            }
        }
    }
}*/
/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Nav - Thumbnail List */
/****************************************************************************************************/
nav.thumbnailList ul.menuItems {
  flex-wrap: wrap;
  align-items: center;
}
nav.thumbnailList ul.menuItems li.menuItem {
  flex: 1 1 0;
  margin: 0;
  padding: 2rem;
  border: solid 1px #40395F;
  height: 100%;
  align-content: center;
}
nav.thumbnailList ul.menuItems li.menuItem:hover {
  background-color: #E6E6F3;
}
nav.thumbnailList ul.menuItems li.menuItem .navItemInner {
  padding: 2px;
  text-align: center;
}
nav.thumbnailList ul.menuItems li.menuItem .navItemInner .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: 100%;
}
nav.thumbnailList ul.menuItems li.menuItem .navItemInner .bgImgWrapper:after {
  /* to clear float */
  content: "";
  display: table;
  clear: both;
}
nav.thumbnailList ul.menuItems li.menuItem .navItemInner .bgImgWrapper .bgImg {
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  position: absolute;
}
nav.thumbnailList ul.menuItems li.menuItem .navItemInner .bgImgWrapper .bgImg {
  transition: all 0.2s ease, font-size 0s linear, padding 0s linear, margin 0s linear, outline 0s linear;
}
nav.thumbnailList ul.menuItems li.menuItem .navItemInner a {
  text-decoration: none;
  color: inherit;
  display: block;
}
nav.thumbnailList ul.menuItems li.menuItem .navItemInner h3 {
  padding-bottom: 1.5rem;
  color: #40395F;
  margin: 1rem auto;
}

/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Sitemap */
/****************************************************************************************************/
/*nav {
    ul.siteMapComplete {
        padding-left: 2em;

        li {
            padding: 0.35em 0 0 0.25em;
            list-style-type: disc;
            text-transform: none;
        }

        li.rootMenuItem {
            list-style-type: square;
            text-transform: uppercase;

            ul {
                padding-left: 2em;
            }

            ul.level2 {
                padding-left: 4em;
            }

            ul.level3 {
                padding-left: 6em;
            }

            ul.level4 {
                padding-left: 8em;
            }
        }

        li.reset {
            padding: 0;
            margin: 0;
            list-style-type: none;
        }

        li a.toggleAction.button {
            margin: 0.5em 0 0 0;
        }
        // FAQ Toggle
        li a.toggleAction.withPlusMinus {
            .openIcon {
                display: inline-block;
            }

            .closeIcon {
                display: none;
            }
        }
        // Active FAQ Toggle
        li.active {
            a.toggleAction.withPlusMinus {
                .openIcon {
                    display: none;
                }

                .closeIcon {
                    display: inline-block;
                }
            }
        }

        div.toggleContent {
            display: none;

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

.tabstrip.k-widget {
  display: flex;
}
.tabstrip.k-widget .button .k-flat {
  display: none;
}
.tabstrip.k-widget.k-tabstrip-left .k-tabstrip-items {
  flex-direction: column;
}
.tabstrip.k-widget.k-tabstrip {
  background: none;
  margin-bottom: 1rem;
}
.tabstrip.k-widget.k-tabstrip .k-tabstrip-items {
  border-right: solid 1px #63569F;
  padding-right: 2rem;
  height: 100%;
}
.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 {
  font-size: 1.1rem;
  font-weight: 700;
  text-transform: uppercase;
  color: #40395F;
  padding: 0.5rem;
  border: none;
  display: block;
}
.tabstrip.k-widget.k-tabstrip .k-tabstrip-items .k-item .k-link:hover {
  color: #8D7249;
}
.tabstrip.k-widget.k-tabstrip .k-tabstrip-items .k-item .k-link:hover ::after {
  content: "";
  display: inline-block;
  width: 0;
  height: 0;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
  border-right: 10px solid #8D7249;
  /* Color of the arrow */
  position: absolute;
  right: calc(-2rem - 1px);
}
.tabstrip.k-widget.k-tabstrip .k-tabstrip-items .k-item.k-state-active {
  background: transparent;
  border-color: transparent;
}
.tabstrip.k-widget.k-tabstrip .k-tabstrip-items .k-item.k-state-active .k-link {
  color: #8D7249;
}
.tabstrip.k-widget.k-tabstrip .k-tabstrip-items .k-item.k-state-active .k-link ::after {
  content: "";
  display: inline-block;
  width: 0;
  height: 0;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
  border-right: 10px solid #8D7249;
  /* Color of the arrow */
  position: absolute;
  right: calc(-2rem - 1px);
}
.tabstrip.k-widget.k-tabstrip:focus {
  box-shadow: none;
}
.tabstrip.k-widget.k-tabstrip .k-content {
  border: none;
  padding: 0 2rem 1rem;
  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 #E6E6F3;
  outline-offset: 0;
}

/* #endregion */
/****************************************************************************************************/
/* 
Media queries for tablet and mobile (general guidelines for breakpoints globally set in the _variables file) 
Mobile ($S_Max)   Tablet ($M_Min and $M_Max)  Small Desktop ($L_Min and $L_Max)  Large Desktop ($XL_Min - This is the standard for all styles)
*/
/* Large Desktop (switch between simple and mobile nav) */
/* Small Desktop (switch between simple and mobile nav) */
@media only screen and (max-width: 1299px) {
  .site-footer .mainFooter .mainFooterGrid .footerLeft {
    padding-top: 2rem;
    padding-bottom: 2rem;
    /* the background */
  }
  .site-footer .mainFooter .mainFooterGrid .footerLeft:before {
    right: -100vw;
  }
  .site-footer .mainFooter .mainFooterGrid .footerLeft .footerLeftGrid {
    display: flex;
    flex-direction: row;
  }
  .site-footer .mainFooter .mainFooterGrid .footerLeft .footerLeftGrid .logoAndAddress {
    width: 50%;
    flex: initial;
  }
  .site-footer .mainFooter .mainFooterGrid .footerLeft .footerLeftGrid .studentLinks {
    width: 50%;
    flex: initial;
  }
  .site-footer .mainFooter .mainFooterGrid .footerRight {
    padding-left: 0;
    padding-top: 2rem;
    padding-bottom: 2rem;
  }
  .site-footer .mainFooter .mainFooterGrid .footerRight .footerSitemapGrid {
    width: 100%;
  }
}
/* Tablet */
@media only screen and (max-width: 1024px) {
  .hamburger {
    display: block !important;
  }

  #header .mainNavWrapper {
    display: none !important;
  }
  #header .topHeader .topHeaderGridLeft img {
    width: 250px;
  }
  #header .header {
    display: none;
    height: 0;
    width: 0;
    padding: 0;
  }
}
/* Mobile Only */
@media only screen and (max-width: 767px) {
  body.withNavOpen .listView.offices {
    --card-width: 100%;
  }

  #header .topHeader .topHeaderGrid .topHeaderGridLeft img {
    width: 180px;
  }

  .k-treeview .k-item {
    font-size: 1.4rem;
  }
}
/* XS Mobile Only */
/* ### 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 */
/* Subheader */
/* Base unit used for spacing gutters */
/* Buttons */
@media print {
  body {
    background-color: white !important;
  }

  .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;
  }

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

  .viewMoreOuter {
    display: none;
  }
}
/* ############## PRINTABLE PDF STYLES ############### */
.printWrapper {
  background-color: #fff;
  font-size: 12px;
  font-family: "Roboto", sans-serif;
  width: 100%;
  height: 100%;
  /*.h3, .cmsContent.highlightFirstElement > :first-child {
      font-size: 1.1rem !important;
  }*/
  /* Shared List views and cards */
  /* Two Column Table */
  /* bottom table (for resource etc) */
  /* ##### CARDS Sections #####*/
  /* ##### DETAIL VIEWS #### */
  /* ##### Team Bio Specific Styles*/
}
.printWrapper a {
  color: #40395F;
}
.printWrapper .cmsContent {
  color: #40395F;
  font-size: 13px;
}
.printWrapper .cmsContent a {
  color: #8D7249;
}
.printWrapper .cmsContent p {
  font-size: 13px;
  line-height: 1.4;
}
.printWrapper .cmsContent ul {
  margin-bottom: 20px;
  font-size: 13px;
}
.printWrapper .cmsContent ul li {
  margin: 0;
  padding: 4px 0 0 20px;
  line-height: 1.4;
  word-break: break-word;
  font-size: 13px;
}
.printWrapper .cmsContent ul li p:last-of-type {
  margin-bottom: 0;
}
.printWrapper .cmsContent ul li:before {
  background-size: 4px auto;
  top: 10px;
}
.printWrapper .cmsContent blockquote {
  margin: 2rem 0;
  font-size: 100%;
  border: none;
  padding: 0;
}
.printWrapper table {
  width: auto;
  height: auto;
  margin: 0;
  padding: 0;
  border: none;
  border-collapse: inherit;
  border-spacing: 0;
  border-color: inherit;
  vertical-align: inherit;
  text-align: left;
  font-weight: inherit;
}
.printWrapper table tr td {
  vertical-align: top;
}
.printWrapper table tr td.alignBottom {
  vertical-align: bottom;
}
.printWrapper table tr td.alignMiddle {
  vertical-align: middle;
}
.printWrapper h1, .printWrapper h2, .printWrapper h3, .printWrapper h4, .printWrapper h5 {
  text-align: left;
  color: inherit;
}
.printWrapper .avoidPageBreak {
  page-break-inside: avoid;
}
.printWrapper .container {
  width: 100%;
  padding: 0;
  margin: 0;
  max-width: 100% !important;
}
.printWrapper .paddedWithMargin {
  padding: 0.5rem 2rem 2rem;
  margin: 1.5rem 0;
}
.printWrapper .baseFont {
  font-family: "Roboto", sans-serif;
}
.printWrapper .viewAllMoreWrapper {
  display: none;
}
.printWrapper .listView {
  display: block;
  gap: initial;
  margin-bottom: 0;
}
.printWrapper .mainContent {
  padding: 0 2rem 0 0rem;
}
.printWrapper table.mainGrid tr td {
  vertical-align: top;
  border: none;
  border-spacing: 0px;
}
.printWrapper table.mainGrid .sideContent {
  padding: 0 0 1rem 0;
}
.printWrapper table.mainGrid .sideContent h2 {
  font-size: 20px;
  margin-bottom: 1.5rem;
}
.printWrapper table.fullGrid {
  width: 100%;
}
.printWrapper .detailView section.overview {
  padding: 20px 0;
}
.printWrapper .detailView div.borderTop {
  border-top: 1px solid #E6E6F3;
  padding: 16px 0 48px 0;
}
.printWrapper .detailView div.centered h2.listViewTitle {
  text-align: center;
  white-space: nowrap;
  margin-bottom: 20px;
  color: #40395F;
}
.printWrapper .detailView div.centered h2.listViewTitle br {
  display: none;
}
.printWrapper .detailView div.padded {
  padding: 16px 40px 48px 40px;
}
.printWrapper .detailView h2 {
  font-size: 22px;
  padding-bottom: 0;
  break-inside: avoid;
  margin: 2rem 0 0.75rem;
}
.printWrapper .detailView h2:after {
  content: "";
  display: block;
  height: 90px;
  position: relative;
  margin-bottom: -90px;
}
.printWrapper .detailView h2.smallAfter:after {
  content: "";
  display: block;
  height: 50px;
  position: relative;
  margin-bottom: -50px;
}
.printWrapper .detailView h3 {
  font-size: 16px;
  padding-bottom: 0;
  break-inside: avoid;
  margin: 1rem 0 0.75rem;
}
.printWrapper .detailView section.related.expertises .listView.related {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 2rem;
}
.printWrapper .detailView section.related.expertises .listView.related .cardView.expertiseandsector a {
  text-transform: uppercase;
  text-decoration: none;
  font-weight: 700;
  font-size: 16px;
}
.printWrapper .detailView .listView.related.rankings {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 4rem 2rem;
}
.printWrapper .detailView .listView.related.insights .cardView.insight {
  border: none;
  background: none;
  min-height: 0;
  padding: 0;
  margin: 0 0 1rem 0;
  break-inside: avoid;
}
.printWrapper .detailView .listView.related.insights .cardView.insight .cardContent {
  border: none;
  background: none;
  min-height: 0;
  padding: 0;
  -webkit-clip-path: none;
          clip-path: none;
}
.printWrapper .detailView .listView.related.insights .cardView.insight .cardContent h3 {
  text-transform: uppercase;
  font-size: 14px;
  margin: 0 0 6px 0;
}
.printWrapper .detailView .listView.related.insights .cardView.insight .cardContent h3 a {
  color: #40395F;
}
.printWrapper .detailView .listView.related.insights .cardView.insight .cardContent .meta {
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: row;
  gap: 1rem;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: center;
  align-content: flex-start;
}
.printWrapper .detailView .listView.related.insights .cardView.insight .cardContent .meta div.dates {
  width: auto;
  margin: 0;
  font-size: 13px;
}
.printWrapper .detailView .listView.related.insights .cardView.insight .cardContent .meta span {
  color: #8D7249 !important;
  font-size: 13px;
}
.printWrapper .detailView .listView.related.insights .cardView.insight .cardContent .meta .contentTypeLabels, .printWrapper .detailView .listView.related.insights .cardView.insight .cardContent .meta .eventType {
  text-transform: none;
  font-size: 13px;
  margin-bottom: 0;
}
.printWrapper .detailView .listView.related.insights .cardView.insight .cardContent .meta .eventStatus {
  color: #40395F;
}
.printWrapper .detailView .listView.related.insights .cardView.insight .cardContent div.cpdSummary {
  margin-top: 10px;
  font-size: 13px;
}
.printWrapper .detailView .listView.related.insights .cardView.insight:after {
  content: "";
  display: block;
  height: 80px;
  position: relative;
  margin-bottom: -80px;
}
.printWrapper .detailView .cardView.testimonial blockquote.testimonialQuote {
  margin: 0 0 20px 0;
  padding: 0;
  border: none;
  color: #40395F;
  font-size: 16px;
  font-weight: normal;
}
.printWrapper .detailView .cardView.testimonial blockquote.testimonialQuote p {
  color: #40395F;
  font-size: 16px;
  font-weight: normal;
}
.printWrapper .detailView .cardView.testimonial blockquote.testimonialQuote p:last-of-type {
  margin-bottom: 0;
}
.printWrapper .detailView .cardView.testimonial blockquote.testimonialQuote cite.testimonialSource {
  margin: 0;
  color: #40395F;
  font-size: 12px;
}
.printWrapper .detailView .cardView.ranking {
  break-inside: avoid;
}
.printWrapper .detailView .cardView.ranking:after {
  content: "";
  display: block;
  height: 130px;
  position: relative;
  margin-bottom: -130px;
}
.printWrapper .detailView.teammember .bioTopContent {
  display: block !important;
  margin-bottom: 1rem;
  border-bottom: solid 1px #40395F;
  /* top table (for contact and image) */
}
.printWrapper .detailView.teammember .bioTopContent table.topGrid .bioContact {
  position: relative;
  font-size: 12px;
  height: 100%;
  width: 100%;
  padding: 20px 0 30px 0;
}
.printWrapper .detailView.teammember .bioTopContent table.topGrid .bioContact .nameDesignationsPronunciation h1 {
  font-size: 30px;
  margin: 0;
}
.printWrapper .detailView.teammember .bioTopContent table.topGrid .bioContact .nameDesignationsPronunciation .designations {
  color: #63569F;
  line-height: 30px;
}
.printWrapper .detailView.teammember .bioTopContent table.topGrid .bioContact h4.position {
  margin: 20px 0;
  font-size: 18px;
}
.printWrapper .detailView.teammember .bioTopContent table.topGrid .bioContact .listView.related.teammembers {
  grid-template-columns: 1fr 1fr;
  display: grid;
}
.printWrapper .detailView.teammember .bioTopContent table.topGrid .bioContact .listView.related.teammembers .cardView.teammember .cardContent h4 {
  font-size: 14px;
}
.printWrapper .detailView.teammember .bioTopContent table.topGrid .bioContact .listView.related.teammembers .cardView.teammember .cardContent h5 {
  font-size: 12px;
}
.printWrapper .detailView.teammember .bioTopContent table.topGrid .bioContact .listView.related.teammembers .cardView.teammember .cardContent ul li {
  font-size: 12px;
}
.printWrapper .detailView.teammember .bioTopContent table.topGrid .bioPhotoWrapper {
  margin: 0;
  overflow: hidden;
  background: none;
  border-radius: 0;
}
.printWrapper .detailView.teammember .bioTopContent table.topGrid .bioPhotoWrapper .imgWrapper {
  padding: 0;
}
.printWrapper .detailView.teammember .bioTopContent table.topGrid .bioPhotoWrapper .imgWrapper img {
  width: 100% !important;
  height: auto !important;
  -o-object-fit: contain !important;
     object-fit: contain !important;
  aspect-ratio: auto !important;
}
.printWrapper .detailView.teammember section.overview {
  padding: 20px 60px;
}
.printWrapper .detailView.teammember section.qualificationGroup h3.centered, .printWrapper .detailView.teammember section.membershipsGroup h3.centered {
  text-transform: uppercase;
  color: #63569F;
  font-size: 16px;
}
.printWrapper .detailView.teammember section.qualificationGroup ul.highlightListItem, .printWrapper .detailView.teammember section.membershipsGroup ul.highlightListItem {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1rem;
  padding-bottom: 16px;
}
.printWrapper .detailView.teammember section.qualificationGroup ul.highlightListItem h5, .printWrapper .detailView.teammember section.membershipsGroup ul.highlightListItem h5 {
  font-size: 14px;
}
.printWrapper .detailView.teammember section.qualificationGroup ul.highlightListItem strong, .printWrapper .detailView.teammember section.membershipsGroup ul.highlightListItem strong {
  font-weight: normal;
}
.printWrapper .detailView.teammember section.qualificationGroup ul.highlightListItem li, .printWrapper .detailView.teammember section.membershipsGroup ul.highlightListItem li {
  break-inside: avoid;
}
.printWrapper .detailView.teammember section.qualificationGroup ul.highlightListItem li:after, .printWrapper .detailView.teammember section.membershipsGroup ul.highlightListItem li:after {
  content: "";
  display: block;
  height: 60px;
  position: relative;
  margin-bottom: -60px;
}
.printWrapper .detailView.teammember section.qualificationGroup ul.highlightListItem.education, .printWrapper .detailView.teammember section.membershipsGroup ul.highlightListItem.education {
  grid-template-columns: 1fr 1fr;
}

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