/*!**************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./.yarn/__virtual__/css-loader-virtual-9c61bbdc2a/0/cache/css-loader-npm-6.11.0-d945f9f4c0-bb52434138.zip/node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./.yarn/__virtual__/postcss-loader-virtual-25d6244694/0/cache/postcss-loader-npm-7.3.4-c196834792-1bf7614aee.zip/node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[1].use[2]!./.yarn/cache/resolve-url-loader-npm-5.0.0-9b441067c9-53eef36203.zip/node_modules/resolve-url-loader/index.js??ruleSet[1].rules[1].use[3]!./.yarn/__virtual__/sass-loader-virtual-afce374eb7/0/cache/sass-loader-npm-13.3.3-f5ea4bd230-5e955a4ffc.zip/node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[1].use[4]!./.yarn/cache/@splidejs-splide-npm-4.1.4-574032679c-2dc36e0ce1.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-9c61bbdc2a/0/cache/css-loader-npm-6.11.0-d945f9f4c0-bb52434138.zip/node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./.yarn/__virtual__/postcss-loader-virtual-25d6244694/0/cache/postcss-loader-npm-7.3.4-c196834792-1bf7614aee.zip/node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[1].use[2]!./.yarn/cache/resolve-url-loader-npm-5.0.0-9b441067c9-53eef36203.zip/node_modules/resolve-url-loader/index.js??ruleSet[1].rules[1].use[3]!./.yarn/__virtual__/sass-loader-virtual-afce374eb7/0/cache/sass-loader-npm-13.3.3-f5ea4bd230-5e955a4ffc.zip/node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[1].use[4]!./.yarn/cache/@splidejs-splide-npm-4.1.4-574032679c-2dc36e0ce1.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-9c61bbdc2a/0/cache/css-loader-npm-6.11.0-d945f9f4c0-bb52434138.zip/node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./.yarn/__virtual__/postcss-loader-virtual-25d6244694/0/cache/postcss-loader-npm-7.3.4-c196834792-1bf7614aee.zip/node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[1].use[2]!./.yarn/cache/resolve-url-loader-npm-5.0.0-9b441067c9-53eef36203.zip/node_modules/resolve-url-loader/index.js??ruleSet[1].rules[1].use[3]!./.yarn/__virtual__/sass-loader-virtual-afce374eb7/0/cache/sass-loader-npm-13.3.3-f5ea4bd230-5e955a4ffc.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 */
/* 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);
*/
/* #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 Misc */
/****************************************************************************************************/
/* shared outline styles for focus */
/* #endregion */
/****************************************************************************************************/
.branded, span.pseudoH1 {
  position: relative;
}
.branded:after, span.pseudoH1:after {
  content: " ";
  /*position:absolute;*/
  color: #098CE6;
  font-size: 25%;
  margin-left: 0.5em;
}

/* 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;
  hyphens: auto;
  white-space: unset;
}

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

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

.cardView.testimonial blockquote:before {
  content: " ";
  z-index: 0;
  position: absolute;
  /*            top: 45%;
      left: 40%;
      transform: translateY(-50%) translateX(-50%);*/
  top: 0;
  left: 0;
  /*transform: translateY(-20%) translateX(0);*/
  background-image: url(/CFImages/double-quote.svg);
  background-size: 100% auto;
  background-position: center;
  background-repeat: no-repeat;
  display: block;
  height: 12rem;
  width: 12rem;
  filter: invert(1);
  opacity: 0.15;
}

.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 */
/****************************************************************************************************/
/* ----------------------------------------------
* Copied from animasta.net
* ---------------------------------------------- */
/**
 * ----------------------------------------
 * animation fade-in
 * ----------------------------------------
 */
@keyframes fade-in {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes header-slide-in {
  0% {
    transform: translateY(-100%);
  }
  100% {
    transform: translateY(0%);
  }
}
@keyframes expandFont {
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(1.1);
  }
}
@keyframes expandTeamImage {
  0% {
    transform: translateX(2rem) scale(1);
  }
  100% {
    transform: translateX(0rem) scale(1.4);
    opacity: 1;
  }
}
@keyframes scale-in {
  0% {
    transform: scale(0.9);
  }
  100% {
    transform: scale(1);
  }
}
/*! 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 */
/* Base unit used for spacing gutters */
/* Buttons */
/* these need to be here for intellisense and go-to-definition to work */
/****************************************************************************************************/
/* #region Document */
/****************************************************************************************************/
::selection {
  background: #CC2647;
  color: white;
}

::-webkit-input-placeholder {
  color: #0e3f75;
  text-transform: none;
  font-family: presicav, sans-serif;
  font-weight: 500;
  text-transform: uppercase;
}

:-moz-placeholder {
  color: #0e3f75;
  text-transform: none;
  font-family: presicav, sans-serif;
  font-weight: 500;
  text-transform: uppercase;
}

::-moz-placeholder {
  color: #0e3f75;
  text-transform: none;
  font-family: presicav, sans-serif;
  font-weight: 500;
  text-transform: uppercase;
}

:-ms-input-placeholder {
  color: #0e3f75;
  text-transform: none;
  font-family: presicav, sans-serif;
  font-weight: 500;
  text-transform: uppercase;
}

* {
  box-sizing: border-box;
}

:root {
  /*Header*/
  --header-bottom-padding: 2.2rem;
  --header-height: 180px;
  --scrollbar-width: 16px;
  --card-width: 16rem;
  --card-gap: 1.5rem 1.5rem;
  color-scheme: normal !important;
  /* For Images */
  --image-width: 0;
  --image-height: 0;
  --image-aspectratio: 1.5;
}

html {
  min-height: auto;
  font-style: normal;
  font-family: montserrat, sans-serif;
  font-weight: 400;
  line-height: 1.5;
}
html {
  font-size: 16px;
}
@media screen and (min-width: 1025px) {
  html {
    font-size: calc(16px + 4 * ((100vw - 1025px) / 275));
  }
}
@media screen and (min-width: 1300px) {
  html {
    font-size: 20px;
  }
}

body {
  /*min-height: 100%;*/
  min-height: 100vh;
  overflow-x: hidden;
  overflow-y: auto;
  color: black;
  font-style: normal;
  font-family: montserrat, sans-serif;
  font-weight: 300;
  background-color: white;
}

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

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

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

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

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

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

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

em, i {
  font-style: italic;
}

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

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

blockquote {
  width: 100%;
  max-width: 100%;
  margin: 2rem auto;
  padding: 3rem 10%;
  position: relative;
  border: none;
  color: inherit;
  text-align: left;
  font-size: 1.2em;
  background-color: #E6E6E6;
}
blockquote p {
  color: inherit;
  font-weight: 700;
  font-style: normal;
}
blockquote > :last-child {
  margin-bottom: 0;
}
blockquote cite {
  font-style: italic;
  font-family: presicav, sans-serif;
}
a {
  color: #CC2647;
  transition: all 0.2s ease, font-size 0s linear, padding 0s linear, margin 0s linear, outline 0s linear;
}

a:hover {
  color: #0e3f75;
  text-decoration: underline;
}

a:active {
  color: #0e3f75;
  text-decoration: none;
}

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

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 > p:first-child {
  font-style: normal;
  font-family: presicav, sans-serif;
  font-weight: 500;
  line-height: 1.2;
  color: #0e3f75;
  margin: 2.4rem 0 1.38rem;
  padding: 0;
  display: block;
}
h1.centered, h2.centered, h3.centered, h4.centered, h5.centered, h6.centered, .h.centered, .cmsContent.highlightFirstElement > p.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 {
  color: #0e3f75;
  font-size: 2.488rem;
}

h2 {
  font-size: 1.602rem;
}

h3 {
  font-size: 1.424rem;
}

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: #0e3f75 !important;
  font-size: 2.488rem !important;
}

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

.h3, .cmsContent.highlightFirstElement > p: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 Page Title + Section Headings + Branded Headings */
/****************************************************************************************************/
/* Page Title (Sometimes in topper sometimes in header or body) */
span.pseudoH1 {
  margin: 1rem 0 0.35rem 0;
  color: white;
  font-size: 4rem;
  font-family: presicav, sans-serif;
  font-weight: 700;
  line-height: 1;
}

/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Buttons */
/****************************************************************************************************/
.button [class*=fa-], button [class*=fa-] {
  margin-left: 0rem !important;
}

.button,
button {
  /* 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: #0e3f75;
  cursor: pointer;
  font-family: presicav, sans-serif;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  /*padding: 0.9rem 1.4em;*/
  padding: 10px 20px;
  margin-top: 1em;
  font-size: 0.9rem;
  font-weight: 500;
  text-align: center;
  text-transform: uppercase;
  text-decoration: none !important;
  border: 1px solid #0e3f75;
  border-radius: 0px;
  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: 2rem;
  line-height: 16px;
  white-space: break-spaces;
  /* FontAwesome Icons in markup */
  /* Reverse (flip the colours of the standard button */
  /* Outline */
  /* primary colour */
  /* secondary colour */
  /* tertiary colour */
  /* reverse */
  /* outline */
  /* Arrow Icon */
  /* large */
}
.button:after,
button:after {
  width: 1em;
  height: 1em;
  display: inline-block;
  content: initial;
  position: relative;
  background-repeat: no-repeat;
  background-position: center;
  margin-left: 0.6em;
}
.button [class*=fa-],
button [class*=fa-] {
  margin-left: 0.6rem;
}
.button:hover, .button:focus,
button:hover,
button:focus {
  color: white;
  background-color: #0e3f75;
  text-decoration: none !important;
}
.button:hover svg, .button:focus svg,
button:hover svg,
button:focus svg {
  color: white;
}
.button:active,
button:active {
  color: white;
  text-decoration: none !important;
}
.button.primary,
button.primary {
  background-color: #0e3f75;
  color: white;
  border-color: #0e3f75;
}
.button.primary:hover, .button.primary:focus,
button.primary:hover,
button.primary:focus {
  color: white;
  background-color: #0b335e;
}
.button.primary:active,
button.primary:active {
  color: white;
  background-color: #092647;
}
.button.secondary,
button.secondary {
  background-color: #098CE6;
  color: white;
  border-color: #098CE6;
}
.button.secondary:hover, .button.secondary:focus,
button.secondary:hover,
button.secondary:focus {
  color: white;
  background-color: #087dcd;
}
.button.secondary:active,
button.secondary:active {
  color: white;
  background-color: #076eb5;
}
.button.tertiary,
button.tertiary {
  background-color: #CC2647;
  color: white;
  border-color: #CC2647;
}
.button.tertiary:hover, .button.tertiary:focus,
button.tertiary:hover,
button.tertiary:focus {
  color: white;
  background-color: #b72240;
}
.button.tertiary:active,
button.tertiary:active {
  color: white;
  background-color: #a11e38;
}
.button.reverse,
button.reverse {
  /* 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: #0e3f75;
  cursor: pointer;
  font-family: presicav, sans-serif;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  /*padding: 0.9rem 1.4em;*/
  padding: 10px 20px;
  margin-top: 1em;
  font-size: 0.9rem;
  font-weight: 500;
  text-align: center;
  text-transform: uppercase;
  text-decoration: none !important;
  border: 1px solid #0e3f75;
  border-radius: 0px;
  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: 2rem;
  line-height: 16px;
  white-space: break-spaces;
  /* FontAwesome Icons in markup */
  /* Reverse (flip the colours of the standard button */
  background-color: #098CE6;
  color: white;
  border: 1px solid #098CE6;
  /* Outline */
}
.button.reverse:after,
button.reverse:after {
  width: 1em;
  height: 1em;
  display: inline-block;
  content: initial;
  position: relative;
  background-repeat: no-repeat;
  background-position: center;
  margin-left: 0.6em;
}
.button.reverse [class*=fa-],
button.reverse [class*=fa-] {
  margin-left: 0.6rem;
}
.button.reverse:hover, .button.reverse:focus,
button.reverse:hover,
button.reverse:focus {
  color: white;
  background-color: #0e3f75;
  text-decoration: none !important;
}
.button.reverse:hover svg, .button.reverse:focus svg,
button.reverse:hover svg,
button.reverse:focus svg {
  color: white;
}
.button.reverse:active,
button.reverse:active {
  color: white;
  text-decoration: none !important;
}
.button.reverse:hover,
button.reverse:hover {
  background-color: white;
  color: #098CE6;
}
.button.reverse:active,
button.reverse:active {
  background-color: white;
  color: #098CE6;
}
.button.outline,
button.outline {
  /* 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: #0e3f75;
  cursor: pointer;
  font-family: presicav, sans-serif;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  /*padding: 0.9rem 1.4em;*/
  padding: 10px 20px;
  margin-top: 1em;
  font-size: 0.9rem;
  font-weight: 500;
  text-align: center;
  text-transform: uppercase;
  text-decoration: none !important;
  border: 1px solid #0e3f75;
  border-radius: 0px;
  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: 2rem;
  line-height: 16px;
  white-space: break-spaces;
  /* FontAwesome Icons in markup */
  /* Reverse (flip the colours of the standard button */
  /* Outline */
  background-color: white;
  color: #098CE6;
  border: 1px solid #0e3f75;
}
.button.outline:after,
button.outline:after {
  width: 1em;
  height: 1em;
  display: inline-block;
  content: initial;
  position: relative;
  background-repeat: no-repeat;
  background-position: center;
  margin-left: 0.6em;
}
.button.outline [class*=fa-],
button.outline [class*=fa-] {
  margin-left: 0.6rem;
}
.button.outline:hover, .button.outline:focus,
button.outline:hover,
button.outline:focus {
  color: white;
  background-color: #0e3f75;
  text-decoration: none !important;
}
.button.outline:hover svg, .button.outline:focus svg,
button.outline:hover svg,
button.outline:focus svg {
  color: white;
}
.button.outline:active,
button.outline:active {
  color: white;
  text-decoration: none !important;
}
.button.outline:hover,
button.outline:hover {
  background-color: #098CE6;
  color: white;
}
.button.outline:active,
button.outline:active {
  color: white;
  background-color: #076eb5;
}
.button.arrow,
button.arrow {
  /* 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: #0e3f75;
  cursor: pointer;
  font-family: presicav, sans-serif;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  /*padding: 0.9rem 1.4em;*/
  padding: 10px 20px;
  margin-top: 1em;
  font-size: 0.9rem;
  font-weight: 500;
  text-align: center;
  text-transform: uppercase;
  text-decoration: none !important;
  border: 1px solid #0e3f75;
  border-radius: 0px;
  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: 2rem;
  line-height: 16px;
  white-space: break-spaces;
  /* FontAwesome Icons in markup */
  /* Reverse (flip the colours of the standard button */
  /* Outline */
}
.button.arrow:after,
button.arrow:after {
  width: 1em;
  height: 1em;
  display: inline-block;
  content: initial;
  position: relative;
  background-repeat: no-repeat;
  background-position: center;
  margin-left: 0.6em;
}
.button.arrow [class*=fa-],
button.arrow [class*=fa-] {
  margin-left: 0.6rem;
}
.button.arrow:hover, .button.arrow:focus,
button.arrow:hover,
button.arrow:focus {
  color: white;
  background-color: #0e3f75;
  text-decoration: none !important;
}
.button.arrow:hover svg, .button.arrow:focus svg,
button.arrow:hover svg,
button.arrow:focus svg {
  color: white;
}
.button.arrow:active,
button.arrow:active {
  color: white;
  text-decoration: none !important;
}
.button.arrow:after,
button.arrow:after {
  content: " ";
  background-image: url(/CFImages/Icons/arrow-right.svg);
}
.button.arrow:hover:after, .button.arrow:focus:after, .button.arrow:active:after,
button.arrow:hover:after,
button.arrow:focus:after,
button.arrow:active:after {
  background-image: url(/CFImages/Icons/arrow-right-white.svg);
}
.button.large,
button.large {
  /* 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: #0e3f75;
  cursor: pointer;
  font-family: presicav, sans-serif;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  /*padding: 0.9rem 1.4em;*/
  padding: 10px 20px;
  margin-top: 1em;
  font-size: 0.9rem;
  font-weight: 500;
  text-align: center;
  text-transform: uppercase;
  text-decoration: none !important;
  border: 1px solid #0e3f75;
  border-radius: 0px;
  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: 2rem;
  line-height: 16px;
  white-space: break-spaces;
  /* FontAwesome Icons in markup */
  /* Reverse (flip the colours of the standard button */
  /* Outline */
}
.button.large:after,
button.large:after {
  width: 1em;
  height: 1em;
  display: inline-block;
  content: initial;
  position: relative;
  background-repeat: no-repeat;
  background-position: center;
  margin-left: 0.6em;
}
.button.large [class*=fa-],
button.large [class*=fa-] {
  margin-left: 0.6rem;
}
.button.large:hover, .button.large:focus,
button.large:hover,
button.large:focus {
  color: white;
  background-color: #0e3f75;
  text-decoration: none !important;
}
.button.large:hover svg, .button.large:focus svg,
button.large:hover svg,
button.large:focus svg {
  color: white;
}
.button.large:active,
button.large:active {
  color: white;
  text-decoration: none !important;
}

.dark .button, .dark button {
  /* 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: #0e3f75;
  cursor: pointer;
  font-family: presicav, sans-serif;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  /*padding: 0.9rem 1.4em;*/
  padding: 10px 20px;
  margin-top: 1em;
  font-size: 0.9rem;
  font-weight: 500;
  text-align: center;
  text-transform: uppercase;
  text-decoration: none !important;
  border: 1px solid #0e3f75;
  border-radius: 0px;
  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: 2rem;
  line-height: 16px;
  white-space: break-spaces;
  /* FontAwesome Icons in markup */
  /* Reverse (flip the colours of the standard button */
  background-color: #098CE6;
  border: 1px solid #098CE6;
  color: white;
  /* Outline */
  /* Arrow Icon */
}
.dark .button:after, .dark button:after {
  width: 1em;
  height: 1em;
  display: inline-block;
  content: initial;
  position: relative;
  background-repeat: no-repeat;
  background-position: center;
  margin-left: 0.6em;
}
.dark .button [class*=fa-], .dark button [class*=fa-] {
  margin-left: 0.6rem;
}
.dark .button:hover, .dark .button:focus, .dark button:hover, .dark button:focus {
  color: white;
  background-color: #0e3f75;
  text-decoration: none !important;
}
.dark .button:hover svg, .dark .button:focus svg, .dark button:hover svg, .dark button:focus svg {
  color: white;
}
.dark .button:active, .dark button:active {
  color: white;
  text-decoration: none !important;
}
.dark .button:hover, .dark .button:focus, .dark button:hover, .dark button:focus {
  border-color: #076eb5;
  background-color: #076eb5;
}
.dark .button:active, .dark button:active {
  border-color: #076eb5;
  background-color: #076eb5;
}
.dark .button.arrow:after, .dark button.arrow:after {
  content: " ";
  background-image: url(/CFImages/Icons/arrow-right-white.svg);
}

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

/* add text-decoration underline */
a.underline {
  text-decoration: underline;
}

/* add text-decoration underline */
a.underlineHoverOnly {
  text-decoration: none;
}
a.underlineHoverOnly:focus:focus-visible {
  text-decoration: underline;
}
a.underlineHoverOnly:hover {
  text-decoration: underline;
}

/* no underline */
a.noUnderline {
  text-decoration: none;
}

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

.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 - Txt Colour + BG Colour */
/****************************************************************************************************/
.txtPrimary {
  color: #0e3f75 !important;
}

.txtSecondary {
  color: #098CE6 !important;
}

.txtTertiary {
  color: #CC2647 !important;
}

.txtWhite {
  color: black !important;
}

.txtBlack {
  color: white !important;
}

.txtGrey {
  color: #707070 !important;
}

.bgPrimary {
  background-color: #0e3f75;
}

.bgSecondary {
  background-color: #d2dae5;
}

.bgTertiary {
  background-color: #CC2647;
}

.bgGradient {
  background: linear-gradient(90deg, #85d5f6 0%, #d5effa 82%);
}

/* The most common light background */
.bgLight {
  background-color: #E6E6E6;
}

/* The most common dark background */
.bgDark {
  background-color: #0e3f75;
}

.bgWhite {
  background-color: white;
}

.bgOffWhite {
  background-color: #F6F6F6;
}

.bgBlack {
  background-color: black;
}

.bgGrey {
  background-color: #707070;
}

.bgGreyLight {
  background-color: #E6E6E6;
}

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

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

img.baseImage, .baseImage img {
  display: block;
  width: 100%;
}

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

.subtle {
  color: #1664b9;
  font-size: 0.8em;
}

/* #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 #CC2647;
  border-radius: 15px;
  background-color: black;
}

/* Sticky Phone Link */
.stickyPhone {
  top: auto;
  left: auto;
  right: 1rem;
  bottom: 5%;
  margin: 0 1rem;
  z-index: 10;
  position: fixed;
  color: white;
  font-size: 2rem;
  transition: all 0.2s ease, font-size 0s linear, padding 0s linear, margin 0s linear, outline 0s linear;
}
@media (min-width: 768px) {
  .stickyPhone {
    display: none;
  }
}
.stickyPhone a {
  /* 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: #0e3f75;
  cursor: pointer;
  font-family: presicav, sans-serif;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  /*padding: 0.9rem 1.4em;*/
  padding: 10px 20px;
  margin-top: 1em;
  font-size: 0.9rem;
  font-weight: 500;
  text-align: center;
  text-transform: uppercase;
  text-decoration: none !important;
  border: 1px solid #0e3f75;
  border-radius: 0px;
  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: 2rem;
  line-height: 16px;
  white-space: break-spaces;
  /* FontAwesome Icons in markup */
  /* Reverse (flip the colours of the standard button */
  /* Outline */
  width: 2rem;
  height: 2rem;
  min-width: initial;
  display: flex;
  overflow: hidden;
  margin: 0;
  padding: 0;
  color: inherit;
  text-align: center;
  border-radius: 50%;
  background-color: #CC2647;
}
.stickyPhone a:after {
  width: 1em;
  height: 1em;
  display: inline-block;
  content: initial;
  position: relative;
  background-repeat: no-repeat;
  background-position: center;
  margin-left: 0.6em;
}
.stickyPhone a [class*=fa-] {
  margin-left: 0.6rem;
}
.stickyPhone a:hover, .stickyPhone a:focus {
  color: white;
  background-color: #0e3f75;
  text-decoration: none !important;
}
.stickyPhone a:hover svg, .stickyPhone a:focus svg {
  color: white;
}
.stickyPhone a:active {
  color: white;
  text-decoration: none !important;
}
/* Scroll-to-Top Link */
.scrollToTop {
  top: auto;
  left: auto;
  right: 5rem;
  bottom: 3rem;
  opacity: 0.9;
  display: none;
  z-index: 1000;
  position: fixed;
  font-size: 1.2rem;
  cursor: pointer;
  padding: 0.1rem 0.5rem;
  border: 2px solid white;
  border-radius: 999px;
  background-color: #CC2647;
}
.scrollToTop svg {
  color: white;
}
@media (max-width: 767px) {
  .scrollToTop {
    right: 2rem;
  }
}
.scrollToTop:focus:focus-visible {
  opacity: 1;
  text-decoration: none;
  background-color: #0e3f75;
}
.scrollToTop:hover {
  opacity: 1;
  text-decoration: none;
  background-color: #0e3f75;
}
.scrollToTop span {
  width: 100%;
  color: white;
  text-align: center;
}

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

ul.socialLinks,
.cmsContent ul.socialLinks {
  display: flex;
  font-size: 1.2rem;
  flex-wrap: nowrap;
  justify-content: flex-start;
  list-style: none;
  margin: 0;
}
ul.socialLinks li,
.cmsContent ul.socialLinks li {
  list-style: none;
  margin-bottom: 0;
  margin: 0;
  padding: 0;
  transition: 0.3s all ease;
  justify-content: center;
  margin-right: 0.2rem;
}
ul.socialLinks li a,
.cmsContent ul.socialLinks li a {
  color: #0e3f75;
  border: 1px solid #0e3f75;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 1.7rem;
  width: 1.7rem;
  font-size: 0.6rem;
}
ul.socialLinks li a:hover .icon.address,
.cmsContent ul.socialLinks li a:hover .icon.address {
  filter: brightness(0) invert(1);
}
ul.socialLinks li:hover,
.cmsContent ul.socialLinks li:hover {
  background: #0e3f75 !important;
  box-shadow: rgba(17, 12, 46, 0.15) 0px 48px 100px 0px;
  transition: 0.3s all ease;
}
ul.socialLinks li:hover svg,
.cmsContent ul.socialLinks li:hover svg {
  color: white;
}
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;
  transform: translateX(10px);
  /*@include grid(auto, 1rem, "li");*/
}
ul.sharingLinks li {
  margin-top: 0.8rem;
  padding: 0 1rem;
  background: #0e3f75;
}
ul.sharingLinks li button {
  cursor: pointer;
  border: none;
  padding: 0;
  margin: 0;
  background-color: transparent;
  background-image: none;
  color: #A3A3A3;
  font-size: 0.5rem;
}
ul.sharingLinks li button svg {
  font-size: 1rem;
  padding-right: 0.6rem;
}
ul.sharingLinks li button i {
  color: inherit;
}
ul.sharingLinks li button:hover, ul.sharingLinks li button:focus ul.sharingLinks li button:active {
  color: white;
  background-color: transparent;
  transform: translateX(2px);
}
ul.sharingLinks li:hover {
  background: #CC2647;
}

/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Images */
/****************************************************************************************************/
img {
  width: auto;
  height: auto;
}

/* 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 a NATIVE IMG element */
.imgWrapper {
  width: 100%;
  height: 100%;
}
.imgWrapper a img {
  max-width: 100%;
}
.imgWrapper img {
  max-width: 100%;
  height: 100%;
  width: 100%;
  aspect-ratio: auto;
  object-fit: cover;
}

/* Hover Zoom class */
.bgImgWrapper.hoverZoom .bgImg {
  transition: all 0.3s;
}
.bgImgWrapper.hoverZoom .bgImg:focus:focus-visible {
  transform: scale(1.1);
}
.bgImgWrapper.hoverZoom .bgImg:hover {
  transform: scale(1.1);
}

/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region FullScreenImages (cover images) */
/****************************************************************************************************/
.backstretch .overlay {
  inset: 0;
  position: absolute;
}

/* #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 */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Mediums */
/****************************************************************************************************/
/* Single Medium */
.medium .innerContent .itemImage {
  position: relative;
}
.medium .innerContent .itemImage:before {
  top: calc(50% - 1rem);
  left: calc(50% - 1rem);
  z-index: 1;
  position: absolute;
  color: #CC2647;
  font-size: 2rem;
}

/* Default List */
/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Documents */
/****************************************************************************************************/
.document {
  font-size: 0.8rem;
}
.document a {
  width: 100%;
  display: block;
  padding: 0 0 1rem 0;
  text-decoration: none !important;
  color: #0e3f75;
}
.document a .grid {
  align-items: center;
}
.document a .textExtension {
  display: none;
}
.document a .iconExtension {
  width: 1.5rem;
  flex-grow: 0;
  flex-basis: auto;
  align-items: center;
  justify-content: center;
  margin-right: 0;
}
.document a .iconExtension svg {
  color: inherit;
  font-size: 1rem;
  border: 1px solid #0e3f75;
  padding: 5px;
  height: 30px;
  width: 30px;
}
.document a .documentDetails {
  margin-left: 15px;
}
.document a .documentDetails .titleLink {
  margin: 0;
  padding: 0;
  font-size: 18px;
  font-weight: 700;
  color: #0e3f75;
  text-decoration: underline;
}
.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 .grid .col.iconExtension {
  color: #CC2647;
  border-color: #CC2647;
}
.document a:focus:focus-visible .grid .col.iconExtension svg.typeIcon {
  display: none;
}
.document a:focus:focus-visible .grid .col.iconExtension svg.hoverIcon {
  display: block;
  border-color: #CC2647;
}
.document a:focus:focus-visible .documentDetails .titleLink {
  color: #CC2647;
}
.document a:hover .grid .col.iconExtension {
  color: #CC2647;
  border-color: #CC2647;
}
.document a:hover .grid .col.iconExtension svg.typeIcon {
  display: none;
}
.document a:hover .grid .col.iconExtension svg.hoverIcon {
  display: block;
  border-color: #CC2647;
}
.document a:hover .documentDetails .titleLink {
  color: #CC2647;
}

.documents {
  margin: 1rem 0;
}
.documents ul li {
  color: #0e3f75;
  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 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 img {
  max-width: 100%;
}
.cmsContent em, .cmsContent i {
  font-style: italic;
}
.cmsContent h2 {
  font-size: 1.2rem;
}
.cmsContent h1, .cmsContent h2, .cmsContent h3, .cmsContent h4, .cmsContent h5, .cmsContent h6, .cmsContent .h, .cmsContent.highlightFirstElement > p:first-child {
  color: #0e3f75;
}
.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 > p:first-child {
  margin-top: 0;
}
.cmsContent a {
  text-decoration: none;
}
.cmsContent a:hover, .cmsContent a:focus {
  text-decoration: underline;
}
.cmsContent a:active {
  color: #076eb5;
  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: 1rem;
  position: relative;
  /* bullet icon */
}
.cmsContent ul > li:before {
  content: " ";
  top: initial;
  left: 0;
  width: 1em;
  height: 1.4em;
  color: black;
  content: "";
  display: block;
  position: absolute;
  line-height: inherit;
  background-image: url(/CFImages/Icons/bullet-square-solid.svg);
  background-size: 0.4em auto;
  background-repeat: no-repeat;
  background-position: center;
}
.cmsContent ol {
  counter-reset: customListCounter 0;
  list-style-position: outside;
}
.cmsContent ol > li {
  list-style-type: none;
  list-style-position: inside;
  counter-increment: customListCounter;
}
.cmsContent ol > li:before {
  top: initial;
  left: 0.4rem;
  content: counter(customListCounter) ".";
  color: black;
  position: absolute;
  font-weight: 400;
}
.cmsContent address {
  margin: 0.5rem 0 1rem;
}
.cmsContent mark {
  color: white;
  background: #CC2647;
  padding: 0 3px;
}
.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 > p:first-child {
  margin: 0 0 1.38rem;
  font-weight: 700;
  line-height: 35px;
}
.cmsContent.highlightFirstElement > p:first-child > * {
  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: black;
  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;
  text-decoration: underline;
}
.dark a:hover, .dark a:active, .dark a:focus, .dark .cmsContent a:hover, .dark .cmsContent a:active, .dark .cmsContent a:focus {
  color: #098CE6;
}
.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: black;
}
.dark pre, .dark .cmsContent pre {
  background-color: #092647;
  color: white;
}
.dark blockquote, .dark .cmsContent blockquote {
  background-color: #092647;
  color: white;
}
.dark blockquote p, .dark .cmsContent blockquote p {
  color: white;
}

/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Icons / FontAwesome / Kendo Icons */
/****************************************************************************************************/
/* A trick for prefetching icons we know we need to prevent the flash-of-unstyled-icon on hover */
body::after {
  position: absolute;
  width: 0;
  height: 0;
  overflow: hidden;
  z-index: -1;
  content: url(/CFImages/Icons/chevron-down.svg) url(/CFImages/Icons/chevron-up.svg) url(/CFImages/Icons/audio.svg) url(/CFImages/Icons/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: 1.4rem;
  height: 1.4rem;
  /* 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);
}
.k-state-active .k-icon.k-menu-expand-arrow:before, .k-state-active .k-icon.k-i-expand:before {
  background-image: url(/CFImages/Icons/plus-white.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-size: 1.4em;
  line-height: 0;
}
.icon:before {
  content: " ";
  width: var(--icon-size);
  height: var(--icon-size);
  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);
}
.icon.search:before {
  background-image: url("/CFImages/Icons/search_expand.svg");
  background-size: 80% auto;
}
.icon.address:before {
  background-image: url("/CFImages/Icons/v-card.svg");
  /*width: $iconSize;
  height: $iconSize;*/
}
.icon.slideArrow:before {
  height: auto;
  width: 2rem;
  background-size: 100% auto;
  background-repeat: no-repeat;
  background-position: center;
  aspect-ratio: 40/46;
}
.icon.slideArrow.left:before {
  background-image: url("/CFImages/Icons/slidearrow-left.svg");
}
.icon.slideArrow.right:before {
  background-image: url("/CFImages/Icons/slidearrow-right.svg");
}

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

#wrapper {
  overflow: hidden;
  height: auto !important;
  flex: 1 0 auto;
  padding-top: var(--header-height);
}
.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;
}

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

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

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

/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/*#region Site Header */
/****************************************************************************************************/
.searchHiddenWrapper {
  /* refer to "region Site Search" styles below */
  display: none;
}

#header {
  top: 0;
  left: 0;
  width: 100%;
  z-index: 10;
  position: absolute;
  transition: all 0.2s ease, font-size 0s linear, padding 0s linear, margin 0s linear, outline 0s linear;
  box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
  background: white;
  height: var(--header-height);
  --header-height: 180px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}
#header.up {
  position: fixed;
  /*        .header {
      padding: 1rem 0 2rem;
      transition: all 300ms ease, font-size 0s linear, margin 0s linear;
  }*/
}
#header .topHeader {
  position: relative;
  background-color: white;
  box-shadow: rgba(149, 157, 165, 0.2) 0px 18px 24px;
}
#header .topHeader .topHeaderGrid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 24rem;
  grid-template-areas: "logo social" "logo menu";
  gap: 2rem 6rem;
}
#header .topHeader .logoCol {
  grid-area: logo;
  grid-row: 1/span 2;
  height: 100%;
  display: flex;
  align-items: flex-start;
  justify-content: flex-end;
  padding-bottom: var(--header-bottom-padding);
}
#header .topHeader .logoCol img {
  transform: translateY(12.5%);
  height: auto;
  max-width: 100%;
  width: 700px;
}
#header .topHeader .menuCol {
  grid-area: menu;
}
#header .topHeader .socialCol {
  grid-area: social;
  align-items: flex-end;
}
#header .topHeader .socialCol .searchSocialContact {
  display: flex;
  align-items: flex-end;
}
#header .topHeader .socialCol .searchSocialContact .button {
  height: 1.7rem;
  line-height: 1;
  margin: 0;
  font-size: 0.6rem;
}
#header .topHeader .socialCol .searchSocialContact .searchExpand {
  color: #0e3f75;
  border: 1px solid #0e3f75;
  height: 1.7rem;
  width: 1.7rem;
  margin-right: 0.2rem;
  padding: 0;
}
#header .topHeader .socialCol .searchSocialContact .searchExpand svg {
  margin-left: 0;
}
#header .topHeader .socialCol .searchSocialContact .searchExpand:hover .icon.search {
  filter: brightness(0) invert(1);
}
#header .header {
  padding: 0;
  z-index: -1;
  color: white;
  position: relative;
  background-color: white;
}
#header .header .bannerAndTitle {
  background: red;
  padding: 0.5rem 0;
}
#header .header .menu {
  display: flex;
  justify-content: center;
  flex-direction: row;
  align-items: flex-end;
}

/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/*#region Page Topper (Banner) */
/****************************************************************************************************/
/* Usually nested in the topper */
.pageTopper {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  position: relative;
  position: relative;
}
.pageTopper:after {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  content: "";
  z-index: 2;
  position: absolute;
  background-size: cover;
  transition: all 0.2s ease, font-size 0s linear, padding 0s linear, margin 0s linear, outline 0s linear;
}
.pageTopper > * {
  position: relative;
  z-index: 3;
}
.pageTopper .topperImage {
  inset: 0;
  height: 8rem;
}
.pageTopper .topperImage .bgImg {
  background-position: top right;
  background-repeat: no-repeat;
  background-size: cover;
  position: absolute;
  inset: 0;
}
.pageTopper > .container {
  position: relative;
}
.pageTopper .topperContent {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 2.6rem 4rem;
  margin-top: -4rem;
  min-height: 7rem;
  width: 100%;
  background: white;
  box-shadow: 0px 3px 15px rgba(0, 0, 0, 0.16);
}
.pageTopper .topperContent h1, .pageTopper .topperContent span {
  margin: 0;
  text-transform: uppercase;
  position: relative;
  font-size: 1.5rem;
  padding: 1rem 0 1rem 0.7em;
  border-left: 4px solid #CC2647;
  border-left-width: clamp(1px, 0.3vw, 4px);
  letter-spacing: 0.1em;
}
.pageTopper .topperContent .topperDescription {
  padding-left: 2rem;
  border: none;
  font-size: 1rem;
}
.pageTopper .topperContent .topperSubtitle {
  display: block;
  font-size: 1.6rem;
  color: #098CE6;
  text-transform: uppercase;
  font-weight: 300;
  padding-bottom: 1rem;
}
.pageTopper .topperContent .topperTitle, .pageTopper .topperContent .topperTagLine {
  display: block;
  font-family: presicav, sans-serif;
  font-weight: 500;
  font-size: 2.4rem;
  line-height: 1.1;
  color: #0e3f75;
}

/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/*#region Site Main Content */
/****************************************************************************************************/
main .bd .breadCrumbInner {
  margin-top: 1.5rem;
  font-size: 0.7rem;
  display: flex;
}
main .bd .breadCrumbInner a {
  color: #555555;
  text-decoration: none;
  font-weight: 400;
}
main .bd .breadCrumbInner > *:last-child {
  color: #0e3f75;
  font-weight: 700;
}
main .bd .breadCrumbInner > *:not(:last-child) {
  color: #555555;
  font-weight: 400;
}
main .bd .breadCrumbInner > *:not(:last-child):hover, main .bd .breadCrumbInner > *:not(:last-child):focus {
  text-decoration: underline;
}
main .bd .breadCrumbInner span.separator {
  margin: 0 0.2rem;
}
main .bd .breadCrumbInner span.current {
  font-weight: 700;
}
main .bd .mainContent {
  padding: 2rem 0;
  position: relative;
}
main .bd .mainContent .sfContentBlock img {
  max-width: 100%;
}
main .bd .mainContent .cmsContent {
  padding: 0;
}
main .bd .mainContent .cmsContent p:first-child {
  font-family: presicav, sans-serif;
  font-weight: 500;
  color: #0e3f75;
  font-size: 1.2rem;
}
main .bd .mainContent .breadCrumbInner {
  color: #0e3f75;
}
main .bd .mainContent .breadCrumbInner a {
  color: black;
  font-weight: 300;
  text-decoration: none;
}
main .bd .mainContent .breadCrumbInner .current {
  font-weight: 700;
}
main .bd .sideContent {
  padding: 2rem 0;
  position: relative;
}
main .bd .sideContent h1 {
  margin: 10px 0 2rem 1rem;
  text-transform: uppercase;
  position: relative;
}
main .bd .sideContent h1:before {
  content: "";
  position: absolute;
  left: -1rem;
  height: 100%;
  width: 2px;
  background: #CC2647;
}
main .bd .sideContent h2 a {
  color: #0e3f75 !important;
}
main .bd .sideContent nav {
  max-width: 100%;
}
main .bd .sideContent nav .mainTreeView {
  border: none;
  border-top: 2px solid #098CE6;
  padding-top: 1rem;
}
main .bd .sideContent nav .mainTreeView .k-top.k-bot {
  display: none;
}
main .bd .sideContent nav .mainTreeView li.k-item.selected {
  background-color: white !important;
}
main .bd .sideContent nav .mainTreeView .k-group {
  background-color: white !important;
}
main .bd .sideContent nav .mainTreeView .k-group li.k-item.selected {
  background-color: white !important;
}
main .bd .sideContent nav .mainTreeView .k-group li.k-item.selected .k-top a, main .bd .sideContent nav .mainTreeView .k-group li.k-item.selected .k-mid a, main .bd .sideContent nav .mainTreeView .k-group li.k-item.selected .k-bot a {
  color: #CC2647 !important;
  background-color: white;
}
main .bd .sideContent nav .mainTreeView .k-group li.k-item.selected .k-top a:before, main .bd .sideContent nav .mainTreeView .k-group li.k-item.selected .k-mid a:before, main .bd .sideContent nav .mainTreeView .k-group li.k-item.selected .k-bot a:before {
  content: "";
  background: url("/CFImages/Icons/slidearrow-right.svg");
  background-size: contain;
  background-repeat: no-repeat;
  width: 0.7rem;
  height: 0.7rem;
  margin-right: 1rem;
}
main .bd .sideContent nav .mainTreeView .k-group li.k-item.selected .k-top a:hover, main .bd .sideContent nav .mainTreeView .k-group li.k-item.selected .k-mid a:hover, main .bd .sideContent nav .mainTreeView .k-group li.k-item.selected .k-bot a:hover {
  transform: none;
}
main .bd .sideContent nav .mainTreeView .k-group li.k-item a {
  white-space: normal;
  padding: 10px 10px 10px 0 !important;
  text-transform: uppercase;
  font-family: presicav, sans-serif;
  font-weight: 500;
  color: #0e3f75;
  transition: 0.2s all ease;
}
main .bd .sideContent nav .mainTreeView .k-group li.k-item a:hover {
  transform: translateX(2px);
}

.k-treeview ul.mainTreeView li.k-item[aria-expanded=true] {
  background-color: white !important;
}

/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/*#region Site Footer */
/****************************************************************************************************/
/* all footer sections */
/* NOTE padding/margins are controlled on the template containers using Whitespace mixin utility classes of mvxl or pvxl etc */
.siteFooter {
  position: relative;
  z-index: 1;
}
.siteFooter .preFooter {
  display: none;
}
.siteFooter .mainFooter {
  background: linear-gradient(180deg, #1f4776 0%, #1c4f83 32%, #0a7bc9 100%);
  padding: 1rem 0;
}
.siteFooter .mainFooter .mainFooterGrid {
  justify-content: flex-start;
}
.siteFooter .mainFooter .mainFooterGrid .mainFooterLeft img {
  width: 50%;
  max-width: 20rem;
}
.siteFooter .mainFooter .mainFooterGrid .mainFooterRight {
  align-items: flex-start;
}
.siteFooter .mainFooter .mainFooterGrid .mainFooterRight .officesWrapper .listView.offices {
  margin-bottom: 0.9rem;
}
.siteFooter .mainFooter .mainFooterGrid .mainFooterRight .officesWrapper .listView.offices .office .innerContent .itemContent address {
  font-weight: 100;
  padding: 0 0 10px 0;
}
.siteFooter .mainFooter .mainFooterGrid .mainFooterRight .officesWrapper .listView.offices .office .innerContent .itemContent ul {
  display: flex;
  padding: 1rem 0 0 0;
}
.siteFooter .mainFooter .mainFooterGrid .mainFooterRight .officesWrapper .listView.offices .office .innerContent .itemContent ul li {
  padding-right: 1.5rem;
  font-weight: 300;
  font-family: montserrat, sans-serif;
  font-size: 16px;
}
.siteFooter .mainFooter .mainFooterGrid .mainFooterRight .officesWrapper .listView.offices .office .innerContent .itemContent ul li a {
  color: white !important;
  text-decoration: none !important;
  font-family: montserrat, sans-serif;
}
.siteFooter .mainFooter .mainFooterGrid .mainFooterRight .officesWrapper .listView.offices .office .innerContent .itemContent ul li a:hover {
  text-decoration: underline !important;
}
.siteFooter .mainFooter .mainFooterGrid .mainFooterRight .mainFooterRightGrid {
  justify-content: space-between;
  width: 100%;
  margin: 0 !important;
}
.siteFooter .mainFooter .mainFooterGrid .mainFooterRight .mainFooterRightGrid .footerSitemap {
  margin: 0 !important;
  padding: 0.9rem 0 0 0;
  border-top: 1px solid rgba(255, 255, 255, 0.5);
}
.siteFooter .mainFooter .mainFooterGrid .mainFooterRight .mainFooterRightGrid .footerSitemap .topLevelSimple .reset {
  display: flex;
  grid-column-gap: 3rem;
}
.siteFooter .mainFooter .mainFooterGrid .mainFooterRight .mainFooterRightGrid .footerSitemap .topLevelSimple .reset li a {
  text-decoration: none;
  text-transform: uppercase;
  font-weight: 400;
  font-family: presicav, sans-serif;
  letter-spacing: 0.1em;
}
.siteFooter .mainFooter .mainFooterGrid .mainFooterRight .mainFooterRightGrid .footerSitemap .topLevelSimple .reset li a:hover {
  color: #CC2647;
}
.siteFooter .mainFooter .mainFooterGrid .mainFooterRight .mainFooterRightGrid .footerSocials {
  margin: 0 !important;
}
.siteFooter .mainFooter .mainFooterGrid .mainFooterRight .mainFooterRightGrid .footerSocials ul.socialLinks li {
  border: none;
}
.siteFooter .mainFooter .mainFooterGrid .mainFooterRight .mainFooterRightGrid .footerSocials ul.socialLinks li a {
  border: 1px solid rgba(255, 255, 255, 0.6) !important;
}
.siteFooter .copyrightFooter {
  /*.container.full {
      display: flex;
      flex-wrap: wrap;
      flex-direction: row;
      justify-content: space-between;
      align-items: center;
  }*/
}
.siteFooter .copyrightFooter p, .siteFooter .copyrightFooter a {
  color: #0e3f75;
  margin-bottom: 0;
  font-size: 13px;
  font-weight: 500;
}
.siteFooter .copyrightFooter .pvs {
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: 13px;
}
/* #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 #098CE6;
  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 #098CE6;
  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 */
  /* Safari and Chrome */
  appearance: none;
  background-size: 0.8rem auto;
  background-image: url(/CFImages/Icons/plus-red.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(14, 63, 117, 0.7);
}
select:focus {
  outline: none;
  outline: 1px solid #098CE6;
  outline-offset: 0;
}
select > option {
  text-transform: none;
}
select > option:checked, select > option:hover {
  background-color: #E6E6E6;
}

/* Checkboxes */
input[type=checkbox] {
  width: 1px;
  height: 1px;
  margin-right: -1px;
  cursor: pointer;
  position: absolute;
  /* disabled */
}
input[type=checkbox] + label {
  cursor: pointer;
  display: inline-block;
  position: relative;
  transition: all 0.2s ease, font-size 0s linear, padding 0s linear, margin 0s linear, outline 0s linear;
  padding-left: 2rem;
}
input[type=checkbox] + label::selection {
  color: inherit;
  background-color: transparent;
}
input[type=checkbox] + label:before, input[type=checkbox] + label:after {
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  display: inline-block;
  position: absolute;
  transition: all 0.2s ease, font-size 0s linear, padding 0s linear, margin 0s linear, outline 0s linear;
  margin-right: 0.4rem;
  width: 1em;
  height: 1em;
}
input[type=checkbox] + label:before {
  content: " ";
  background-color: white;
}
input[type=checkbox] + label:after {
  content: " ";
  background-image: none;
  background-repeat: no-repeat;
  background-position: center;
  background-size: 80% auto;
  border: 1px solid #CCCCCC;
  border-color: #707070;
}
input[type=checkbox] + label:hover, input[type=checkbox] + label:focus {
  color: #098CE6;
}
input[type=checkbox] + label:hover:after, input[type=checkbox] + label:focus:after {
  border-color: #098CE6;
}
input[type=checkbox]:focus {
  outline: none !important;
}
input[type=checkbox]:focus:focus-visible + label {
  outline: 2px solid #CC2647;
}
input[type=checkbox]:checked + label:after {
  background-image: url(/CFImages/Icons/check.svg);
}
input[type=checkbox]:disabled {
  color: #A3A3A3;
}
input[type=checkbox]:disabled + label {
  color: #A3A3A3;
}
input[type=checkbox]:disabled + label:after {
  filter: grayscale(1);
  opacity: 0.6;
  border-color: #A3A3A3;
}
input[type=checkbox]:disabled + label:hover, input[type=checkbox]:disabled + label:focus {
  color: #A3A3A3;
}
input[type=checkbox]:disabled + label:hover:after, input[type=checkbox]:disabled + label:focus:after {
  border-color: #A3A3A3;
}

/* 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 */
/****************************************************************************************************/
[data-sf-role=form-container] fieldset {
  margin: 1rem 0;
}
[data-sf-role=form-container] fieldset legend {
  padding: 0 0.4rem;
}

/* Sitefinity File Upload field */
[data-sf-role=file-field-inputs] {
  cursor: pointer;
}
[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: #0e3f75;
  cursor: pointer;
  font-family: presicav, sans-serif;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  /*padding: 0.9rem 1.4em;*/
  padding: 10px 20px;
  margin-top: 1em;
  font-size: 0.9rem;
  font-weight: 500;
  text-align: center;
  text-transform: uppercase;
  text-decoration: none !important;
  border: 1px solid #0e3f75;
  border-radius: 0px;
  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: 2rem;
  line-height: 16px;
  white-space: break-spaces;
  /* FontAwesome Icons in markup */
  /* Reverse (flip the colours of the standard button */
  /* Outline */
}
[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=file-field-inputs] input[type=file] [class*=fa-] {
  margin-left: 0.6rem;
}
[data-sf-role=file-field-inputs] input[type=file]:hover, [data-sf-role=file-field-inputs] input[type=file]:focus {
  color: white;
  background-color: #0e3f75;
  text-decoration: none !important;
}
[data-sf-role=file-field-inputs] input[type=file]:hover svg, [data-sf-role=file-field-inputs] input[type=file]:focus svg {
  color: white;
}
[data-sf-role=file-field-inputs] input[type=file]:active {
  color: white;
  text-decoration: none !important;
}
[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;
}

/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Content Type Labels */
/****************************************************************************************************/
.contentTypeLabels {
  color: #0e3f75;
  display: inline-block;
  font-family: presicav, sans-serif;
  font-weight: 400;
  text-transform: uppercase;
  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: #0e3f75;
  font-size: 0.7rem;
  font-weight: 400;
  letter-spacing: 0.15em;
  margin-bottom: 0;
}
.meta .separator {
  color: inherit;
  margin: 0 0.2rem;
}

/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #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 Sliders */
/****************************************************************************************************/
/* Splide sliders */
.splide {
  visibility: visible;
  /* Show only the first slide ONLY until the slider is initialized */
  /* slider initialized */
}
.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__track {
  margin-bottom: 1rem;
}
.splide .splide__arrows {
  position: relative;
  display: flex;
  gap: 1rem;
  margin: 2.2rem 0;
  padding-left: 2.55rem;
  /* Arrows */
}
.splide .splide__arrows .splide__arrow {
  padding: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: transparent;
  position: relative;
  width: auto;
  height: auto;
  transform: none;
  inset: initial;
  margin: 0;
}
/*.slideArrow {

    &.left {
        background: url(/CFImages/Icons/slidearrow-left.svg);
        background-size: 100% auto;
        height: 100%;
        width: 100%;
        background-repeat: no-repeat;
    }

    &.right {
        background: url(/CFImages/Icons/slidearrow-right.svg);
        background-size: 100% auto;
        height: 100%;
        width: 100%;
        background-repeat: no-repeat;
    }
}*/
.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 */
/****************************************************************************************************/
.splide__pagination {
  display: none;
}

.homeSlideshow {
  position: relative;
  box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 6px -1px, rgba(0, 0, 0, 0.06) 0px 2px 4px -1px;
}
.homeSlideshow .splide__arrows {
  display: none;
}
.homeSlideshow .splide__track {
  margin-bottom: 0;
}
.homeSlideshow ul.splide__pagination {
  display: none !important;
  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: #0e3f75;
}
.homeSlideshow .splide__slide {
  background-color: white;
  color: black;
  overflow: hidden;
  position: relative;
  transition: all 1s ease-out;
  aspect-ratio: 11/4;
  padding: 2rem 0;
  /*padding: 3rem 0;*/
  /*&.centred {*/
  /*}*/
}
.homeSlideshow .splide__slide .imgWrapper img {
  object-position: 50% 57%;
}
.homeSlideshow .splide__slide .learnMore {
  color: #0e3f75;
  font-weight: 700;
  letter-spacing: 0.1em;
  font-family: presicav, sans-serif;
  text-transform: uppercase;
  text-decoration: none;
  transition: 0.5s all ease;
  cursor: pointer;
  border: none;
  display: flex;
  align-items: center;
  gap: 1.1em;
}
.homeSlideshow .splide__slide .learnMore:before {
  content: "";
  background: url(/CFImages/Icons/belmore-plus.svg);
  background-size: 100% auto;
  width: 1.25rem;
  height: 1.25rem;
  background-repeat: no-repeat;
  transition: 0.5s all ease;
}
.homeSlideshow .splide__slide .learnMore:hover {
  color: #CC2647;
  background: none;
  border: none;
}
.homeSlideshow .splide__slide .learnMore:hover:before {
  transform: rotate(90deg) scale(1.1);
  transition: 0.5s all ease;
}
.homeSlideshow .splide__slide .coverImg {
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  display: block;
  position: absolute;
}
.homeSlideshow .splide__slide .coverImg .bgImgWrapper {
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  display: block;
  position: absolute;
}
.homeSlideshow .splide__slide .coverImg .bgImgWrapper .bgImg:before {
  position: relative;
  display: block;
  height: 100%;
  content: " ";
  background-image: linear-gradient(to right, black 0%, rgba(63, 108, 118, 0.5) 60%);
  opacity: 0.6;
  z-index: 2;
}
.homeSlideshow .splide__slide .innerContent {
  height: 100%;
  display: flex;
  position: relative;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  /*opacity: 0;*/
}
.homeSlideshow .splide__slide .innerContent h1 {
  padding: 0 20px;
  text-align: center;
  color: #0e3f75;
  font-size: 2.8rem;
  margin-top: 0;
  font-weight: 300;
  letter-spacing: -0.03em;
  line-height: 1;
  animation: expandFont forwards 4s ease-out;
}
.homeSlideshow .splide__slide .innerContent h1 {
  font-size: 30px;
}
@media screen and (min-width: 325px) {
  .homeSlideshow .splide__slide .innerContent h1 {
    font-size: calc(30px + 20 * ((100vw - 325px) / 1595));
  }
}
@media screen and (min-width: 1920px) {
  .homeSlideshow .splide__slide .innerContent h1 {
    font-size: 50px;
  }
}
.homeSlideshow .splide__slide .innerContent .summary {
  font-size: 1.4rem;
  font-weight: 100;
  width: 50rem;
  text-align: center;
}
.homeSlideshow .splide__slide .innerContent .button {
  display: inline-block;
  margin-top: 2rem;
}
.homeSlideshow .splide__slide.is-visible .innerContent {
  opacity: 1;
  z-index: 1;
}
.homeSlideshow .splide__slide.is-visible .innerContent .content {
  width: 60%;
  text-align: center;
  margin-bottom: 2rem;
  font-size: 18px;
}
.homeSlideshow .splide__slide.right .contentWrapper .innerContent {
  float: right;
  text-align: right;
}
.homeSlideshow .splide__slide.left .contentWrapper .innerContent {
  float: left;
  text-align: left;
}
.homeSlideshow .splide__slide .coverImg:after {
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  content: " ";
  display: block;
  position: absolute;
  z-index: 1;
  background-color: rgba(255, 255, 255, 0.45);
}

/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Slider Views (THIS IS ONLY TO CONTROL THE SLIDES and number of ITEMS - NOT THE CARDS) */
/****************************************************************************************************/
/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region .listView List Views (Filtered Content Lists) THIS ONLY CONTROL THE GRIDS and number of ITEMS - NOT THE CARDS */
/****************************************************************************************************/
/******************* Classes 
expertises | sectors (sharedclass: expertiseandsectors)
teammembers
offices
blogitems | cases | eventitems | newsitems | publications | mediums (sharedclass: insights) 
rankings
testimonials
faqs

List Views & Filtered Content Lists
***********************/
.listView {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(min(var(--card-width), 100%), 1fr));
  gap: var(--card-gap);
  margin-bottom: 2rem;
}

/* Filtered Content Lists */
.filteredContent .newsitemsWrapper .listView.newsitems {
  --card-width: 35rem;
  --card-gap: 0rem 2rem;
}
.filteredContent .newsitemsWrapper .listView.newsitems li {
  transition: 1s all ease;
  padding: 1rem 1rem 2rem 1rem;
  border-bottom: 1px solid #098CE6;
}
.filteredContent .newsitemsWrapper .listView.newsitems li:hover {
  background: linear-gradient(90deg, #85d5f6 0%, #d5effa 82%);
  box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
}
.filteredContent .newsitemsWrapper .listView.newsitems li .cardView.newsitem {
  padding-bottom: 0;
}
.filteredContent .newsitemsWrapper .listView.newsitems li .cardView.newsitem h3 a:hover {
  color: #CC2647;
}

.listView.globalalerts {
  position: relative;
}

/* expertiseandsectors (Includes .expertises .sectors) */
.listView.expertiseandsectors.expertises {
  --card-width: 20rem;
  --card-gap: 2rem 2rem;
}

.listView.teammembers {
  --card-width: 20rem;
  --card-gap: 2rem 2rem;
}
.teamlistPage h1.topperTitle {
  display: none;
}
.teamlistPage .pageTopper {
  margin-bottom: 3rem;
}

.listView.offices {
  --card-width: 30rem;
  --card-gap: 2rem 2rem;
  margin-bottom: 0;
}

/* insights (Includes .blogitems .cases .eventitems .newsitems .publications .mediums) */
.listView.insights.blogitems {
  --card-width: 67%;
  --card-gap: 2rem 2rem;
}
.listView.insights.blogitems li {
  transition: 1s all ease;
  padding: 2rem 2rem 3rem 2rem;
  border-bottom: 1px solid #098CE6;
  max-width: 1000px;
  background: rgba(213, 239, 250, 0.5);
}
.listView.insights.blogitems li:hover {
  background: linear-gradient(90deg, #85d5f6 0%, #d5effa 82%);
  box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
}
.listView.insights.blogitems li .cardView.newsitem {
  padding-bottom: 0;
}
.listView.insights.blogitems li .cardView.newsitem h3 a:hover {
  color: #CC2647;
}

.listView {
  --listViewArticleIndex: none;
}
.listView li .cardView {
  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);
  opacity: 0;
}

@keyframes fadeInUp {
  0% {
    opacity: 0;
    transform: translateY(100%);
  }
  30% {
    opacity: 0;
  }
  100% {
    opacity: 1;
    transform: translateY(0%);
  }
}
.listView.oneColumnGrid {
  --card-width: 100%;
  --card-gap: 0 2rem;
}

/* Related Content Lists (if different) */
.related .listView.offices {
  --card-width: 100%;
  --card-gap: 0 2rem;
}
.related .listView.offices .cardView.linkOnly:after {
  content: "|";
  margin: 0 0.5rem;
}
.related .listView.offices:last-child .cardView.linkOnly:after {
  content: none;
}
.related .listView.teammembers.assistant {
  --card-width: 100%;
  --card-gap: 0 2rem;
}

.casesBackground {
  background: linear-gradient(90deg, #85d5f6 0%, #d5effa 82%);
  padding: 2rem 0 3rem 0;
}

.wrapper .viewAllMoreWrapper {
  color: #0e3f75;
  font-family: presicav, sans-serif;
  font-weight: 700;
  font-size: 1rem;
  text-transform: uppercase;
  margin-top: 1rem;
  position: relative;
  text-decoration: none;
  text-align: center;
  width: 100%;
}
.wrapper .viewAllMoreWrapper a {
  color: #0e3f75;
  font-weight: 700;
  letter-spacing: 0.1em;
  font-family: presicav, sans-serif;
  text-transform: uppercase;
  text-decoration: none;
  transition: 0.5s all ease;
  cursor: pointer;
  border: none;
  display: flex;
  align-items: center;
  gap: 1.1em;
}
.wrapper .viewAllMoreWrapper a:before {
  content: "";
  background: url(/CFImages/Icons/belmore-plus.svg);
  background-size: 100% auto;
  width: 1.25rem;
  height: 1.25rem;
  background-repeat: no-repeat;
  transition: 0.5s all ease;
}
.wrapper .viewAllMoreWrapper a:hover {
  color: #CC2647;
  background: none;
  border: none;
}
.wrapper .viewAllMoreWrapper a:hover:before {
  transform: rotate(90deg) scale(1.1);
  transition: 0.5s all ease;
}
.wrapper.insightsWrapper.casesWrapper .listView.cases {
  --card-width: 20rem;
}
.wrapper.officesWrapper .listView.offices li .cardView.office .innerContent .itemContent h2 {
  margin: 0 0 10px 0;
  font-weight: 700;
}
.wrapper.officesWrapper .listView.offices li .cardView.office .innerContent .itemContent h2 a {
  color: #0e3f75;
}
.wrapper.officesWrapper .listView.offices li .cardView.office .innerContent .itemContent h2 a:hover {
  color: #CC2647;
}
.wrapper.officesWrapper .listView.offices li .cardView.office .innerContent .itemContent address {
  padding: 1rem 0;
}
.wrapper.officesWrapper .listView.offices li .cardView.office .innerContent .itemContent .itemImage {
  padding: 1rem 0;
}
.wrapper.officesWrapper .listView.offices li .cardView.office .innerContent .itemContent .itemImage .imgWrapper {
  transition: 0.4s all ease;
}
.wrapper.officesWrapper .listView.offices li .cardView.office .innerContent .itemContent .itemImage .imgWrapper:hover {
  transform: scale(1.01);
  box-shadow: rgba(17, 17, 26, 0.11) 6px 10px 60px;
}
.wrapper.officesWrapper .listView.offices li .cardView.office .innerContent .itemContent ul li {
  font-size: 18px;
}
.wrapper.officesWrapper .listView.offices li .cardView.office .innerContent .itemContent ul li a {
  text-decoration: underline;
  color: #CC2647;
}

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

/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Detail Views (shared) */
/****************************************************************************************************/
.detailView {
  position: relative;
  /* Social */
  /*Detail View Specfic*/
}
.detailView .topperSection {
  position: relative;
  margin: 0;
  /* print / share buttons */
}
.detailView .topperSection .mainContent {
  padding: 2rem 0 3rem 0;
}
.detailView .topperSection .meta {
  color: #0e3f75;
  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 hr {
  margin: 2rem 0 0;
}
.detailView .topperSection .topperContent {
  position: relative;
  padding: 3rem 5rem;
  top: -4rem;
  z-index: 2;
  height: 100%;
  z-index: 3;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  background: white;
  box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px;
}
.detailView .topperSection .topperContent h1 {
  margin: 0;
  text-transform: uppercase;
  position: relative;
  font-size: 2rem;
  max-width: 80%;
}
.detailView .topperSection .topperContent h1:before {
  content: "";
  position: absolute;
  left: -1rem;
  height: 100%;
  width: clamp(1px,0.3vw,4px);
  background: #CC2647;
}
.detailView .topperSection .authorTeam a {
  color: #555555;
}
.detailView .topperSection .authorTeam a:hover, .detailView .topperSection .authorTeam a:focus {
  color: #098CE6;
}
.detailView .overview {
  margin-top: 0;
  margin-bottom: 1rem;
}
.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;
}
.detailView .sidebarGrid {
  display: flex;
  justify-content: flex-start;
  align-content: flex-start;
}
.detailView .sidebarGrid .mainContent {
  width: 100%;
}
.detailView .sidebarGrid .mainContent > :first-child {
  margin-top: 2rem;
}
.detailView .sidebarGrid .mainContent > :last-child {
  margin-bottom: 4rem;
}
.detailView .sidebarGrid .sideContent {
  width: 350px;
  padding-left: 2rem;
}
.detailView .sidebarGrid .sideContent .sideContentInner > :first-child {
  margin-top: 2rem;
}
.detailView .sidebarGrid .sideContent .sideContentInner > :last-child {
  margin-bottom: 4rem;
}
@media only screen and (max-width: 767px) {
  .detailView .sidebarGrid {
    flex-direction: column-reverse;
  }
  .detailView .sidebarGrid .sideContent {
    width: 100%;
  }
}
.detailView.expertise .breadCrumb {
  margin-top: 4rem;
}
.detailView.expertise .mainContent {
  display: flex;
}
.detailView.expertise .mainContent .left {
  width: 70%;
  padding-right: 3rem;
}
.detailView.expertise .mainContent .right {
  width: 30%;
  /* 
          &:hover {
              background: none;
              transform: translateX(5px) translateY(0px);
          }

          &:first-child {
              background: none;
          }

          a {
              font-weight: $fontWeightMedium;
              font-family: $secondaryFont;
              color: $primaryColour;
              text-decoration: none;
              text-transform: uppercase;
              font-size: 16px;
          }
      }
  }*/
}
.detailView.expertise .mainContent .right h2 {
  margin-top: 0;
  margin-bottom: 20px;
}
.detailView.expertise .mainContent .right .expertisesWrapper {
  padding-top: 0;
}
.detailView.expertise .mainContent .right .related.expertises {
  --card-gap: 15px 0rem;
  border-top: 1px solid #CC2647;
  padding-top: 20px;
}
.detailView.expertise .mainContent .right .related.expertises li {
  display: flex;
}
.detailView.expertise .mainContent .right .related.expertises li:hover {
  transform: translateX(5px) translateY(0px);
}
.detailView.expertise .breadCrumbInner {
  margin-top: -2rem;
}
.detailView.expertise .teammembersWrapper {
  padding-bottom: 2rem;
}
.detailView.expertise .teammembersWrapper .listView.teammembers {
  --card-width: 13rem;
  --card-gap: 1rem 2rem;
  margin-bottom: 0;
}
.detailView.expertise .casesBackground {
  position: relative;
}
.detailView.expertise .casesBackground .casesWrapper .splide__track .cases li.splide__slide .cardView.case .related.teammembersWrapper .listView.teammembers {
  display: flex;
  flex-wrap: wrap;
  --card-gap: 0rem 0rem;
  font-size: 16px;
}
.detailView.expertise .casesBackground .casesWrapper .cases li .cardView.case:hover {
  background: none;
  box-shadow: none;
}
.detailView.expertise .newsitemsWrapper {
  position: relative;
}
.detailView.case .belmorePainting {
  height: 15rem;
}
.detailView.case .topperSection {
  top: -6rem;
  margin-bottom: -6rem;
}
.detailView.case .topperSection .topperContent {
  padding: 4rem 0rem;
  top: 0;
}
.detailView.case .topperSection .topperContent .printAndShare {
  margin-top: 1rem;
  justify-content: center;
}
.detailView.case .topperSection .topperContent .topperTitle {
  padding: 0 3rem;
  text-align: center;
}
.detailView.case .topperSection .topperContent .topperTitle h1 {
  max-width: 100%;
  white-space: break-spaces;
  text-transform: none;
  text-align: center;
  font-weight: 300;
  margin-bottom: 2rem;
  margin-top: 1rem !important;
}
.detailView.case .topperSection .topperContent .topperTitle h1:before {
  content: none;
}
.detailView.case .topperSection .topperContent .topperTitle .dates {
  color: #0e3f75;
  font-size: 16px;
}
.detailView.case .topperSection .topperContent .topperTitle .authorTeam {
  max-width: 60%;
  margin: auto;
}
.detailView.case .topperSection .breadCrumb .breadCrumbInner {
  padding-top: 2rem;
}
.detailView.case .mainContent .cmsContent {
  padding: 0;
  margin-bottom: 2rem;
}
.detailView.case .mainContent .printAndShare .shareThis .toggleSharingOptions {
  display: flex;
  flex-direction: row-reverse;
  border: none;
  text-transform: capitalize;
  text-decoration: underline !important;
  padding: 0;
}
.detailView.case .mainContent .printAndShare .shareThis .toggleSharingOptions:hover {
  background: none;
  color: #0e3f75 !important;
}
.detailView.case .mainContent .printAndShare .shareThis .toggleSharingOptions:hover svg {
  color: #CC2647;
  border: 1px solid #CC2647;
}
.detailView.case .mainContent .printAndShare .shareThis .toggleSharingOptions svg {
  margin-right: 0.6rem !important;
  margin: 0;
  border: 1px solid #0e3f75;
  height: 40px;
  width: 40px;
  padding: 10px;
}
.detailView.case .expertisesWrapper {
  padding: 2rem 0;
}
.detailView.case .teammembersWrapper {
  padding-bottom: 3rem;
}
.detailView.case .teammembersWrapper .listView.teammembers {
  --card-width: 15rem;
  --card-gap: 1rem 2rem;
  margin-bottom: 0;
}
.detailView.case .casesBackground {
  position: relative;
}
.detailView.case .newsitemsWrapper {
  padding-top: 3rem;
  padding-bottom: 12rem;
  position: relative;
}
.detailView.case .newsitemsWrapper .viewAllMoreWrapper {
  position: absolute;
  left: 48%;
  transform: translate(-50%, -50%);
  bottom: 1rem;
}
.detailView.blogitem .belmorePainting {
  height: 15rem;
}
.detailView.blogitem .topperSection {
  top: -6rem;
  margin-bottom: -6rem;
}
.detailView.blogitem .topperSection .topperContent {
  padding: 3rem 0rem 2.5rem;
  top: 0;
}
.detailView.blogitem .topperSection .topperContent .topperTitle {
  padding: 0 3rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
.detailView.blogitem .topperSection .topperContent .topperTitle h1 {
  max-width: 100%;
  white-space: break-spaces;
  text-transform: none;
  text-align: center;
  font-weight: 300;
  margin-bottom: 2rem;
}
.detailView.blogitem .topperSection .topperContent .topperTitle h1:before {
  content: none;
}
.detailView.blogitem .topperSection .topperContent .topperTitle .dates {
  color: #0e3f75;
  font-size: 16px;
}
.detailView.blogitem .topperSection .topperContent .topperTitle .authorTeam {
  max-width: 60%;
  margin: auto;
}
.detailView.blogitem .topperSection .topperContent .printAndShare {
  justify-content: center;
}
.detailView.blogitem .topperSection .breadCrumb .breadCrumbInner {
  padding-top: 2rem;
}
.detailView.blogitem .mainContent .cmsContent {
  padding: 0;
}
.detailView.blogitem .mainContent .printAndShare .shareThis .toggleSharingOptions {
  display: flex;
  flex-direction: row-reverse;
  border: none;
  text-transform: capitalize;
  text-decoration: underline !important;
  padding: 0;
}
.detailView.blogitem .mainContent .printAndShare .shareThis .toggleSharingOptions:hover {
  background: none;
  color: #0e3f75 !important;
}
.detailView.blogitem .mainContent .printAndShare .shareThis .toggleSharingOptions:hover svg {
  color: #CC2647;
  border: 1px solid #CC2647;
}
.detailView.blogitem .mainContent .printAndShare .shareThis .toggleSharingOptions svg {
  margin-right: 0.6rem !important;
  margin: 0;
  border: 1px solid #0e3f75;
  height: 40px;
  width: 40px;
  padding: 10px;
}
.detailView.blogitem .teammembersWrapper {
  padding-bottom: 3rem;
}
.detailView.blogitem .teammembersWrapper .listView.teammembers {
  --card-width: 15rem;
  --card-gap: 1rem 2rem;
}
.detailView.blogitem .casesBackground .casesWrapper {
  padding: 2rem 0;
}
.detailView.blogitem .insightsWrapper {
  position: relative;
}
.detailView .printAndShare .shareThis .toggleSharingOptions {
  display: flex;
  flex-direction: row-reverse;
  border: none;
  text-transform: uppercase;
  text-decoration: underline !important;
  text-underline-offset: 0.2em;
  padding: 0;
  font-weight: 100;
}
.detailView .printAndShare .shareThis .toggleSharingOptions:hover {
  background: none;
  color: #0e3f75 !important;
}
.detailView .printAndShare .shareThis .toggleSharingOptions:hover svg {
  color: #CC2647;
  border: 1px solid #CC2647;
}
.detailView .printAndShare .shareThis .toggleSharingOptions svg {
  margin-right: 0.6rem !important;
  margin: 0;
  border: 1px solid #0e3f75;
  height: 40px;
  width: 40px;
  padding: 10px;
}
.detailView .casesWrapper .splide__arrows {
  justify-content: center;
  padding: 0;
}
.detailView .casesWrapper .viewAllMoreWrapper a {
  justify-content: center;
}
.detailView .casesWrapper .cases li .cardView.case {
  padding: 0;
}
.detailView .casesWrapper .cases li .cardView.case:hover {
  background: none;
  box-shadow: none;
}
.detailView .teammembersWrapper .viewAllMoreWrapper a {
  justify-content: center;
}
.detailView .newsitemsWrapper, .detailView .blogitemsWrapper {
  padding: 3rem 0;
}
.detailView .newsitemsWrapper .splide__arrows, .detailView .blogitemsWrapper .splide__arrows {
  padding: 0;
  width: fit-content;
  margin: 4.2rem auto;
  transform: rotate(90deg);
}
.detailView .newsitemsWrapper .viewAllMoreWrapper a, .detailView .blogitemsWrapper .viewAllMoreWrapper a {
  justify-content: center;
}
.detailView .expertisesWrapper {
  padding: 2rem 0 3rem 0;
}

/* #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(17, 17, 26, 0.11) 6px 10px 60px;
}
.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 Team - Cards and Detail View  */
/****************************************************************************************************/
.audioButton {
  padding: 0rem;
}

.audioFile {
  border: none;
  border-radius: 3px;
  cursor: pointer;
  margin: 0;
  display: inline;
}
.audioFile a {
  padding: 0;
  display: inline-block;
  color: #098CE6;
  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);
}

/* Team Card View */
.cardView.teammember {
  /* image wrapper  */
  /* content wrapper  */
  /* position */
  /* email & phone etc */
}
.cardView.teammember .itemImage {
  position: relative;
  aspect-ratio: 1/1;
  background-color: #d2dae5;
  transition: all 0.5s ease;
  overflow: hidden;
}
.cardView.teammember .itemImage:hover img {
  transform: scale(1.28) translateY(-0.15rem);
  transition: all 0.5s ease;
}
.cardView.teammember .itemImage img {
  object-fit: contain;
  transition: all 0.5s ease;
  transform: scale(1.2);
}
.cardView.teammember .bgImgWrapper {
  width: 100%;
  height: inherit;
  background-color: #E6E6E6;
}
.cardView.teammember .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%;
}
.cardView.teammember .bgImgWrapper:after {
  /* to clear float */
  content: "";
  display: table;
  clear: both;
}
.cardView.teammember .bgImgWrapper .bgImg.lazy {
  filter: blur(8px);
  opacity: 1;
  transition: all 0.2s cubic-bezier(0.86, 0, 0.07, 1), font-size 0s linear, padding 0s linear, margin 0s linear;
  will-change: background, filter, opacity;
}
.cardView.teammember .bgImgWrapper .bgImg.lazy + .previewImg {
  filter: blur(8px);
  position: absolute;
  inset: 0;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  transition: all 0.2s cubic-bezier(0.86, 0, 0.07, 1), font-size 0s linear, padding 0s linear, margin 0s linear;
}
.cardView.teammember .bgImgWrapper .bgImg.lazy.lazy-loaded {
  filter: blur(0px);
}
.cardView.teammember .bgImgWrapper .bgImg.lazy.lazy-loaded + .previewImg {
  opacity: 0;
  filter: blur(0px);
}
.cardView.teammember .itemContent {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
}
.cardView.teammember .spaceFiller {
  height: 1.5rem;
}
.cardView.teammember .nameDesignationsPronunciation {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-start;
  margin: 1rem 0 0 0;
  padding: 0;
  /* title */
  /* designations */
  /* audio */
}
.cardView.teammember .nameDesignationsPronunciation h3 {
  font-size: 1.2rem;
  margin: 0;
  line-height: 1;
}
.cardView.teammember .nameDesignationsPronunciation h3 a {
  text-decoration: none;
  text-transform: capitalize;
  color: #0e3f75;
  font-weight: 700;
}
.cardView.teammember .nameDesignationsPronunciation .designations {
  color: #0e3f75;
  display: block;
  margin: 0;
}
.cardView.teammember .nameDesignationsPronunciation .audioFile {
  display: inline-block;
  margin: 0;
  padding-left: 1rem;
}
.cardView.teammember .nameDesignationsPronunciation .audioFile .icon.audio {
  font-size: 0.8rem;
}
.cardView.teammember .position {
  color: #098CE6;
  display: block;
  margin-bottom: 10px;
  font-weight: 300;
  font-family: presicav, sans-serif;
  font-size: 16px;
}
.cardView.teammember .contactInfo {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  min-height: 5rem;
}
.cardView.teammember .contactInfo li {
  font-size: 0.9rem;
}
.cardView.teammember .contactInfo li .prefixLabel {
  font-weight: 500;
  color: #0e3f75;
  display: inline-block;
  margin-right: 0.3em;
}
.cardView.teammember .contactInfo li a {
  font-family: inherit;
  color: #0e3f75;
  text-decoration: none;
  text-transform: lowercase;
}
.cardView.teammember .contactInfo li a:focus, .cardView.teammember .contactInfo li a:hover {
  text-decoration: underline;
}
.cardView.teammember .contactInfo li a:active {
  text-decoration: underline;
}

.quote {
  color: #0e3f75;
  font-family: presicav, sans-serif;
  font-weight: 500;
  padding-bottom: 1rem;
}

.detailView.teammember .viewAllMoreWrapper:before {
  top: 27.5px;
}
.detailView.teammember .bioTopContent {
  position: relative;
  background-color: #d2dae5;
}
.detailView.teammember .bioTopContent .container {
  padding-right: 5rem;
  overflow: hidden;
}
.detailView.teammember .bioTopContent .bioTopContactGrid {
  position: relative;
  height: 100%;
  display: flex;
  flex-direction: row-reverse;
  padding: 2rem 0 0;
}
.detailView.teammember .bioTopContent .bioImage {
  flex-grow: 1;
  animation: expandTeamImage forwards 1s ease;
  width: 45%;
  opacity: 0;
}
.detailView.teammember .bioTopContent .bioImage .bgImgWrapper {
  margin: 0;
}
.detailView.teammember .bioTopContent .bioImage .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: 121.4285714286%;
}
.detailView.teammember .bioTopContent .bioImage .bgImgWrapper:after {
  /* to clear float */
  content: "";
  display: table;
  clear: both;
}
.detailView.teammember .bioTopContent .bioContact {
  display: flex;
  flex-direction: column;
  padding: 2rem 0;
}
.detailView.teammember .bioTopContent .bioContact .nameDesignationsPronunciation {
  display: inline-block;
  margin-bottom: 0.3em;
  margin-top: 1rem;
}
.detailView.teammember .bioTopContent .bioContact .nameDesignationsPronunciation h1 {
  display: inline;
  color: #0e3f75;
  font-family: presicav, sans-serif;
  font-weight: 700;
  font-size: 2.5rem;
  text-transform: capitalize;
  margin: 0;
}
.detailView.teammember .bioTopContent .bioContact .nameDesignationsPronunciation .designations {
  font-family: presicav, sans-serif;
}
.detailView.teammember .bioTopContent .bioContact .nameDesignationsPronunciation button {
  margin: 0;
  margin-left: 0.6rem;
}
.detailView.teammember .bioTopContent .bioContact .nameDesignationsPronunciation .audioFile {
  margin-left: 2rem;
}
.detailView.teammember .bioTopContent .bioContact .position {
  display: block;
  margin: 0;
  padding-bottom: 1rem;
  font-size: 1rem;
  color: #0e3f75;
  font-weight: 300;
  font-family: presicav, sans-serif;
}
.detailView.teammember .bioTopContent .bioContact .seeAllLawyers a {
  justify-content: flex-start;
}
.detailView.teammember .bioTopContent .bioContact .pronounsWrapper, .detailView.teammember .bioTopContent .bioContact .languages {
  display: block;
  gap: 0.5rem;
}
.detailView.teammember .bioTopContent .bioContact > .contactInfo {
  margin-top: 1rem;
}
.detailView.teammember .bioTopContent .bioContact .contactInfo {
  font-size: 0.9rem;
  text-transform: lowercase;
  /* wrapper around phone and email links */
}
.detailView.teammember .bioTopContent .bioContact .contactInfo li {
  padding-bottom: 7px;
}
.detailView.teammember .bioTopContent .bioContact .contactInfo .contactItemWrapper {
  display: flex;
  flex-direction: row;
  color: #0e3f75;
  font-weight: 500;
}
.detailView.teammember .bioTopContent .bioContact .contactInfo .contactItemWrapper a {
  color: #0e3f75;
  text-decoration: none;
  text-transform: lowercase;
}
.detailView.teammember .bioTopContent .bioContact .contactInfo .contactItemWrapper a:hover, .detailView.teammember .bioTopContent .bioContact .contactInfo .contactItemWrapper a:active, .detailView.teammember .bioTopContent .bioContact .contactInfo .contactItemWrapper a:focus {
  color: #098CE6;
}
.detailView.teammember .bioTopContent .bioContact .prefixLabel, .detailView.teammember .bioTopContent .bioContact .listViewTitle {
  display: block;
  padding-right: 5px;
  color: #0e3f75;
  font-size: 0.9rem;
  flex-shrink: 0;
}
.detailView.teammember .bioTopContent .bioContact .officesWrapper {
  display: flex;
  flex-direction: row;
}
.detailView.teammember .bioTopContent .bioContact .offices {
  font-size: 0.9rem;
}
.detailView.teammember .bioTopContent .bioContact .offices a {
  color: black;
}
.detailView.teammember .bioTopContent .bioContact .offices a:focus, .detailView.teammember .bioTopContent .bioContact .offices a:hover, .detailView.teammember .bioTopContent .bioContact .offices a:active {
  color: #098CE6;
  text-decoration: underline;
}
.detailView.teammember .bioTopContent .bioContact .printShareAndSocial {
  display: flex;
  flex-direction: row;
  margin: 2rem 0;
  gap: 0.5rem;
  font-size: 1.2em;
}
.detailView.teammember .bioTopContent .bioContact .printShareAndSocial a {
  border: 1px solid #0e3f75;
  padding: 5px 10px;
  width: 45px;
}
.detailView.teammember .bioTopContent .bioContact .printShareAndSocial a:hover {
  background: #0e3f75;
  border: 1px solid white;
  cursor: pointer;
}
.detailView.teammember .bioTopContent .bioContact .printShareAndSocial a:hover svg {
  color: white;
}
.detailView.teammember .bioTopContent .bioContact .printShareAndSocial a svg {
  color: #0e3f75;
  width: 100%;
}
.detailView.teammember .bioTopContent .bioContact div.socialLinks {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: flex-start;
  column-gap: 2rem;
}
.detailView.teammember .bioTopContent .bioContact .assistantWrapper {
  display: flex;
  flex-direction: row;
  margin-top: 1rem;
}
.detailView.teammember .bioTopContent .bioContact .listView.teammembers.assistant {
  /* cardview on the team detail pages*/
  gap: 1rem;
  font-size: 0.9rem;
}
.detailView.teammember .bioTopContent .bioContact .listView.teammembers.assistant .cardView.teammember .itemContent {
  align-items: flex-start;
  padding: 0;
}
.detailView.teammember .expertisesWrapper {
  padding: 2rem 0;
}
.detailView.teammember .casesBackground {
  position: relative;
}
.detailView.teammember .casesBackground .casesWrapper {
  padding: 1rem 0;
}
.detailView.teammember .casesBackground .casesWrapper .cases .case:hover {
  background: none;
  box-shadow: none;
}
.detailView.teammember .casesBackground .casesWrapper .cases .case .related.teammembersWrapper .listView.teammembers {
  display: flex;
  flex-wrap: wrap;
  --card-width: 0;
  --card-gap: 0;
  font-size: 16px;
}
.detailView.teammember .belmorePainting {
  height: 6rem;
  background-position: bottom right;
}
.detailView.teammember .newsitemsWrapper {
  padding: 3rem 0;
  --card-width: 100%;
}
.detailView.teammember .newsitemsWrapper .splide__track {
  position: relative;
}
.detailView.teammember .newsitemsWrapper .splide__track .newsitems .splide__slide .newsitem {
  padding-bottom: 0;
}
.detailView.teammember .newsitemsWrapper .splide__track .newsitems .splide__slide .newsitem .innerContent .itemContent {
  width: 100%;
  /*padding-bottom: 2rem;*/
}
.detailView.teammember .newsitemsWrapper .splide__track .newsitems .splide__slide:last-child .newsitem {
  border: none;
}
.belmorePainting {
  background: url("/CFImages/Belmore_Painting.jpg");
  background-size: cover;
  background-repeat: no-repeat;
  height: 8rem;
}
.belmorePainting.short {
  height: 6rem !important;
}

.seeAllLawyers {
  color: #0e3f75;
  font-family: presicav, sans-serif;
  font-weight: 700;
  letter-spacing: 0.1em;
  font-size: 0.9rem;
  text-transform: uppercase;
  position: relative;
  text-decoration: none;
  transition: 0.5s all ease-in;
}
.seeAllLawyers a {
  color: #0e3f75;
  font-weight: 700;
  letter-spacing: 0.1em;
  font-family: presicav, sans-serif;
  text-transform: uppercase;
  text-decoration: none;
  transition: 0.5s all ease;
  cursor: pointer;
  border: none;
  display: flex;
  align-items: center;
  gap: 1.1em;
}
.seeAllLawyers a:before {
  content: "";
  background: url(/CFImages/Icons/belmore-plus.svg);
  background-size: 100% auto;
  width: 1.25rem;
  height: 1.25rem;
  background-repeat: no-repeat;
  transition: 0.5s all ease;
}
.seeAllLawyers a:hover {
  color: #CC2647;
  background: none;
  border: none;
}
.seeAllLawyers a:hover:before {
  transform: rotate(90deg) scale(1.1);
  transition: 0.5s all ease;
}
.seeAllLawyers:hover {
  color: #CC2647;
  cursor: pointer;
  text-decoration: none;
}
.seeAllLawyers:hover a {
  color: #CC2647;
}

.sectionTitle {
  font-size: 1.5rem;
  font-weight: 700;
  padding: 1rem 0 1rem 0.7em;
  border-left: 4px solid #CC2647;
  border-left-width: clamp(1px, 0.3vw, 4px);
  text-transform: uppercase;
  letter-spacing: 0.1em;
  margin-top: 0;
  margin-bottom: 1.5rem;
}

/*K TAB STRIP*/
.k-tabstrip .k-tabstrip-items-wrapper .relatedTabs {
  box-shadow: rgba(14, 30, 37, 0) 0px 2px 75px 0px, rgba(14, 30, 37, 0.14) 0px 2px 16px 0px;
  padding: 2rem 2rem;
  display: flex;
  justify-items: center;
  justify-content: space-evenly;
}
.k-tabstrip .k-tabstrip-items-wrapper .relatedTabs li {
  border: none;
}
.k-tabstrip .k-tabstrip-items-wrapper .relatedTabs li .k-link {
  font-size: 1rem;
  font-family: presicav, sans-serif;
  font-weight: 500;
  text-transform: uppercase;
  color: #707070;
}
.k-tabstrip .k-tabstrip-items-wrapper .relatedTabs li.k-state-active .k-link {
  color: #0e3f75;
  position: relative;
}
.k-tabstrip .k-tabstrip-items-wrapper .relatedTabs li.k-state-active .k-link:before {
  content: "";
  position: absolute;
  left: 0rem;
  height: 100%;
  width: 3px;
  background: #CC2647;
}
.k-tabstrip .tabContent {
  border: none;
  padding: 2rem 0 0 0;
}

/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Expertises + Sectors - Cards and Detail View  */
/****************************************************************************************************/
/* Expertise: All Expertise */
.expertises li {
  transition: all 0.5s ease;
}
.expertises li:hover {
  transform: translateY(-5px);
}

/*.expertises {
    li {
        box-shadow: rgb(100 100 111 / 20%) 0px 7px 29px 0px;
        border-left: 5px solid $belmoreRed;
        padding: 2rem 1rem;
        display: flex;
        align-items: center;
        transition: all .5s ease;

        &:hover {
            background: $primaryColour;
            box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px;
            transform: translateY(-5px);
            cursor: pointer;


            .expertise {
                h3 {
                    a {
                        color: white;
                    }
                }
            }
        }

        .expertise {
            h3 {
                margin: 0;
                padding: 0;

                a {
                    font-family: $secondaryFont;
                }
            }
        }
    }
}*/
/* Expertise: CardView (Shared) */
.cardView.expertise {
  /* this was on the li */
  box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px;
  border-left: 5px solid #CC2647;
  padding: 2rem 1rem;
  display: flex;
  align-items: center;
  height: 100%;
}
.cardView.expertise h3 {
  margin: 0;
  padding: 0;
  color: #0e3f75;
  text-decoration: none;
  word-break: break-word;
  hyphens: auto;
}
.cardView.expertise h3:after {
  width: 3.8rem;
}
.cardView.expertise h3 a {
  color: inherit;
  text-decoration: none;
}
.cardView.expertise h3 a:focus, .cardView.expertise h3 a:hover {
  color: #098CE6;
}
.cardView.expertise h3 a:active {
  color: #076eb5;
}
.cardView.expertise:hover {
  background: #0e3f75;
  box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px;
}
.cardView.expertise:hover h3 a {
  color: white;
}
.cardView.expertise.simple {
  /* this was on the li */
  box-shadow: none;
  border-left: none;
  padding: 0;
  display: flex;
  align-items: center;
  height: 100%;
}
.cardView.expertise.simple a {
  font-weight: 500;
  font-family: presicav, sans-serif;
  color: #0e3f75;
  text-decoration: none;
  text-transform: uppercase;
  font-size: 16px;
}
.cardView.expertise.simple:hover {
  background: none;
  box-shadow: none;
}
.cardView.expertise.simple.selected {
  display: flex;
}
.cardView.expertise.simple.selected a {
  color: #CC2647 !important;
}
.cardView.expertise.simple.selected:before {
  content: "";
  background: url(/CFImages/Icons/slidearrow-right.svg);
  background-size: contain;
  background-repeat: no-repeat;
  width: 0.7rem;
  height: 0.7rem;
  margin: 0 1rem 0 0;
}

/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Insights (shared styles) - Cards and Detail View  */
/****************************************************************************************************/
/* .publications .blogitems .newsitems .eventitems .cases etc... */
/* Insight CardView */
.cardView.blogitem {
  margin: 0;
  position: relative;
  padding-bottom: 2rem;
  width: 100%;
}
.cardView.blogitem .contentTypeLabels {
  display: flex;
}
.cardView.blogitem .contentTypeLabels a {
  font-family: presicav, sans-serif;
  font-weight: 400;
  text-transform: uppercase;
  font-size: 0.8rem;
  letter-spacing: 0.15em;
  text-decoration: none;
  font-optical-sizing: 0.7rem;
}
.cardView.blogitem .meta {
  color: #0e3f75;
  margin-top: 0.6rem;
  text-transform: none;
  font-family: presicav, sans-serif;
}
.cardView.blogitem .meta .dates {
  text-transform: inherit;
}
.cardView.blogitem .meta .dates time {
  text-transform: inherit;
  font-size: 0.7rem;
  font-weight: 600;
  letter-spacing: 0.1em;
}
.cardView.blogitem h3 {
  color: #555555;
  margin: 0.3em 0 1em 0;
  font-size: 1.1rem;
}
.cardView.blogitem h3 a {
  color: #0e3f75;
  text-decoration: none;
  line-height: 1;
}
.cardView.blogitem h3 a:hover {
  color: #CC2647;
}
.cardView.blogitem .cmsContent {
  font-size: 0.9rem;
  line-height: 1.5;
  font-weight: 300;
}

.casesWrapper.casesFilter .cases {
  margin: -1rem;
}
.casesWrapper.casesFilter .cases li .cardView.case {
  overflow: hidden;
  padding: 1rem 1rem 1.4rem 1rem;
}
.casesWrapper.casesFilter .cases li .cardView.case:hover:before {
  opacity: 1;
  transform: translateX(66%);
}
.casesWrapper.casesFilter .cases li .cardView.case:before {
  content: " ";
  padding: 1rem;
  background: linear-gradient(90deg, #85d5f6 0%, white 66%);
  box-shadow: rgba(149, 157, 165, 0.25) 0px 8px 20px;
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  z-index: -1;
  opacity: 0;
  transition: all 0.2s ease, font-size 0s linear, padding 0s linear, margin 0s linear, outline 0s linear;
  transition-duration: 1s;
  width: 300%;
  transform: translateX(0);
}
.casesWrapper .cases li .cardView.case .meta {
  margin-top: 0;
}
.casesWrapper .cases li .cardView.case .related.teammembersWrapper .listView.teammembers {
  display: flex;
  flex-wrap: wrap;
  --card-gap: 0rem 0rem;
  font-size: 16px;
  margin-bottom: 0;
}
.casesWrapper .cases li .cardView.case .related.teammembersWrapper .listView.teammembers li {
  display: flex;
  color: #0e3f75;
}
.casesWrapper .cases li .cardView.case .related.teammembersWrapper .listView.teammembers li a {
  color: #0e3f75;
}
.casesWrapper .cases li .cardView.case .related.teammembersWrapper .listView.teammembers li a:hover {
  color: #CC2647;
}
.casesWrapper .cases li .cardView.case .related.teammembersWrapper .listView.teammembers li:first-child:after {
  content: ":";
  text-decoration: none;
}
.casesWrapper .cases li .cardView.case .related.teammembersWrapper .listView.teammembers li:after {
  content: ", ";
  padding-right: 5px;
  text-decoration: underline;
}
.casesWrapper .cases li .cardView.case .related.teammembersWrapper .listView.teammembers li:last-child:after {
  content: ".";
}

.newsitemsWrapper .listView.newsitems li, .newsitemsWrapper .sliderView.newsitems li {
  transition: 1s all ease;
  padding: 1rem 1rem 2rem 1rem;
  border-bottom: 1px solid #098CE6;
}
.newsitemsWrapper .listView.newsitems li:hover, .newsitemsWrapper .sliderView.newsitems li:hover {
  background: linear-gradient(90deg, #85d5f6 0%, #d5effa 82%);
  box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
}
.newsitemsWrapper .listView.newsitems li .cardView.newsitem, .newsitemsWrapper .sliderView.newsitems li .cardView.newsitem {
  padding-bottom: 0;
}
.newsitemsWrapper .listView.newsitems li .cardView.newsitem h3 a:hover, .newsitemsWrapper .sliderView.newsitems li .cardView.newsitem h3 a:hover {
  color: #CC2647;
}

/* Insight DetailView */
.detailView.blogitem .topperSection .topperContent .topperTitle h1 {
  margin-top: 0;
}

/* blog detail only */
.detailView.blogitem div.disclaimerBlock p {
  font-size: 0.8rem;
  margin-top: 2rem;
  padding: 1rem;
  border: 1px solid #A3A3A3;
  background-color: #E6E6E6;
}

/* Home Page Featured Insights (with slider) */
.homePageFeatured {
  margin: 5rem 0;
}
.homePageFeatured .homePageFeaturedGrid {
  display: flex;
  flex-wrap: nowrap;
  margin: 0;
}
.homePageFeatured .homePageFeaturedGrid .featuredItems {
  margin: 0;
  /*border-right: 1px solid $primaryColour;*/
  border-right: 1px solid #CCCCCC;
  padding-right: 2rem;
}
.homePageFeatured .homePageFeaturedGrid .featuredItems .cardView h3 {
  font-size: 2.5rem;
  margin: 0.6rem 0 1rem;
}
.homePageFeatured .homePageFeaturedGrid .recentItems {
  margin: 0;
}
.homePageFeatured .homePageFeaturedGrid .recentItems .splide {
  height: 100%;
  padding-left: 2rem;
}
.homePageFeatured .homePageFeaturedGrid .recentItems .splide .splide__list {
  margin: 0 -1rem;
}
.homePageFeatured .homePageFeaturedGrid .recentItems .splide .splide__list > .splide__slide {
  margin: 0 1rem;
}
.homePageFeatured .homePageFeaturedGrid .recentItems .splide .splide__list .splide__slide {
  display: flex;
  flex-direction: column;
}
.homePageFeatured .homePageFeaturedGrid .recentItems .splide .splide__list .splide__slide .cardView {
  height: auto;
}
.homePageFeatured .viewAllMoreWrapper {
  display: flex;
  justify-content: center;
  margin-top: 5rem;
}
.homePageFeatured .splide__pagination {
  display: none;
}
.homePageFeatured .splide__arrows {
  position: absolute;
  left: 0;
  top: calc(100% + 1.4rem);
  display: flex;
}
.homePageFeatured .splide__arrows .splide__arrow {
  color: #0e3f75;
  position: relative;
  inset: initial;
}
.homePageFeatured.hasFeaturedItems .homePageFeaturedGrid {
  display: flex;
  flex: 0 1 auto;
  flex-wrap: wrap;
  flex-direction: row;
  margin-left: 0;
  margin-right: 0;
  box-sizing: border-box;
}
.homePageFeatured.hasFeaturedItems .homePageFeaturedGrid > div.col {
  flex: 0 0 auto;
  /*order: 0;*/
  width: initial;
  max-width: 100%;
  margin-left: 0;
  margin-right: 0;
  vertical-align: top;
  /*width: calc((1 / 2) * 100%);*/
  flex-basis: calc((1 / 2) * 100%);
}
.homePageFeatured.hasFeaturedItems .splide__arrows {
  transform: translateX(calc(-50%));
  /*transform: translateX(calc(-50% - 1px));*/
}
/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region News - Cards and Detail View */
/****************************************************************************************************/
/* News CardView */
.cardView.insights.newsitem {
  padding-bottom: 2rem;
}
.cardView.insights.newsitem h3 {
  margin: 0;
  font-size: 1.2rem;
}
.cardView.insights.newsitem h3 a {
  color: inherit;
}
.cardView.insights.newsitem h3 a:hover, .cardView.insights.newsitem h3 a:focus {
  color: #098CE6;
}
.cardView.insights.newsitem h3 a:active {
  color: #076eb5;
}
.cardView.insights.newsitem .summary {
  margin-top: 1rem;
}

/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Events - Cards and Detail View */
/****************************************************************************************************/
.cardView.event .innerContent .meta {
  text-transform: uppercase;
}
/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Blog Items - Cards and Detail View */
/****************************************************************************************************/
.detailView.blogitem .contentSidebarWrapper {
  margin-top: -3rem;
}
.detailView.blogitem .contentSidebarWrapper .readMoreContent {
  padding-top: 4.4rem;
}
.detailView.blogitem .primaryImage .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: 25%;
}
.detailView.blogitem .primaryImage .bgImgWrapper:after {
  /* to clear float */
  content: "";
  display: table;
  clear: both;
}

/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Cases - Cards and Detail View */
/****************************************************************************************************/
.detailView.case .expertisesWrapper + .bigBlockQuote {
  margin-top: 0 !important;
}

.casesWrapper.splide .splide__track {
  margin: 2rem 0;
}

/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Rankings - Cards and Detail View  */
/****************************************************************************************************/
/* .rankings */
/* Ranking CardView */
.cardView.ranking {
  margin: 0;
  position: relative;
  height: 100%;
  padding: 1rem 1rem 0.7rem 1rem;
  box-shadow: rgba(17, 17, 26, 0.1) 2px 0px 23px;
  transition: 0.5s all ease;
  border-left: 5px solid #CC2647;
  display: flex;
  width: 94%;
  align-items: center;
}
.cardView.ranking:hover {
  box-shadow: rgba(17, 17, 26, 0.11) 6px 10px 60px;
  transition: 0.5s all ease;
  transform: translateY(-1px);
}
.cardView.ranking .innerContent {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  height: 100%;
  /* optional item */
}
.cardView.ranking .innerContent span {
  display: block;
  margin: 0.2rem;
}
.cardView.ranking .innerContent span.rankingPublisher {
  font-family: presicav, sans-serif;
  font-weight: 400;
  text-transform: uppercase;
  color: #0e3f75;
  font-size: 1.1rem;
  text-align: left;
  margin: 0 0 10px 0;
  font-weight: 700;
}
.cardView.ranking .innerContent span.rankingAccolade {
  color: #0e3f75;
  font-weight: 400;
  font-family: presicav, sans-serif;
  text-transform: uppercase;
  font-size: 0.9rem;
  max-width: 100%;
  text-align: left;
  padding-right: 1rem;
  margin: 0 0 2em 0;
  line-height: 1.5;
  letter-spacing: 0.05em;
}
.cardView.ranking .innerContent span.rankingLocation {
  color: #707070;
  font-size: 0.7rem;
  text-transform: uppercase;
}
.cardView.ranking .innerContent span.yearAwarded, .cardView.ranking .innerContent .yearOfAward {
  color: #CC2647;
  font-size: 0.9rem;
  border-top: 1px solid #CC2647;
  padding-top: 10px;
  width: 100%;
  font-weight: 400;
  font-family: presicav, sans-serif;
  letter-spacing: 0.1em;
  margin-top: auto;
}
.cardView.ranking .innerContent span.yearAwarded:hover, .cardView.ranking .innerContent .yearOfAward:hover {
  text-decoration: none;
}

.authorTeam {
  font-size: 16px;
  font-weight: 500;
  color: #0e3f75;
}
.authorTeam a {
  color: #0e3f75 !important;
}
.authorTeam a:hover {
  color: #CC2647 !important;
}

.awardsPage .fieldGroups .k-dropdown .k-dropdown-wrap .k-input {
  font-size: 14px;
}

/*#endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Testimonials - Cards and Detail View  */
/****************************************************************************************************/
/* Testimonial CardView */
.cardView.testimonial blockquote {
  margin: 0;
}
.cardView.testimonial blockquote cite {
  display: block;
  margin-top: 1.4rem;
  font-size: 1rem;
}

/* Office CardView */
.cardView.office .innerContent .itemContent .officeTitle {
  font-weight: 700;
  text-transform: uppercase;
}
.cardView.office .innerContent .itemContent address {
  padding-top: 10px;
}
.cardView.office .innerContent .itemContent .prefixLabel {
  padding-right: 5px;
}
.cardView.office .innerContent .itemContent a {
  text-decoration: none;
}

/*#endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Filtered Content Items */
/****************************************************************************************************/
.fieldGroups {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  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;
}
.fieldGroups .k-dropdown {
  width: 100%;
}
.fieldGroups .k-dropdown:hover .k-dropdown-wrap, .fieldGroups .k-dropdown.k-state-border-down .k-dropdown-wrap {
  border-color: #0e3f75;
}
.fieldGroups .k-dropdown .k-dropdown-wrap {
  border: 1px solid #CC2647;
  border-radius: 1px;
  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.5rem;
  font-size: 1rem;
  font-weight: 500;
  color: #0e3f75;
  -webkit-user-select: none;
          user-select: none;
  font-family: presicav, sans-serif;
  /*font-size: 12px;*/
  text-transform: uppercase;
  white-space: normal;
}
.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;
  right: 1rem;
}
.fieldGroups .k-dropdown .k-dropdown-wrap .k-select .k-icon:before {
  background-image: url(/CFImages/Icons/triangle-tertiary.svg);
  background-size: 100% auto;
  transform: rotate(90deg);
  height: 10px;
  width: 10px;
}
.fieldGroups.checkboxes {
  flex-wrap: wrap;
}
.fieldGroups.checkboxes fieldset legend {
  width: 100%;
  height: auto;
  position: relative;
  margin: 0;
  padding: 0;
  overflow: initial;
}
.fieldGroups.checkboxes fieldset ul.grid.checkboxes {
  display: flex;
  flex-direction: column;
  justify-content: space-evenly;
}
.fieldGroups.checkboxes fieldset ul.grid.checkboxes li.field.col {
  flex: 0;
  font-size: 0.9rem;
}

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

.k-list-optionlabel,
.k-list .k-item {
  padding: 0.8rem 0.6rem;
  font-family: presicav, sans-serif;
}
.k-list-optionlabel:hover,
.k-list .k-item:hover {
  color: white;
  background-color: #b72240;
}
.k-list-optionlabel.k-state-selected,
.k-list .k-item.k-state-selected {
  background-color: #0e3f75;
}
.k-list-optionlabel.k-state-selected:hover,
.k-list .k-item.k-state-selected:hover {
  background-color: #b72240;
}

/* Filters */
.filtersContainer {
  display: block;
  margin: 0 auto;
  width: 100%;
  margin: 0rem auto 2.5rem;
  /*max-width: calc(100% - 4rem);
  margin: 4rem auto 6rem;*/
  max-width: 100%;
}
.filtersContainer fieldset legend {
  clip: rect(0, 0, 0, 0);
  width: 1px;
  height: 1px;
  border: 0;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  position: absolute;
}
.filtersContainer .display-flex {
  align-items: center;
  width: 100%;
}
.filtersContainer .display-flex .display-flex {
  flex-direction: row-reverse;
}
.filtersContainer .display-flex .display-flex .keywordSearchWrapper {
  width: 50%;
  margin-bottom: 0rem;
}
.filtersContainer .display-flex .display-flex .keywordSearchWrapper input {
  height: 3.1rem;
}
.filtersContainer .display-flex .display-flex .advancedFiltersContainer {
  width: 40%;
  margin-right: 1rem;
}

/* Keyword Search */
.keywordSearchWrapper {
  margin-bottom: 1.4rem;
  position: relative;
}
.keywordSearchWrapper input[type=search] {
  border: 1px solid #CC2647;
  padding-left: 1rem;
  box-sizing: border-box;
  height: 3.4rem;
  font-family: presicav, sans-serif;
  color: #0e3f75;
  font-weight: 700;
  /*font-size: 14px;*/
  /* the animated underline */
}
.keywordSearchWrapper input[type=search] + .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, #0e3f75, #0e3f75 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 {
  position: absolute;
  right: 0;
  top: 0;
  left: auto;
  bottom: 1px;
  display: flex;
  align-items: stretch;
}
.keywordSearchWrapper .buttons .clearSearch {
  display: none;
  opacity: 0;
  transition: all 0.2s ease, font-size 0s linear, padding 0s linear, margin 0s linear, outline 0s linear;
}
.keywordSearchWrapper .buttons .clearSearch .icon:before {
  background-size: 1rem auto;
}
.keywordSearchWrapper .buttons .button {
  border: none;
  padding: 0;
  background-color: white;
  width: 2.6rem;
  position: relative;
  right: 15px;
  bottom: 5px;
}
.keywordSearchWrapper input[type=search]:not(:placeholder-shown) ~ .buttons .clearSearch {
  display: block;
  opacity: 1;
  color: white;
  background: #0e3f75;
  border-radius: 5px;
  width: 30px;
  height: 30px !important;
  top: 0px;
}
.keywordSearchWrapper input[type=search]:not(:placeholder-shown) ~ .buttons .clearSearch .searchClose {
  margin: 0;
}

/* Search by initial (alphabet) */
.searchByInitialContainer {
  margin: 2rem 0;
}
.searchByInitialContainer a.initialFilter {
  cursor: pointer;
  text-decoration: none;
  color: #CC2647;
}
.searchByInitialContainer a.initialFilter.selected {
  color: #0e3f75;
  font-weight: 700;
}

/* 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;
}
.filteredContent.awardsFilter .filtersContainer {
  margin: 2rem 0;
}
.filteredContent.awardsFilter .filtersContainer .display-flex {
  width: 100%;
}
.filteredContent.awardsFilter .filtersContainer .display-flex .keywordSearchWrapper {
  width: 100%;
  margin-left: 2rem;
}
.filteredContent.awardsFilter .filtersContainer .display-flex .advancedFiltersContainer {
  display: none;
}
.filteredContent.casesFilter .filtersContainer .display-flex {
  width: 100%;
}
.filteredContent.casesFilter .filtersContainer .display-flex .display-flex {
  flex-direction: row-reverse;
}

/* Active filters tags/pills */
#filtersDisplayContainer {
  margin: -2rem 0 2rem;
}
#filtersDisplayContainer .activeFilterGroup {
  display: inline-flex;
  flex-wrap: wrap;
}
#filtersDisplayContainer .activeFilterGroup .activeFilterTag {
  border: 1px solid #E6E6E6;
  padding: 0.4rem 1rem;
  cursor: pointer;
  position: relative;
  padding-right: 2.4rem;
  margin-bottom: 0rem;
  margin-top: 15px;
  -webkit-user-select: none;
          user-select: none;
  margin-right: 1rem;
  color: white;
  background: #0e3f75;
  font-size: 60%;
}
#filtersDisplayContainer .activeFilterGroup .activeFilterTag:not(:last-of-type) {
  margin-right: 0.6rem;
}
#filtersDisplayContainer .activeFilterGroup .activeFilterTag:after {
  top: 50%;
  content: " ";
  right: 0.8rem;
  color: #098CE6;
  background-image: url(/CFImages/Icons/plus-white.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;
}
#filtersDisplayContainer .activeFilterGroup .activeFilterTag:after svg {
  color: red;
}
#filtersDisplayContainer .activeFilterGroup .activeFilterTag:hover, #filtersDisplayContainer .activeFilterGroup .activeFilterTag:focus {
  border-color: #A3A3A3;
}
#filtersDisplayContainer .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 Site Search */
/****************************************************************************************************/
.searchHiddenWrapper {
  /*    background-color: white;*/
  background: linear-gradient(90deg, #85d5f6 0%, #d5effa 82%);
  background-size: cover;
  padding: 1.5rem 0;
  z-index: 100000;
  box-shadow: rgba(0, 0, 0, 0.1) 0px 10px 15px -3px, rgba(0, 0, 0, 0.05) 0px 4px 6px -2px;
  /*&:after{
      content: " ";
      position: absolute;
      top: 0;
      right: 0;
      left: 0;
      bottom: 0;
      background: rgba(0,0,0,0.2);        
  }*/
}
.searchHiddenWrapper .form-inline {
  width: 100%;
}
.searchHiddenWrapper .searchHidden {
  display: flex;
  align-items: center;
  justify-content: center;
}
.searchHiddenWrapper .searchHidden .formGroup {
  display: flex;
  width: 100%;
}
.searchHiddenWrapper .searchHidden .formGroup input[type=search] {
  width: calc((100%) - 2rem);
  color: #0e3f75;
  background-color: transparent;
  border: 1px solid #0e3f75;
  padding: 0.2rem 3rem 0.2rem 1em;
  font-size: 1rem;
  background-repeat: no-repeat;
  background-position: right 1em center;
  text-overflow: ellipsis;
  border-top: none;
  border-left: none;
  border-right: none;
}
.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: #0e3f75;
  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: #0e3f75;
  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: #0e3f75;
  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: #0e3f75;
  text-transform: none;
}
.searchHiddenWrapper .searchHidden .formGroup input[type=search]:hover, .searchHiddenWrapper .searchHidden .formGroup input[type=search]:focus {
  border-top: none;
  border-left: none;
  border-right: none;
  outline: none !important;
  border-bottom: 1px solid #CC2647;
}
.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 #CC2647;
}
.searchHiddenWrapper .searchHidden .formGroup .sfsearchSubmit {
  color: #0e3f75;
  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: #0e3f75;
}
.searchHiddenWrapper button.searchCollapse {
  border: none;
  color: #0e3f75;
}
.searchHiddenWrapper button.searchCollapse:hover {
  background: #0e3f75;
}
.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 .searchResult h3 a {
  text-decoration: none;
  color: #0e3f75;
  font-weight: 700;
  font-size: inherit !important;
}
.searchResults .searchResult a {
  font-size: 18px;
  font-family: presicav, sans-serif;
}
.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.searchPager {
  margin: 2rem 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: 1rem;
}
div.searchPager ul.pagination li.active a {
  color: #098CE6;
}

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

.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 Accordions + FAQs */
/****************************************************************************************************/
.accordion .accordionTop {
  cursor: pointer;
  margin: 0;
  padding: 1.6rem 0;
  padding-right: 3.4rem;
  position: relative;
  border-bottom: 1px solid #098CE6;
  /* Vertical line */
  /* horizontal line */
}
.accordion .accordionTop:before, .accordion .accordionTop:after {
  top: 50%;
  right: 30px;
  margin-top: -10px;
  content: "";
  position: absolute;
  transition: all 0.2s ease, font-size 0s linear, padding 0s linear, margin 0s linear, outline 0s linear;
  background-color: #098CE6;
}
.accordion .accordionTop:before {
  width: 2px;
  height: 20px;
}
.accordion .accordionTop:after {
  width: 2px;
  height: 20px;
  transform: rotate(-90deg);
}
.accordion .accordionTop h1, .accordion .accordionTop h2, .accordion .accordionTop h3, .accordion .accordionTop h4, .accordion .accordionTop h5, .accordion .accordionTop h6 {
  margin: 0;
}
.accordion .accordionTop.active {
  color: white;
  cursor: pointer;
}
.accordion .accordionTop.active:before, .accordion .accordionTop.active:after {
  background-color: #098CE6;
  transform: rotate(90deg);
}
.accordion .accordionTop:active {
  background-color: #d2dae5;
}
.accordion .accordionBottom {
  display: none;
  margin: 0;
  padding: 2rem 0;
  /*border-top: 1px solid white;*/
  border-bottom: 1px solid #098CE6;
  perspective: 1000px;
}
.accordion .accordionBottom > * {
  opacity: 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: 200ms;
  transform: translateZ(-20px);
}
.accordion .accordionBottom.active > * {
  opacity: 1;
  /*transition-delay: 500ms;*/
  /*transition-duration: 200ms;*/
  transform: translateZ(0px);
}
.accordion:first-child {
  /*border-top: 1px solid $primaryColour;*/
}
.accordion.active {
  /*color: white;*/
  /*background-color: $secondaryColour;*/
}
.accordion.disabled .accordionTop:before, .accordion.disabled .accordionTop:after {
  display: none;
}

/* Accordion Groups */
/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Toggle Sections */
/****************************************************************************************************/
.formWrapper {
  display: block !important;
  padding: 2rem 2rem 3rem 2rem;
  margin-bottom: 2rem;
  box-shadow: rgba(17, 17, 26, 0.11) 6px 10px 60px;
}
.formWrapper h3 {
  margin-top: 0;
}
.formWrapper p {
  font-size: 16px;
  padding-top: 10px;
  color: #0e3f75;
  text-decoration: underline;
}
.formWrapper input, .formWrapper textarea {
  border-top: none !important;
  border-left: none !important;
  border-right: none !important;
  font-size: 16px;
  padding-left: 0;
  height: 2.15rem;
}
.formWrapper input:focus-visible, .formWrapper textarea:focus-visible {
  outline: none !important;
  border-bottom: 1px solid #CC2647;
}
.formWrapper .grid.resizable {
  padding: 0 0 20px 0;
}
.formWrapper button {
  border: none;
  padding: 0;
  font-weight: 700;
}
.formWrapper button:hover {
  background: none;
  color: #CC2647;
}
.formWrapper:active {
  display: block;
}

/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Image Galleries */
/****************************************************************************************************/
.splide__arrows.hiddenArrows {
  display: none;
}

.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 {
  object-fit: scale-down;
  object-fit: cover;
  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 #098CE6;
}
.imageGallery.slider .gallerySliderNav .splide__slide:before {
  content: " ";
  background-color: #d2dae5;
  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 .newsitemsWrapper {
  position: relative;
}
.homePage .newsitemsWrapper .viewAllMoreWrapper {
  /*position: absolute;
  bottom: 2rem;
  left: 0;*/
  text-align: left;
}
.homePage .newsitemsWrapper .splide__track {
  order: -1;
}
.homePage .newsitemsWrapper .splide__track li.splide__slide {
  /*width: 100% !important;*/
  border: none !important;
  padding: 0 !important;
}
.homePage .newsitemsWrapper .splide__track li.splide__slide:hover {
  background: none;
  box-shadow: none;
}
.homePage .newsitemsWrapper .splide__track li.splide__slide .newsitem .innerContent .itemContent h3 {
  font-weight: 700;
}
.homePage .teammembersWrapper .sectionTitle {
  margin-top: 0;
}
.homePage .teammembersWrapper .listView.teammembers {
  display: block;
  margin: 0;
}
.homePage .teammembersWrapper .listView.teammembers .cardView.teammember .innerContent {
  margin-top: 0rem;
  display: grid;
  grid-template-columns: 1fr 1fr;
}
.homePage .teammembersWrapper .listView.teammembers .cardView.teammember .innerContent .right.itemImage {
  transform-origin: 50% 100%;
  position: relative;
  aspect-ratio: initial;
  animation: scale-in forwards 3s ease;
  --offset: 9rem;
  margin-top: calc(var(--offset) * -1);
  height: calc(100% + var(--offset));
}
.homePage .teammembersWrapper .listView.teammembers .cardView.teammember .innerContent .right.itemImage:hover img {
  transform: none;
}
.homePage .teammembersWrapper .listView.teammembers .cardView.teammember .innerContent .right.itemImage picture img {
  position: absolute;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center bottom;
}
.homePage .teammembersWrapper .listView.teammembers .cardView.teammember .innerContent .left {
  /*width: 55%;*/
  padding-bottom: 3rem;
}
.homePage .teammembersWrapper .listView.teammembers .cardView.teammember .innerContent .left .itemContent .nameDesignationsPronunciation {
  align-items: flex-end;
}
.homePage .teammembersWrapper .listView.teammembers .cardView.teammember .innerContent .left .itemContent .nameDesignationsPronunciation h3 {
  font-size: 2.5rem;
}
.homePage .teammembersWrapper .listView.teammembers .cardView.teammember .innerContent .left .itemContent .nameDesignationsPronunciation h3 a {
  text-transform: capitalize;
}
.homePage .teammembersWrapper .listView.teammembers .cardView.teammember .innerContent .left .itemContent .nameDesignationsPronunciation .designations {
  position: relative;
  bottom: 3px;
}
.homePage .teammembersWrapper .listView.teammembers .cardView.teammember .innerContent .left .itemContent .position {
  color: #0e3f75;
  font-weight: 300;
  font-size: 1.5rem;
}
.homePage .teammembersWrapper .listView.teammembers .cardView.teammember .innerContent .left .itemContent .contactInfo {
  padding-top: 1rem;
}
.homePage .teammembersWrapper .listView.teammembers .cardView.teammember .innerContent .left .itemContent .contactInfo a {
  text-transform: lowercase;
}
.homePage .teammembersWrapper .listView.teammembers .cardView.teammember .innerContent .left .itemContent .contactInfo li {
  padding-bottom: 3px;
  font-weight: 500;
}
.homePage .teammembersWrapper .listView.teammembers .cardView.teammember .innerContent .left .itemContent .seeAllLawyers {
  margin: 4rem 0 2rem 0;
}
.homePage .teammembersWrapper .listView.teammembers .cardView.teammember .innerContent .left .quote {
  width: 100%;
}
.homePage .teammembersWrapper .listView.teammembers .cardView.teammember .innerContent .left ul.socialLinks {
  border: none;
  padding: 1rem 0 0 0;
}
.homePage .teammembersWrapper .listView.teammembers .cardView.teammember .innerContent .left ul.socialLinks:hover {
  background: transparent !important;
  box-shadow: none;
  transform: none;
}
.homePage .teammembersWrapper .listView.teammembers .cardView.teammember .innerContent .left ul.socialLinks:hover svg {
  color: inherit;
}
.homePage .teammembersWrapper .listView.teammembers .cardView.teammember .innerContent .left ul.socialLinks li {
  margin-right: 10px;
}
.homePage .teammembersWrapper .listView.teammembers .cardView.teammember .innerContent .left ul.socialLinks li:hover {
  background: #0e3f75;
}
.homePage .teammembersWrapper .listView.teammembers .cardView.teammember .innerContent .left ul.socialLinks li:hover svg {
  color: white;
}
.homePage .teammembersWrapper .listView.teammembers .cardView.teammember .innerContent .left ul.socialLinks li a svg {
  width: 100%;
}
.homePage .casesWrapper .sectionTitle {
  margin-top: 0;
}
.homePage .casesWrapper .viewAllMoreWrapper {
  text-align: left;
}
.homePage .casesWrapper .splide__arrows {
  margin: 1rem 0 2.2rem 0;
}
.homePage .casesWrapper .splide__track .cases li.splide__slide {
  width: 100% !important;
  margin: 0 !important;
}
.homePage .casesWrapper .splide__track .cases li.splide__slide .case {
  display: flex;
  align-items: center;
  background: none;
  box-shadow: none;
  padding: 0;
}
.homePage .casesWrapper .splide__track .cases li.splide__slide .case .left {
  width: 50%;
  padding-right: 2rem;
}
.homePage .casesWrapper .splide__track .cases li.splide__slide .case .left h3 {
  font-size: 1.6rem;
}
.homePage .casesWrapper .splide__track .cases li.splide__slide .case .right {
  width: 50%;
  border-left: 1px solid rgba(14, 63, 117, 0.6);
  padding: 1.8rem 0rem 1.8rem 4rem;
}
.homePage .casesWrapper .splide__track .cases li.splide__slide .case .right .summary {
  padding-bottom: 1rem;
  width: 26rem;
  max-width: 100%;
}
.homePage .casesWrapper .splide__track .cases li.splide__slide .case .right a:hover {
  color: #CC2647;
}
.homePage .casesWrapper .splide__track .cases li.splide__slide .case .right .readMore {
  color: #0e3f75;
  font-weight: 700;
  font-family: presicav, sans-serif;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  text-decoration: none;
  margin: 1rem 0;
  font-size: 80%;
}
.homePage .awardsSection h2 {
  font-weight: 700;
  text-align: left;
  margin-top: 0rem;
  font-size: 1.5rem;
}
.homePage .awardsSection h3 {
  font-weight: 300;
  text-align: center;
  margin-top: 3rem;
  font-size: 2.4rem;
  letter-spacing: -0.03em;
}
.homePage .awardsSection .heading {
  text-align: center;
  color: #0e3f75;
}
.homePage .awardsSection .heading a {
  color: black;
}
.homePage .awardsSection .heading a:hover {
  text-decoration: none;
}
.homePage .awardsSection .viewAllMoreWrapper {
  display: flex;
  justify-content: center;
  align-items: center;
  width: auto;
}
.homePage .awardsSection .viewAllMoreWrapper:before {
  left: 0;
}
.homePage .awardsSection .rankingsWrapper {
  display: flex;
  justify-content: center;
  flex-direction: column;
}
.homePage .awardsSection .rankingsWrapper .splide__arrows {
  justify-content: center;
  padding: 0;
  margin: 1.2rem 0 1rem 0;
}
.homePage .awardsSection .rankingsWrapper .splide__track {
  margin-top: 1.2rem;
  padding: 2rem 0;
}
.homePage .awardsSection .rankingsWrapper .splide__track .sliderView li .ranking .innerContent a:hover {
  text-decoration: none;
}
.casesPage main .bd .mainContent {
  padding: 0 0 2rem 0;
}

/* Lawyer Search (FindASearch) */
.findASearch {
  margin: 0 auto 9em;
  text-align: center;
  width: 28rem;
  max-width: 100%;
}
.findASearch input[type=text] {
  color: #707070;
  width: 100%;
  height: 3.15rem;
  max-width: 100%;
  padding: 0.2rem 1rem;
  padding-right: 3rem;
  text-overflow: ellipsis;
  background-color: white;
  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/search.svg);
  background-repeat: no-repeat;
  background-position: center right 1rem;
  outline-offset: -2px;
  border: none;
  padding-left: 0;
  box-sizing: border-box;
  height: 3.4rem;
}
.findASearch input[type=text]:focus {
  outline: none !important;
}
.findASearch .k-widget {
  /* the animated underline */
}
.findASearch .k-widget + .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, #0e3f75, #0e3f75 50%, transparent 50%, transparent 75%);*/
  background-image: linear-gradient(to right, #A3A3A3, #A3A3A3 50%, transparent 50%, transparent 75%);
  position: relative;
  z-index: 10;
}
.findASearch .k-widget:focus, .findASearch .k-widget:active, .findASearch .k-widget:hover, .findASearch .k-widget.k-state-focused {
  outline: none !important;
  /*border-bottom: 2px solid $primaryColour;*/
}
.findASearch .k-widget:focus + .textFieldUnderline, .findASearch .k-widget:active + .textFieldUnderline, .findASearch .k-widget:hover + .textFieldUnderline, .findASearch .k-widget.k-state-focused + .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;
}
.findASearch .k-widget.k-autocomplete {
  width: 100%;
  color: #707070;
  border: none;
  border-bottom: 1px solid #CCCCCC;
  box-shadow: none;
}
.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) */
/****************************************************************************************************/
.bgImgGradientGrid {
  display: flex;
  flex: 0 1 auto;
  flex-wrap: wrap;
  flex-direction: row;
  margin-left: 0;
  margin-right: 0;
  box-sizing: border-box;
}
.bgImgGradientGrid > .col {
  flex: 0 0 auto;
  /*order: 0;*/
  width: initial;
  max-width: 100%;
  margin-left: 0;
  margin-right: 0;
  vertical-align: top;
  /*width: calc((1 / 2) * 100%);*/
  flex-basis: calc((1 / 2) * 100%);
}
.bgImgGradientGrid .content {
  padding: 6rem 0;
  position: relative;
  z-index: 10;
  width: 30%;
  width: 36rem;
  flex: 0 1 auto;
}
.bgImgGradientGrid .image {
  position: relative;
  z-index: 1;
  flex: 1 1 auto;
}
.bgImgGradientGrid .image:after {
  content: " ";
  position: absolute;
  inset: 0;
  /*background-image: linear-gradient(to right, scrim-gradient($greyXXLight));*/
  background-image: linear-gradient(to right, #e6e6e6, #e6e6e6 50%, rgba(230, 230, 230, 0));
  z-index: 1;
  pointer-events: none;
  width: 100vw;
  left: -50vw;
}

/* #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;
}
#printModal .label {
  font-family: presicav, sans-serif;
  font-weight: 400;
  text-transform: uppercase;
  letter-spacing: 0.25em;
  font-size: 0.7rem;
  color: #0e3f75;
  margin-top: 0;
}
#printModal h3 {
  color: #098CE6;
  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 Container Dev Page Styles */
/****************************************************************************************************/
.containersPage .bd .container {
  border: 2px dotted #ff6a00;
  min-height: 4rem;
  padding-top: 1rem;
  padding-bottom: 1rem;
  margin-top: 0.2rem;
  margin-bottom: 0.2rem;
}
.containersPage .bd .container:hover {
  border-color: #0e3f75;
  border-style: solid;
  background-color: #eee;
}
.containersPage .bd .container:hover .container {
  background-color: white;
}
.containersPage .bd .container:hover .container:hover {
  background-color: #eee;
}
.containersPage .bd .container:hover:before {
  background-color: #0e3f75;
}
.containersPage .bd .container:hover:after {
  border-color: #0e3f75;
}
.containersPage .bd .container:before {
  top: 0;
  left: 0;
  content: ".container";
  display: block;
  position: absolute;
  padding: 2px 5px;
  color: white;
  font-size: 14px;
  background-color: #ff6a00;
}
.containersPage .bd .container:after {
  content: "CONTENT";
}
.containersPage .bd .container:after,
.containersPage .bd .container .content {
  color: #A3A3A3;
  line-height: 4rem;
  text-align: center;
  display: block;
  position: relative;
  margin: 1rem 0;
  border: 2px solid #ddd;
  min-height: 4rem;
  background: repeating-linear-gradient(45deg, #E6E6E6, #E6E6E6 10px, #ebebeb 10px, #ebebeb 20px);
}
.containersPage .bd .container.force:before {
  content: ".container.force";
}
.containersPage .bd .container.full:before {
  content: ".container.full";
}
.containersPage .bd .container.full.force:before {
  content: ".container.full.force";
}
.containersPage .bd .container.edge:before {
  content: ".container.edge";
}
.containersPage .bd .container.edge.force:before {
  content: ".container.edge.force";
}
.containersPage .bd .container.wide:before {
  content: ".container.wide";
}
.containersPage .bd .container.wide.force:before {
  content: ".container.wide.force";
}
.containersPage .bd .container.narrow:before {
  content: ".container.narrow";
}
.containersPage .bd .container.narrow.force:before {
  content: ".container.narrow.force";
}

/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Grid Dev Page Styles */
/****************************************************************************************************/
.gridsPage .bd .grid {
  position: relative;
  padding: 2rem 0;
  border: 2px solid #0092b3;
}
.gridsPage .bd .grid:hover {
  border-color: #007d99;
  border-style: solid;
  background-color: #eee;
}
.gridsPage .bd .grid:hover .col {
  background-color: white;
}
.gridsPage .bd .grid:hover .col:hover {
  background-color: #eee;
}
.gridsPage .bd .grid:hover:before {
  background-color: #0e3f75;
}
.gridsPage .bd .grid:before,
.gridsPage .bd .grid .col:before {
  top: 0;
  left: 0;
  right: 0;
  text-align: center;
  content: ".grid";
  display: block;
  position: absolute;
  padding: 2px 5px;
  color: white;
  font-size: 14px;
  background-color: #0092b3;
}
.gridsPage .bd .grid .col {
  position: relative;
  min-height: 5rem;
  border: 2px dashed #00d0ff;
  text-align: center;
}
.gridsPage .bd .grid .col:before {
  content: ".col";
  background-color: #00d0ff;
}
.gridsPage .bd .grid .col:hover {
  border-color: #00bbe6;
  border-style: solid;
  background-color: #eee;
}
.gridsPage .bd .grid .col:hover:before {
  background-color: #00bbe6;
}

/* #endregion */
/****************************************************************************************************/
/* BackEnd Edit Link Styles */
a.backendEditLink {
  display: flex;
  margin: 0.5rem 0;
  position: absolute;
  z-index: 5;
  border: 1px solid #0e3f75;
  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: #0e3f75 !important;
  font-size: 0.8rem;
  gap: 0.4em;
}
a.backendEditLink:hover {
  color: #0e3f75 !important;
}

/****************************************************************************************************/
/* #region Kendo Navigation top-level widget overrides */
/****************************************************************************************************/
/****************************************************************************************************/
/* Kendo Menu Widget */
.k-menu.k-menu-horizontal {
  border: none;
  background: none;
}
.k-menu .k-item .k-link:focus {
  outline: none;
}
.k-menu .k-item .k-link:focus-visible {
  outline: 2px solid red;
}
.k-menu:not(.k-context-menu) > .k-item.k-state-focused {
  outline: none;
  box-shadow: none;
}
.k-menu:not(.k-context-menu) > .k-item > a.k-state-active {
  color: white;
}
.k-menu:not(.k-context-menu) > .k-item .k-group {
  visibility: visible !important;
}
.k-menu:not(.k-context-menu):focus > .k-item.k-state-focused {
  outline: none;
  box-shadow: none;
}
.k-menu:not(.k-context-menu):focus:focus-visible {
  outline: 1px dashed #A3A3A3;
  outline-offset: 0;
}
.k-menu:not(.k-context-menu):focus:focus-visible > .k-item.k-state-focused {
  outline: 2px solid #CC2647;
  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-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: 1.5rem;
  white-space: break-spaces;
  padding: 0;
  font-family: presicav, sans-serif;
}
.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 #CC2647;
  outline-offset: 0;
}
.k-treeview .k-in:hover {
  color: #CC2647;
  background: none;
}

/* #endregion */
/****************************************************************************************************/
/* CF Default Menu */
nav.mainNavWrapper .rootMenuItem > ul {
  display: none;
}
nav.mainNavWrapper ul.mainNav {
  display: none;
}
nav.mainNavWrapper ul.mainNav.initialized {
  display: flex;
  gap: 1rem;
}
nav.mainNavWrapper ul.mainNav.k-menu, nav.mainNavWrapper ul.mainNav.k-menu:not(.k-context-menu) {
  display: flex;
  flex-wrap: nowrap;
  z-index: 2;
  justify-content: space-between;
  /* Sub elements */
  /* selected states (CFAdded selected or childSelected classes) */
  /*.k-group .k-item.childSelected {

  }*/
}
nav.mainNavWrapper ul.mainNav.k-menu:not(.k-widget) ul, nav.mainNavWrapper ul.mainNav.k-menu:not(.k-context-menu):not(.k-widget) ul {
  position: absolute;
  visibility: hidden;
  pointer-events: none;
}
nav.mainNavWrapper ul.mainNav.k-menu li.rootMenuItem, nav.mainNavWrapper ul.mainNav.k-menu:not(.k-context-menu) li.rootMenuItem {
  border: none;
  background: none;
  text-align: left;
  font-family: presicav, sans-serif;
  text-transform: uppercase;
  /* underline */
  /* hover state */
}
nav.mainNavWrapper ul.mainNav.k-menu li.rootMenuItem:last-child, nav.mainNavWrapper ul.mainNav.k-menu:not(.k-context-menu) li.rootMenuItem:last-child {
  padding-right: 0;
}
nav.mainNavWrapper ul.mainNav.k-menu li.rootMenuItem .k-animation-container, nav.mainNavWrapper ul.mainNav.k-menu:not(.k-context-menu) li.rootMenuItem .k-animation-container {
  top: calc(var(--header-bottom-padding) + 1.15rem) !important;
}
nav.mainNavWrapper ul.mainNav.k-menu li.rootMenuItem .k-animation-container .hasChildren .k-animation-container, nav.mainNavWrapper ul.mainNav.k-menu:not(.k-context-menu) li.rootMenuItem .k-animation-container .hasChildren .k-animation-container {
  top: 0px !important;
}
nav.mainNavWrapper ul.mainNav.k-menu li.rootMenuItem .k-animation-container .hasChildren .k-icon.k-menu-expand-arrow, nav.mainNavWrapper ul.mainNav.k-menu:not(.k-context-menu) li.rootMenuItem .k-animation-container .hasChildren .k-icon.k-menu-expand-arrow {
  display: none !important;
  /*                        &:before {
                              background-image: url('/CFImages/Icons/chevron-down-branded.svg');
                              transition: all .1s ease;
                              width: 15px;
                              height: auto;
                              background-size: 100% auto;
                              background-position: center;
                              background-repeat: no-repeat;

                              &:hover {
                              }
                          }*/
}
nav.mainNavWrapper ul.mainNav.k-menu li.rootMenuItem:hover, nav.mainNavWrapper ul.mainNav.k-menu:not(.k-context-menu) li.rootMenuItem:hover {
  color: #CC2647;
}
nav.mainNavWrapper ul.mainNav.k-menu li.rootMenuItem > a, nav.mainNavWrapper ul.mainNav.k-menu:not(.k-context-menu) li.rootMenuItem > a {
  color: #0e3f75;
  font-weight: 500;
  border: none;
  background: none;
  font-size: 0.8rem;
  padding: 0;
  letter-spacing: 0.1em;
  display: flex;
  align-items: center;
  --header-bottom-padding: 2.2rem;
  padding-bottom: var(--header-bottom-padding);
  /* The down icons */
}
nav.mainNavWrapper ul.mainNav.k-menu li.rootMenuItem > a:hover, nav.mainNavWrapper ul.mainNav.k-menu:not(.k-context-menu) li.rootMenuItem > a:hover {
  color: #CC2647 !important;
}
nav.mainNavWrapper ul.mainNav.k-menu li.rootMenuItem > a .k-icon, nav.mainNavWrapper ul.mainNav.k-menu:not(.k-context-menu) li.rootMenuItem > a .k-icon {
  display: none;
  /*                    margin: -2px -5px 0 5px;
  color: $secondaryColour;
  height: 1rem;
  width: 1rem;

  &:before {
      background-image: url('/CFImages/Icons/chevron-down-branded.svg');
      transition: all .2s ease;
      width: 7px;
      height: 7px;
      position: relative;
      inset: initial;
      background-size: 100% auto;
      background-position: center;
      background-repeat: no-repeat;
  }*/
}
nav.mainNavWrapper ul.mainNav.k-menu li.rootMenuItem > a.k-state-active, nav.mainNavWrapper ul.mainNav.k-menu:not(.k-context-menu) li.rootMenuItem > a.k-state-active {
  background: none;
  color: #CC2647;
}
nav.mainNavWrapper ul.mainNav.k-menu li.rootMenuItem.k-state-hover > a, nav.mainNavWrapper ul.mainNav.k-menu:not(.k-context-menu) li.rootMenuItem.k-state-hover > a {
  /*                    color: $primaryColour;
  background-color: $primaryColourLight;*/
}
nav.mainNavWrapper ul.mainNav.k-menu ul, nav.mainNavWrapper ul.mainNav.k-menu:not(.k-context-menu) ul {
  border: none;
  position: absolute;
  background-color: #F6F5FA;
  box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px;
}
nav.mainNavWrapper ul.mainNav.k-menu ul > li, nav.mainNavWrapper ul.mainNav.k-menu:not(.k-context-menu) ul > li {
  border: none;
  background: none;
  border-left: clamp(1px, 0.3vw, 5px) solid #CC2647;
  border-bottom: 1px solid #0e3f75;
  padding: 0;
  box-shadow: none;
  transform: none !important;
  /* hover state */
}
nav.mainNavWrapper ul.mainNav.k-menu ul > li:last-child, nav.mainNavWrapper ul.mainNav.k-menu:not(.k-context-menu) ul > li:last-child {
  border-bottom: none;
}
nav.mainNavWrapper ul.mainNav.k-menu ul > li > a, nav.mainNavWrapper ul.mainNav.k-menu:not(.k-context-menu) ul > li > a {
  min-width: 180px;
  color: #0e3f75;
  border: none;
  padding: 1rem 2rem;
  font-size: 0.8rem;
  background: none;
  font-weight: 500;
  letter-spacing: 0.1em;
  /* The down icons */
}
nav.mainNavWrapper ul.mainNav.k-menu ul > li > a .k-icon, nav.mainNavWrapper ul.mainNav.k-menu:not(.k-context-menu) ul > li > a .k-icon {
  margin: 0;
}
nav.mainNavWrapper ul.mainNav.k-menu ul > li > a:active, nav.mainNavWrapper ul.mainNav.k-menu:not(.k-context-menu) ul > li > a:active {
  color: white;
  background-color: linear-gradient(90deg, #85d5f6 0%, #d5effa 82%);
}
nav.mainNavWrapper ul.mainNav.k-menu ul > li > a:hover, nav.mainNavWrapper ul.mainNav.k-menu:not(.k-context-menu) ul > li > a:hover {
  color: #0e3f75;
  background: linear-gradient(90deg, #85d5f6 0%, #d5effa 82%);
}
nav.mainNavWrapper ul.mainNav.k-menu ul > li.k-state-hover, nav.mainNavWrapper ul.mainNav.k-menu:not(.k-context-menu) ul > li.k-state-hover {
  color: white;
  background-color: linear-gradient(90deg, #85d5f6 0%, #d5effa 82%);
}
nav.mainNavWrapper ul.mainNav.k-menu ul ul, nav.mainNavWrapper ul.mainNav.k-menu:not(.k-context-menu) ul ul {
  margin-left: -15px;
  margin-top: -10px;
}
nav.mainNavWrapper ul.mainNav.k-menu .rootMenuItem.k-item.selected:after, nav.mainNavWrapper ul.mainNav.k-menu:not(.k-context-menu) .rootMenuItem.k-item.selected:after {
  opacity: 1;
}
nav.mainNavWrapper ul.mainNav.k-menu .rootMenuItem.childSelected:after, nav.mainNavWrapper ul.mainNav.k-menu:not(.k-context-menu) .rootMenuItem.childSelected:after {
  opacity: 1;
}
/* #endregion */
/****************************************************************************************************/
/****************************************************************************************************/
/* #region Hamburger */
/****************************************************************************************************/
button.hamburger {
  top: 20px;
  right: 2rem;
  width: 35px;
  height: 35px;
  border: none;
  padding: 12px;
  margin: 0;
  position: absolute;
  z-index: 500;
  transition: all 0.2s ease, font-size 0s linear, padding 0s linear, margin 0s linear, outline 0s linear;
  display: none;
}
button.hamburger:hover, button.hamburger:focus {
  cursor: pointer;
  background-color: transparent;
}
button.hamburger .hamburger-inner, button.hamburger .hamburger-inner:after, button.hamburger .hamburger-inner:before {
  position: absolute;
  width: 25px;
  height: 2px;
  transition-timing-function: ease;
  transition-duration: 0.15s;
  transition-property: transform;
  background-color: #CC2647;
}
button.hamburger .hamburger-inner {
  top: 50%;
  left: 50%;
  display: block;
  transform: translate(-50%, -50%) rotate(0deg);
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  transition-duration: 75ms;
}
button.hamburger .hamburger-inner:before {
  top: -10px;
  transition: top 75ms ease 0.12s, opacity 75ms ease;
}
button.hamburger .hamburger-inner:after {
  bottom: -10px;
}
button.hamburger .hamburger-inner:after, button.hamburger .hamburger-inner:before {
  display: block;
  content: "";
}
button.hamburger.open {
  z-index: 10000;
  background: #CC2647;
  height: 5rem !important;
}
button.hamburger.open .hamburger-inner {
  transition-delay: 0.12s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  transform: translate(-50%, -50%) rotate(45deg);
}
button.hamburger.open .hamburger-inner:before {
  top: 0;
  transition: top 75ms ease, opacity 75ms ease 0.12s, color 75ms ease-in;
  background-color: white !important;
}
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: white !important;
}

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

/* the mobile nav menu */
nav.mobileNav {
  top: 0;
  right: 0;
  width: 40rem;
  max-width: 100%;
  height: 100%;
  position: fixed;
  padding: 200px 2rem 2rem 2rem;
  overflow-x: hidden;
  overflow-y: auto;
  min-height: 100vh;
  transform: translateX(100%);
  transition: all 0.2s ease, font-size 0s linear, padding 0s linear, margin 0s linear, outline 0s linear, visibility linear 0s;
  visibility: hidden;
  background: linear-gradient(180deg, #1f4776 0%, #1c4f83 32%, #0a7bc9 100%);
}
nav.mobileNav.open {
  transform: translateX(0%);
  visibility: visible;
}
nav.mobileNav.open .rootMenuItem.hasChildren .k-icon {
  height: 50px;
  width: 50px;
}
nav.mobileNav.open .rootMenuItem.hasChildren .k-icon.k-i-expand:before {
  background-image: url("/CFImages/Icons/triangle-white.svg") !important;
  background-size: 25%;
}
nav.mobileNav.open .rootMenuItem.hasChildren .k-icon.k-i-collapse:before {
  background-image: url("/CFImages/Icons/triangle-white.svg") !important;
  background-size: 25%;
  transform: rotate(90deg);
}
nav.mobileNav.open .rootMenuItem.hasChildren .k-group {
  padding: 1rem 0 2rem 3rem;
}
nav.mobileNav.open .rootMenuItem.hasChildren .k-group li a {
  font-size: 1.5rem;
  padding: 15px 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.5);
}
nav.mobileNav.open .rootMenuItem.hasChildren .expertises li:hover {
  background: none !important;
  transform: none !important;
}
nav.mobileNav .k-treeview {
  color: white;
  height: 100%;
  overflow: initial !important;
  /* Handle */
}
nav.mobileNav .k-treeview-webkit-scrollbar-thumb {
  background: red;
  border-radius: 10px;
}
nav.mobileNav .k-treeview .k-link {
  font-size: 2.5rem;
  text-transform: uppercase;
}

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

.k-treeview ul.mainTreeView {
  border-top: 1px solid #098CE6;
  border-bottom: 1px solid #098CE6;
  padding: 0;
}
.k-treeview ul.mainTreeView li.k-item {
  /* above the link */
  /* link styles */
  /* These are any nested groups */
  /* The selected li */
  /* This is the expanded li item */
  /* expand collapse icons */
}
.k-treeview ul.mainTreeView li.k-item .k-top, .k-treeview ul.mainTreeView li.k-item .k-mid, .k-treeview ul.mainTreeView li.k-item .k-bot {
  padding: 2px;
}
.k-treeview ul.mainTreeView li.k-item:hover {
  background-color: transparent !important;
}
.k-treeview ul.mainTreeView li.k-item a.k-link {
  color: #555555;
  font-size: 1rem;
  padding: 0.5rem 2rem 0.5rem 2rem;
  border: 2px solid transparent;
  /*@include focusAndHover {
      border: 2px rgba($secondaryColour,.5) solid;
  }*/
}
.k-treeview ul.mainTreeView li.k-item ul.k-group {
  background-color: #F6F6F6;
}
.k-treeview ul.mainTreeView li.k-item ul.k-group li.k-item {
  /* Level 2 Nest */
}
.k-treeview ul.mainTreeView li.k-item ul.k-group li.k-item a.k-link {
  padding-left: 3rem;
  font-size: 0.9rem;
}
.k-treeview ul.mainTreeView li.k-item ul.k-group li.k-item a.k-link:after {
  width: 8px;
  height: 8px;
}
.k-treeview ul.mainTreeView li.k-item ul.k-group li.k-item ul.k-group li.k-item a.k-link {
  padding-left: 4rem;
}
.k-treeview ul.mainTreeView li.k-item.selected {
  background-color: #CC2647 !important;
  /* link styles (both the li and a have class of selected on them) */
}
.k-treeview ul.mainTreeView li.k-item.selected a.k-link.selected {
  color: white !important;
}
.k-treeview ul.mainTreeView li.k-item[aria-expanded=true] {
  background-color: #A3A3A3;
}
.k-treeview ul.mainTreeView li.k-item span.k-icon {
  right: initial;
  left: 1.5rem;
}
.k-treeview ul.mainTreeView li.k-item:focus:focus-visible {
  background-color: #A3A3A3;
}
.k-treeview ul.mainTreeView li.k-item:hover {
  background-color: #A3A3A3;
}

/* #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 {*/
/*@include grid(4, 0.2rem, "li.menuItem");*/
/*display: flex;
        flex-wrap: nowrap;

        li.menuItem {
            flex: 1 1 0;
            margin: 0;

            &:hover {
                .navItemInner {*/
/*padding: 2px;*/
/*text-align: center;

                    .bgImgWrapper {
                        .bgImg {
                            transform: scale(1.1);
                        }
                    }
                }
            }

            .navItemInner {
                padding: 2px;
                text-align: center;

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

                    .bgImg {
                        transition: $transition;
                    }
                }

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

                h3 {
                    padding-bottom: 1.5rem;
                    color: $secondaryColour;
                    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;
}

.k-tabstrip-wrapper .tabstrip {
    display: block;
}

.k-tabstrip-wrapper {
    .k-tabstrip {
        background: none;
        border: none;
        font-size: inherit;

        .k-tabstrip-items { // the ul
            @include grid(auto, 2rem, ".k-item");
            border: none;
            background: none;
            text-transform: uppercase;

            .k-item { //the li (e.g. tabs)
                border: none;
                background: none;
                border-radius: 0;


                .k-loading {
                    border: none;
                }

                .k-link {
                    color: $tertiaryColour;
                    border: none;
                    padding: 1rem 0;
                    font-size: 1em;
                    font-weight: $fontWeightBold;
                    background: none;
                    text-transform: none;
                }

                &.k-state-active {
                    .k-link {
                        color: $secondaryColour;
                    }
                }

                &.k-first {
                }

                &:active {
                    .k-link {
                        color: darken($secondaryColour, 20%);
                    }
                }
            }
        }

        &:focus {
            box-shadow: none;
        }

        @include focusVisible {
            outline: $outline;
            outline-color: $greyLight;
            outline-style: dashed;

            .k-item.k-state-active {
                outline: $outline;
            }
        }

        .k-content {
            border: none;
            padding: 0;
            background-color: transparent;

            &.k-state-active {
                background-color: transparent;
            }

            &:focus {
                outline: none;
            }

            @include focusVisible {
                outline: $outline;
                outline-offset: $outline_offset;
            }
        }
    }
}*/
/* #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) */
@media only screen and (min-width: 1300px) {
  .homeSlideshow .splide__slide {
    aspect-ratio: 11/3;
  }
}
/* Small Desktop (switch between simple and mobile nav) */
@media only screen and (max-width: 1299px) {
  #header {
    top: 0;
    position: fixed;
  }
  #header .topHeader .topHeaderGrid .topHeaderGridRight .searchSocialContact {
    /*padding: 0;*/
  }
  .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%;
  }

  ul.socialLinks .cmsContent ul.socialLinks {
    height: 45px;
  }
}
@media only screen and (min-width: 1024px) {
  .detailView.teammember .bioTopContent .bioTopContactGrid .bioImage {
    width: 120%;
  }
}
/* Tablet */
@media only screen and (max-width: 1024px) {
  :root {
    --header-height: 140px;
  }

  .hamburger {
    display: block !important;
  }

  button.hamburger {
    bottom: 1rem;
    top: initial;
  }
  button.hamburger.open {
    top: 0;
  }

  #header {
    --header-height: 140px;
  }
  #header .mainNavWrapper {
    display: none !important;
  }
  #header .topHeader {
    display: flex;
    align-items: center;
    padding: 0;
    justify-content: space-between;
    flex-direction: row-reverse;
    position: relative;
  }
  #header .topHeader .topHeaderGrid {
    /*display: block;*/
    display: flex;
    flex-direction: column-reverse;
    gap: 0;
  }
  #header .topHeader .topHeaderGrid .menuCol {
    display: none;
  }
  #header .topHeader .topHeaderGrid .logoCol {
    width: calc(100% - 180px);
    padding: 1rem 0;
  }
  #header .topHeader .topHeaderGrid .logoCol .logo {
    width: 100%;
  }
  #header .topHeader .topHeaderGrid .logoCol img {
    transform: none;
    max-width: calc(100% - 80px);
    width: 400px;
  }
  #header .header {
    display: none;
    height: 0;
    width: 0;
  }

  .homeSlideshow .splide__slide {
    aspect-ratio: 16/10;
  }

  footer .mainFooter .mainFooterGrid .mainFooterRight {
    align-items: flex-start;
    padding: 2rem 0 0 0;
  }

  .pageTopper {
    margin-bottom: 3rem;
    min-height: auto;
  }
  .pageTopper:after {
    height: 65%;
  }
  .pageTopper .topperContent {
    top: 2rem;
    padding: 3rem 2rem;
  }

  .sideContent {
    padding: 0 0 2rem 0 !important;
  }

  /*HomePage*/
  .homePage .casesWrapper .splide__track .cases li.splide__slide .case {
    flex-direction: column;
  }
  .homePage .casesWrapper .splide__track .cases li.splide__slide .case .left {
    width: 100%;
  }
  .homePage .casesWrapper .splide__track .cases li.splide__slide .case .right {
    width: 100%;
    border-left: none;
    /*border-top: 1px solid rgba(14,63,117,0.5);
    margin-top: 2rem;*/
    padding: 1.8rem 0rem 0.5rem 0rem;
  }
  .homePage .casesWrapper .splide__track .cases li.splide__slide .case .right .summary {
    width: auto;
    max-width: 90%;
  }
  .homePage .teammembersWrapper .sectionTitle {
    position: relative;
    z-index: 1;
    margin-bottom: 0.5rem;
  }
  .homePage .teammembersWrapper .listView.teammembers .cardView.teammember .innerContent {
    display: flex !important;
    flex-direction: column-reverse;
  }
  .homePage .teammembersWrapper .listView.teammembers .cardView.teammember .innerContent .right.itemImage {
    width: 50%;
    height: 100%;
    margin: auto;
    margin-bottom: 1rem;
  }
  .homePage .teammembersWrapper .listView.teammembers .cardView.teammember .innerContent .right.itemImage picture img {
    position: relative;
  }
  .homePage .teammembersWrapper .listView.teammembers .cardView.teammember .innerContent .left .quote {
    text-align: center;
  }
  .homePage .teammembersWrapper .listView.teammembers .cardView.teammember .innerContent .left .itemContent {
    align-items: center;
  }
  .homePage .teammembersWrapper .listView.teammembers .cardView.teammember .innerContent .left .itemContent .contactInfo {
    text-align: center;
  }

  /*Filtered Content*/
  .filtersContainer .searchByInitialContainer .grid.grid-nogutter.grid-between {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr;
    grid-row-gap: 1rem;
  }
  .filtersContainer .searchByInitialContainer .grid.grid-nogutter.grid-between .col a {
    text-align: center;
  }

  .sliderView.rankings {
    gap: 1rem;
  }
  .sliderView.rankings .cardView.ranking {
    width: 100%;
  }

  /*Filtered Content*/
  .filteredContent .filtersContainer .display-flex {
    align-items: flex-start;
    width: 100%;
    flex-direction: column;
  }
  .filteredContent .filtersContainer .display-flex .display-flex {
    flex-direction: column !important;
  }
  .filteredContent .filtersContainer .display-flex .display-flex .keywordSearchWrapper {
    width: 100%;
    margin: 1rem 0;
  }
  .filteredContent .filtersContainer .display-flex .display-flex .advancedFiltersContainer {
    width: 100%;
    margin-right: 0;
  }

  /*TeamMembers*/
  .listView.teammembers {
    grid-template-columns: 1fr 1fr 1fr;
  }

  .detailView.teammember .bioTopContent .container {
    padding-right: 0;
  }
  .detailView.teammember .bioTopContent .bioTopContactGrid {
    flex-direction: column;
    align-items: center;
    padding: 0;
  }
  .detailView.teammember .bioTopContent .bioTopContactGrid .bioContact {
    width: 100%;
    text-align: center;
    padding-top: 1rem;
  }
  .detailView.teammember .bioTopContent .bioTopContactGrid .bioContact .quote {
    width: 100%;
    padding-top: 1rem;
    font-size: 1.3rem;
  }
  .detailView.teammember .bioTopContent .bioTopContactGrid .bioContact .contactInfo .contactItemWrapper {
    justify-content: center;
  }
  .detailView.teammember .bioTopContent .bioTopContactGrid .bioContact .printShareAndSocial {
    justify-content: center;
  }
  .detailView.teammember .bioTopContent .bioTopContactGrid .bioContact .seeAllLawyers a {
    justify-content: center;
    margin: 2rem auto;
  }
  .detailView.teammember .bioTopContent .bioTopContactGrid .bioImage {
    transform: scale(1) !important;
    width: 55%;
  }
  .detailView.teammember .newsitemsWrapper .splide__arrows .splide__arrow--next, .detailView.teammember .newsitemsWrapper .splide__arrows .splide__arrow--prev {
    top: 37%;
  }
  .detailView.expertise .mainContent {
    flex-direction: column;
  }
  .detailView.expertise .mainContent .left {
    width: 100%;
    padding: 0;
  }
  .detailView.expertise .mainContent .right {
    width: 100%;
  }
  .detailView.expertise .newsitemsWrapper .splide__arrows .splide__arrow.splide__arrow--prev {
    height: fit-content !important;
    /* top: 80%;*/
  }
  .detailView.expertise .newsitemsWrapper .splide__arrows .splide__arrow.splide__arrow--next {
    height: fit-content !important;
    /* top: 80%;*/
  }
  .detailView.expertise .newsitemsWrapper .splide__track .newsitems li.splide__slide .newsitem .innerContent {
    border: none;
  }
  .detailView.case .newsitemsWrapper .splide__arrows .splide__arrow.splide__arrow--next {
    height: 5rem !important;
    top: 85%;
  }
  .detailView.case .newsitemsWrapper .splide__arrows .splide__arrow.splide__arrow--prev {
    height: 5rem !important;
    top: 85%;
  }

  /*Filtered Content Styles*/
  .keywordSearchWrapper .buttons .button {
    height: 35px !important;
  }

  .fieldGroups {
    flex-direction: column;
  }

  .authorTeam {
    max-width: 90%;
  }
}
/* Mobile Only */
@media only screen and (max-width: 767px) {
  .k-treeview .k-item {
    font-size: 1.6rem;
  }

  footer .mainFooter .mainFooterGrid .mainFooterRight {
    align-items: flex-start;
    padding: 2rem 0 0 0;
  }
  footer .mainFooter .mainFooterGrid .mainFooterRight .cardView.office .itemContent ul {
    flex-direction: column;
    padding-top: 10px;
  }
  footer .mainFooter .mainFooterGrid .mainFooterRight .cardView.office .itemContent ul li {
    padding: 5px 0;
  }
  footer .copyrightFooter .pvs {
    flex-direction: column;
  }

  .homeSlideshow .splide__slide {
    aspect-ratio: 16/12;
  }

  /*HomePage*/
  .homePage .teammembersWrapper .listView.teammembers .cardView.teammember .innerContent {
    flex-direction: column-reverse;
    align-items: center;
  }
  .homePage .teammembersWrapper .listView.teammembers .cardView.teammember .innerContent .left {
    width: 100%;
    margin-right: 0;
  }
  .homePage .teammembersWrapper .listView.teammembers .cardView.teammember .innerContent .left .itemContent .nameDesignationsPronunciation h3 {
    text-align: center;
  }
  .homePage .teammembersWrapper .listView.teammembers .cardView.teammember .innerContent .right.itemImage {
    width: 60%;
    position: relative;
  }
  .homePage .teammembersWrapper .listView.teammembers .cardView.teammember .innerContent .right.itemImage .itemImage .imgWrapper img {
    border-radius: 50%;
  }
  .homePage .newsitemsWrapper .splide__arrows .splide__arrow.splide__arrow--prev {
    top: 70%;
  }
  .homePage .newsitemsWrapper .splide__arrows .splide__arrow.splide__arrow--next {
    top: 70%;
  }
  .homePage .casesWrapper .splide__arrows .splide__arrow.splide__arrow--prev {
    top: 80%;
  }
  .homePage .casesWrapper .splide__arrows .splide__arrow.splide__arrow--next {
    top: 80%;
  }

  /*TeamMembers*/
  .listView.teammembers {
    grid-template-columns: 1fr 1fr;
  }
  .listView.teammembers .noResultContainer {
    width: 80vw;
  }

  .cardView.teammember .contactInfo li a, .cardView.teammember .contactInfo li .prefixLabel {
    font-size: 13px;
  }

  .detailView.teammember .bioTopContent .bioTopContactGrid .bioImage {
    width: 85%;
    animation: none;
    opacity: 1;
  }
  .detailView.teammember .mainContent .k-tabstrip .k-tabstrip-items-wrapper .relatedTabs {
    flex-direction: column;
  }
  .detailView.case .newsitemsWrapper .splide__arrows .splide__arrow.splide__arrow--next {
    height: 5rem !important;
    top: 80%;
  }
  .detailView.case .newsitemsWrapper .splide__arrows .splide__arrow.splide__arrow--prev {
    height: 5rem !important;
    top: 80%;
  }
  .detailView.expertise .newsitemsWrapper .splide__arrows .splide__arrow.splide__arrow--prev {
    height: fit-content !important;
    top: 80% !important;
  }
  .detailView.expertise .newsitemsWrapper .splide__arrows .splide__arrow.splide__arrow--next {
    height: fit-content !important;
    top: 80% !important;
  }

  /*Filtered Content*/
  .fieldGroups {
    flex-direction: column;
  }

  .toggleContent .grid.resizable {
    flex-direction: column;
  }

  .formWrapper .grid.resizable {
    flex-direction: column;
  }

  .siteFooter .mainFooter .mainFooterGrid .mainFooterRight .mainFooterRightGrid .footerSitemap {
    padding: 2.5rem 0 0 !important;
  }

  .cardView.ranking {
    width: 100%;
  }
}
/* XS Mobile Only */
@media only screen and (max-width: 500px) {
  :root {
    --header-height: 105px;
  }

  #header {
    --header-height: 105px;
  }

  h1 {
    font-size: 1.5rem !important;
  }

  /*HomePage*/
  .homePage .newsitemsWrapper .splide__arrows .splide__arrow.splide__arrow--next {
    top: 74%;
  }
  .homePage .newsitemsWrapper .splide__arrows .splide__arrow.splide__arrow--prev {
    top: 74%;
  }
  .homePage .casesWrapper .splide__arrows .splide__arrow.splide__arrow--next {
    top: 80%;
  }
  .homePage .casesWrapper .splide__arrows .splide__arrow.splide__arrow--prev {
    top: 80%;
  }
  .homePage .teammembersWrapper .listView.teammembers .cardView.teammember .innerContent .right {
    padding-top: 1rem;
  }

  .homeSlideshow .splide__slide {
    aspect-ratio: 1;
  }
  .homeSlideshow .splide__slide.is-visible .innerContent .content {
    width: 90%;
  }

  .pageTopper .topperContent .topperDescription {
    padding-left: 1rem;
  }
  .pageTopper .topperContent .topperTagLine {
    font-size: 1.5rem;
  }

  .sliderView.rankings {
    gap: 0rem;
  }

  .seeAllLawyers:before {
    top: 3.5px;
  }

  footer .mainFooter .mainFooterGrid .mainFooterRight .mainFooterRightGrid {
    flex-direction: column;
  }
  footer .mainFooter .mainFooterGrid .mainFooterRight .mainFooterRightGrid .footerSitemap {
    max-width: 100% !important;
    border: none !important;
  }
  footer .mainFooter .mainFooterGrid .mainFooterRight .mainFooterRightGrid .footerSitemap .topLevelSimple {
    width: 100%;
  }
  footer .mainFooter .mainFooterGrid .mainFooterRight .mainFooterRightGrid .footerSitemap .topLevelSimple .reset {
    flex-direction: column;
    grid-row-gap: 10px;
    padding-bottom: 40px;
  }
  footer .mainFooter .mainFooterGrid .mainFooterRight .mainFooterRightGrid .footerSitemap .topLevelSimple .reset li {
    border-bottom: 1px solid rgba(255, 255, 255, 0.5);
    /* &:last-child {
        border: none;
    }*/
  }
  footer .mainFooter .mainFooterGrid .mainFooterRight .mainFooterRightGrid .footerSocials {
    align-items: flex-start;
  }
  footer .copyrightFooter .pvs {
    align-items: flex-start !important;
  }

  /*TeamMembers*/
  .listView.teammembers {
    grid-template-columns: 1fr;
  }
}
@media print {
  .noPrint {
    display: none;
  }

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

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

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

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

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

  img {
    max-width: 100%;
  }

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

  h1 {
    font-size: 21pt;
  }

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

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

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

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

  .mainContent .cmsContent {
    padding: 1rem 0 0 0 !important;
  }

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

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

  .viewMoreOuter {
    display: none;
  }

  .teammembers .teammember .bgImgWrapper {
    display: none;
  }

  .teammember .topperGrid {
    height: auto;
  }
  .teammember .topperGrid .bioTopContent.flexCol {
    color: #000;
    background-color: #fff;
  }
  .teammember .topperGrid .bioTopContent.flexCol .bioContact {
    text-align: left;
    flex-direction: column;
    display: flex;
    justify-content: center;
    height: 100%;
  }
  .teammember .topperGrid .bioTopContent.flexCol .bioContact h1 {
    color: #000;
  }
  .teammember .topperGrid .bioTopContent.flexCol .bioContact a:link, .teammember .topperGrid .bioTopContent.flexCol .bioContact a:visited, .teammember .topperGrid .bioTopContent.flexCol .bioContact a:active {
    color: #000;
  }
  .teammember .topperGrid .bioTopContent.flexCol .bioContact .offices ul li {
    border-right: 1px solid #000;
  }
  .teammember .topperGrid .bioTopContent.flexCol .bioContact .offices ul li a {
    color: #000;
  }
  .teammember .bgImgWrapper {
    display: none;
    height: 0;
  }

  .expertise.detailView .pageTopper, .sector.detailView .pageTopper, .solution.detailView .pageTopper {
    min-height: 0;
    padding-top: 2rem;
  }
  .expertise.detailView .pageTopper .topperImage, .sector.detailView .pageTopper .topperImage, .solution.detailView .pageTopper .topperImage {
    display: none;
  }

  /*^DARE^^*/
  #header {
    display: none !important;
    opacity: 0 !important;
  }

  .viewAllMoreWrapper, .seeAllLawyers, .printShareAndSocial {
    display: none !important;
  }

  .breadCrumb {
    display: none;
  }

  .tabContent.k-tabstrip-content.k-content {
    display: block !important;
    opacity: 1 !important;
  }

  .k-tabstrip .k-tabstrip-items-wrapper .relatedTabs {
    padding: 0;
    box-shadow: none;
    border-bottom: 1px solid rgba(0, 0, 0, 0.5);
    padding-bottom: 1rem;
    justify-items: stretch;
    display: flex !important;
    justify-content: space-between;
  }
  .k-tabstrip .k-tabstrip-items-wrapper .relatedTabs li .k-link {
    text-align: left;
    padding: 0;
  }
  .k-tabstrip .k-tabstrip-items-wrapper .relatedTabs li.k-state-active .k-link {
    color: #707070;
  }
  .k-tabstrip .k-tabstrip-items-wrapper .relatedTabs li.k-state-active .k-link:before {
    display: none;
  }
  .k-tabstrip .tabContent {
    padding: 0 !important;
  }

  .listView {
    margin: 0 !important;
  }
  .listView li .cardView {
    animation: none !important;
    opacity: 1 !important;
  }

  .cardView.ranking {
    padding: 0;
  }
  .cardView.ranking .innerContent {
    padding: 0 !important;
    border: 1px solid rgba(0, 0, 0, 0.5) !important;
    box-shadow: none;
    padding: 10px !important;
  }
  .cardView.ranking .innerContent span {
    color: rgba(0, 0, 0, 0.9) !important;
  }
  .cardView.ranking .innerContent .yearOfAward {
    border-top-color: rgba(0, 0, 0, 0.5);
  }

  .listView.rankings {
    display: grid !important;
    grid-template-columns: 1fr 1fr;
    padding: 1rem 0;
    width: 100%;
  }
  .listView.rankings li {
    width: 100%;
  }

  .detailView.teammember .bioTopContent {
    background: #f2f2f2;
  }
  .detailView.teammember .bioTopContent .bioTopContactGrid {
    flex-direction: row;
    align-items: center;
    padding: 2rem 0;
  }
  .detailView.teammember .bioTopContent .bioImage img {
    border-radius: 50%;
    margin-right: 2rem;
  }
  .detailView.teammember .bioTopContent .bioContact {
    margin-left: 2rem;
  }
  .detailView .expertisesWrapper {
    padding-bottom: 2rem;
  }
  .detailView .expertisesWrapper .expertises li {
    padding: 0 0 0 1rem !important;
    box-shadow: none;
  }
  .detailView .newsitemsWrapper, .detailView .belmorePainting {
    display: none !important;
  }
  .detailView .casesBackground {
    padding: 2rem 0 !important;
  }
  .detailView .casesBackground .casesWrapper .splide__track ul li {
    width: 100% !important;
  }
  .detailView .casesBackground .casesWrapper .splide__track ul li .cardView.case .meta {
    display: none !important;
  }
}

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