.headroom {
  will-change: transform;
  transition: transform 200ms linear;
}
.headroom--pinned {
  transform: translateY(0%);
}
.headroom--unpinned {
  transform: translateY(-100%);
}
section {
	padding: 3.125rem 0;
  position: relative;
}
section.slimPadding {
  padding: 2rem 0 3.125rem;
}
section.slimPt {
  padding-top: 2rem;
}
.pt0 {
  padding-top: 0;
}
.pb0 {
  padding-bottom: 0;
}
.mt0 {
  margin-top: 0;
}
.mt1 {
  margin-top: 1rem;
}
.mt1-5 {
  margin-top: 1.5rem !important;
}
.mt2 {
  margin-top: 2rem !important;
}
.mt2-5 {
  margin-top: 2.5rem;
}
.mt5 {
  margin-top: 5rem;
}
.mb0 {
  margin-bottom: 0 !important;
}
.mb1 {
  margin-bottom: 1rem;
}
.mb1-5 {
  margin-bottom: 1rem;
}
.mb2 {
  margin-bottom: 2rem;
}
.mb2-5 {
  margin-bottom: 2.5rem;
}
.mb3 {
  margin-bottom: 3rem;
}
.mb5 {
  margin-bottom: 5rem;
}
.s20 {
  font-size: 1.25rem;
}
.xl-mt {
  margin-top: 4rem;
}

.formattedList,
ul.formattedList,
.formattedList ul,
.textFormatting ul.formattedList {
  list-style: none;
  padding-left: 0;
  margin-top: 1.75rem;
  margin-bottom: 0;
  font-size: 1.125rem !important;
}

.textFormatting ul.formattedList li,
ul.formattedList li,
.textFormatting .formattedList ul li {
  position: relative;
  padding-left: 35px;
  margin-bottom: 1rem;
/*  font-weight: 500;*/
  line-height: 1.3;
}

.textFormatting ul.formattedList li:last-child,
ul.formattedList li:last-child,
.textFormatting .formattedList ul li:last-child, {
  margin-bottom: 0 !important;
}

ul.formattedList li::before,
.textFormatting .formattedList ul li::before {
  content: "";
  background: url('/../img/icons/tick.svg') no-repeat center center;
  background-size: contain;
  width: 20px;
  height: 20px;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}

.textFormatting .h3:first-child {
  margin-top: 0;
}
.textFormatting a:not(.btn) {
  background-color: transparent !important;
  font-family: inherit !important;
  font-size: inherit !important;
  font-weight: inherit !important;
}
.textFormatting .h3 {
  margin-top: 2rem;
}

@media (min-width: 1200px) {
  section.slimPt {
    padding-top: 4rem;
  }
  .mb1-5 {
    margin-bottom: 1.5rem;
  }
  .xl-mt {
    margin-top: 7.813rem;
  }
  .textFormatting ul.formattedList li,
  ul.formattedList li,
  .textFormatting .formattedList ul li {
    padding-left: 45px;
    margin-bottom: 1.5rem;
  }
  ul.formattedList li::before,
  .textFormatting .formattedList ul li::before  {
    width: 30px;
    height: 30px;
  }
}

@media (max-width: 1200px) {
  .mb1-sm {
    margin-bottom: 1rem;
  }
  .mb2-sm {
    margin-bottom: 2rem;
  }
  .mt1-sm {
    margin-top: 1rem !important;
  }
  .mt1-5-sm {
    margin-top: 1.5rem !important;
  }
}

.blue {
  color: #003DA7;
}

.text-underline {
  text-decoration: underline !important;
}
.u-semi {
  font-weight: 500;
}
.u-bold {
  font-weight: 600;
}
.u-link {
  color: #003DA7;
  font-weight: 500;
  position: relative;
  padding-right: 1rem;
  font-size: 1rem;
}
.u-link:after {
  content: "";
  position: absolute;
  width: 8px;
  height: 11px;
  right: 0;
  top: 50%;
  transform: translateY(-40%);
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='6.061' height='10.708' viewBox='0 0 6.061 10.708'%3E%3Cpath d='M10.707.707l-5,5-5-5' transform='translate(-0.354 11.061) rotate(-90)' fill='none' stroke='%23013da7' stroke-miterlimit='10' stroke-width='1'/%3E%3C/svg%3E") no-repeat center / contain;
}

.u-link.u-link-white {
  color: #FFF;
}
.u-link.u-link-white:after {
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='6.061' height='10.708' viewBox='0 0 6.061 10.708'%3E%3Cpath d='M10.707.707l-5,5-5-5' transform='translate(-0.354 11.061) rotate(-90)' fill='none' stroke='%23FFF' stroke-miterlimit='10' stroke-width='1'/%3E%3C/svg%3E") no-repeat center / contain;
}

@media (min-width: 1355px) {
  .u-link {
    font-size: 1.125rem;
  }
}
@media (min-width: 1599px) {
  .u-link {
    font-size: 1.25rem;
  }
}

.light-blue-bg {
  background: #E8F1FD !important;
  color: #003251 !important;
}
.light-bg {
  background: #E6F1F4;
  color: #003251;
}
.mid-bg {
  background: #B4EEEB;
  color: #003251;
}
.mid-blue-bg {
  background: #E5F3F5;
}
.dark-bg {
  background: #00738D;
  color: #FFF;
}
.dark-grad-bg {
  background: rgb(0,115,141);
  background: linear-gradient(135deg, rgba(0,115,141,1) 0%, rgba(2,87,125,1) 100%);
  color: #FFF;
}
.purple-bg {
  background: #9E29B5;
  color: #FFF;
}
.purple-bg .btn.btn-secondary {
  color: #9E29B5;
  border-color: #9E29B5;
}
.purple-bg .btn.btn-secondary:hover,
.purple-bg .btn.btn-secondary:focus,
.purple-bg .btn.btn-secondary:active {
  color: #9E29B5;
  background: #fcf0ff;
  border-color: #9E29B5;
}
.blue-text {
  color: #00577D !important;
}
.dark-blue-text,
.dark-blue-text a {
  color: #003DA7;
}
.dark-blue-text a:hover {
  color: #003251;
}
.white-bg {
  background: #FFF;
}
.grey-bg {
  background: #E3EBEC;
}
.green-bg {
  background: #EEF5EC;
}


#mobileNavDropdown {
  font-size: .75rem;
  text-align: center;
  color: #003DA7;
  font-weight: 500;
}
.mobileNavModal .modal-dialog {
  width: 100%;
  max-width: 100%;
  margin: 0;
}
.mobileNavModal .modal-content {
  border: none;
  border-radius: 0;
  background: #ECF5FF;
  height: 100vh;
  overflow-y: scroll;
  padding-bottom: 2rem;
}
.mobileNavModal .mobileLinks {
  padding: 0;
}
.mobileNavModal .mobileLinks li:not(.main-nav-link),
.mobileNavModal .mobileLinks li:not(.startHere) {
  padding: 0.25rem 0 0.5rem 0 !important;
  clear: both;
}
.mobileNavModal .mobileLinks li.main-nav-link {
  padding: 0 !important;
}
.mobileNavModal .mobileLinks li.startHere {
  padding: 0 1.563rem !important;
}
.mobileNavModal .mobileLinks a.nav-link:not(.btn) {
  text-decoration: none;
  font-size: 1.5rem;
  padding: 0.738rem 1.563rem !important;
  font-weight: 500;
  color: #003251;
  display: block;
}
.mobileNavModal .mobileLinks svg {
  margin-top: 6px;
}
.mobileNavModal .mobileLinks svg path {
  fill: #003DA7 !important;
}

.mobileNavModal .dropdown-menu {
  position: relative !important;
  transform: none !important;
  padding: 0 0 0 !important;
  width: 100%;
  border: none;
  border-radius: 0;
  background: #FFF;
  margin-bottom: 1rem !important;
}
.mobileNavModal .mobileLinks .dropdown-menu a {
  font-weight: 400;
  font-size: 1.125rem;
  padding: 0 1.563rem;
  width: 100%;
  display: block;
}
.mobileNavModal .mobileLinks .dropdown-menu li {
  padding: 0 0 0.938rem;
}
.mobileNavModal .mobileLinks .dropdown-toggle::after {
  width: 15px;
  height: 8px;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='15.061' height='8.591' viewBox='0 0 15.061 8.591'%3E%3Cpath d='M14.707.707l-7,7-7-7' transform='translate(-0.177 -0.177)' fill='none' stroke='%23003251' stroke-miterlimit='10' stroke-width='1.5'/%3E%3C/svg%3E") no-repeat center / contain;
}

.mobileNavModal .mobileLinks a[aria-expanded="true"]{
  background: #FFF;
  color: #003DA7 !important;
}

.mobileNavModal .mobileLinks a[aria-expanded="true"].dropdown-toggle::after {
  width: 15px;
  height: 8px;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='15.061' height='8.591' viewBox='0 0 15.061 8.591'%3E%3Cpath d='M14.707.707l-7,7-7-7' transform='translate(15.238 8.768) rotate(180)' fill='none' stroke='%23003da7' stroke-miterlimit='10' stroke-width='1.5'/%3E%3C/svg%3E") no-repeat center / contain;
  transform: none;
}

.mobileNavModal .mobileLinks .btn.btn-primary {
  color: #FFF;
  margin-top: 1.563rem;
  font-size: 1rem;
  padding: 0.625rem 2.188rem;
  margin-left: 1.563rem;
}

.dropdown-col {
  padding-top: 3rem;
  padding-bottom: 4.063rem;
  font-size: 1rem;
  color: #003251;
}
.dropdown-col-dark {
  background: #003DA7;
  color: #FFF;
}
.dropdown-col-light p.h4,
.dropdown-col-light p.h4 a {
  color: #00577D;
}
.dropdown-col-dark a {
  color: #FFF;
}
.dropdown-col .h4 {
  font-size: 1.5rem;
}



@media (min-width: 1200px) {
  section {
    padding: 5.938rem 0;
  }
  section.header {
    padding: 4.75rem 0;
  }
  section.slimPadding {
    padding: 3.75rem 0 4.063rem;
  }
}

.nav-secondary {
  text-align: right;
}
.nav-secondary form {
  display: inline-block;
  position: relative;
  font-size: 0.95rem;
}
.nav-secondary form button {
  background: none;
  border: none;
  position: absolute;
  left: 15px;
  top: 52%;
  transform: rotate(-45deg) translateY(-35%);
}

.nav-secondary .form-control {
  width: 315px;
  display: inline-block;
  height: 2.25rem;
  font-size: 1rem;
  border-radius: 10rem;
  padding-left: 2.5rem;
  margin-bottom: 0;
  margin-top: 1rem;
  border: 1px solid #B9B9B9;
}
.nav-secondary .btn {
  margin: 0 0;
  font-size: 0.95rem;
}
.nav-secondary .btn.btn-search {
  margin-right: .25rem;
  margin-left: 0rem;
  position: relative;
}
.nav-secondary .btn.btn-search svg {
  transform: rotate(-45deg);
  margin-right: 2px;
}
.nav-secondary form button svg {
  margin: -11px 3px -6px 0px;
}
.nav-secondary .btn:hover {
  border-color: #0057F4;
  color: #0057F4;
}
@media (min-width: 1200px) {
  .nav-secondary {
    position: absolute;
    right: 0.625rem;
    top: 0;
    width: 60%;
  }
  .nav-secondary img {
    margin-top: -8px;
    margin-right: 5px;
  }
  .nav-secondary .btn {
    margin: 0 1.25rem;
    font-size: 0.95rem;
  }
}

.scrollTo span {
  position: relative;
  padding-right: 1.5rem;
}
.scrollTo span:after {
  content: "";
  position: absolute;
  width: 15px;
  height: 10px;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8.707' height='5.061' viewBox='0 0 8.707 5.061'%3E%3Cpath d='M8.707.707l-4,4-4-4' transform='translate(-0.354 -0.354)' fill='none' stroke='%23FFF' stroke-miterlimit='10' stroke-width='1'/%3E%3C/svg%3E") no-repeat center / contain;
}
.btn-download span {
  position: relative;
  padding-left: 2rem;
}
.btn-download span:after {
  content: "";
  position: absolute;
  width: 20px;
  height: 20px;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22.027' height='21.028' viewBox='0 0 22.027 21.028'%3E%3Cg transform='translate(-443 -172)'%3E%3Cg transform='translate(444 172)'%3E%3Cpath d='M20.527,44.893v1.425a4.063,4.063,0,0,1-4.1,4.022H4.6A4.063,4.063,0,0,1,.5,46.318V44.893' transform='translate(-0.5 -30.313)' fill='none' stroke='%23fff' stroke-width='2'/%3E%3Cpath d='M20.527,44.893v1.425a4.063,4.063,0,0,1-4.1,4.022H4.6A4.063,4.063,0,0,1,.5,46.318V44.893' transform='translate(-0.5 -30.313)' fill='none' stroke='%23fff' stroke-miterlimit='10' stroke-width='2'/%3E%3Cpath d='M24.568,24.963l-6.462,6.269-6.463-6.269' transform='translate(-8.091 -16.846)' fill='none' stroke='%23fff' stroke-width='2'/%3E%3Cpath d='M24.568,24.963l-6.462,6.269-6.463-6.269' transform='translate(-8.091 -16.846)' fill='none' stroke='%23fff' stroke-miterlimit='10' stroke-width='2'/%3E%3Cline y1='14.307' transform='translate(10.014)' fill='none' stroke='%23fff' stroke-miterlimit='10' stroke-width='2'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E") no-repeat center / contain;
}

.btn-download.btn-secondary span:after {
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22.027' height='21.028' viewBox='0 0 22.027 21.028'%3E%3Cg transform='translate(-443 -172)'%3E%3Cg transform='translate(444 172)'%3E%3Cpath d='M20.527,44.893v1.425a4.063,4.063,0,0,1-4.1,4.022H4.6A4.063,4.063,0,0,1,.5,46.318V44.893' transform='translate(-0.5 -30.313)' fill='none' stroke='%23013DA7' stroke-width='2'/%3E%3Cpath d='M20.527,44.893v1.425a4.063,4.063,0,0,1-4.1,4.022H4.6A4.063,4.063,0,0,1,.5,46.318V44.893' transform='translate(-0.5 -30.313)' fill='none' stroke='%23013DA7' stroke-miterlimit='10' stroke-width='2'/%3E%3Cpath d='M24.568,24.963l-6.462,6.269-6.463-6.269' transform='translate(-8.091 -16.846)' fill='none' stroke='%23013DA7' stroke-width='2'/%3E%3Cpath d='M24.568,24.963l-6.462,6.269-6.463-6.269' transform='translate(-8.091 -16.846)' fill='none' stroke='%23013DA7' stroke-miterlimit='10' stroke-width='2'/%3E%3Cline y1='14.307' transform='translate(10.014)' fill='none' stroke='%23013DA7' stroke-miterlimit='10' stroke-width='2'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E") no-repeat center / contain;
}
.header {
  font-size: 1rem;
}
.header.header-grad,
.light-blue-grad {
  background: rgb(180,238,235);
  background: linear-gradient(135deg, rgba(180,238,235,1) 0%, rgba(183,224,239,1) 100%);
}
.header .headerImage {
  max-width: 300px;
  width: 100%;
  margin: 2rem auto;
}
.header .headerLgText {
  font-size: 1.125rem;
}


.searchResultsForm form {
  display: inline-block;
  position: relative;
  font-size: 0.95rem;
  width: 100%;
  margin-bottom: 1.2rem;
  margin-top: 0;
}
.searchResultsForm form button {
  background: none;
  border: none;
  position: absolute;
  left: 30px;
  top: 39%;
  transform: rotate(-45deg) translateY(-85%);
}

.searchResultsForm .form-control {
  width: 100%;
  display: inline-block;
  height: 3rem;
  font-size: 1rem;
  border-radius: 10rem;
  padding-left: 3rem;
  border: 1px solid #003DA7;
}
.searchBlockType {
  font-size: 0.65rem;
  text-transform: uppercase;
  padding: 0.25rem;
  font-weight: 500;
  border-radius: 0.25rem;
  display: inline-block;
  margin-bottom: 0.625rem;
  background: #CDFFBA;
  letter-spacing: 0.05px;
}

.btn.clearSearch {
  padding: 0.3125rem 1.25rem;
  font-size: 1rem;
}
.btn.clearSearch:hover {
  border-color: #0057F4;
  color: #0057F4;
}

.searchHeader.slimHeader .slimHeaderText h1 {
  line-height: 1.25;
}

@media (min-width: 1200px) {
  .searchResultsForm .form-control {
    height: 3rem;
    font-size: 1.125rem;
    padding-left: 3.125rem;
  }
  .searchResultsForm form button {
    left: 35px;
    top: 41%;
    transform: rotate(-45deg) translateY(-85%);
  }
  .searchResultsForm form button svg {
    width: 17px;
    height: 22px;
  }
}

.slimHeader {
  position: relative;
  height: 300px;
}
.mdHeader {
  position: relative;
  height: 480px;
}
.lgHeader {
  position: relative;
  height: 580px;
}
.mdHeader .mdHeaderText a,
.lgHeader .lgHeaderText a,
.mdHeader .mdHeaderText .textFormatting a,
.lgHeader .lgHeaderText .textFormatting a {
  color: #FFF;
}

.slimHeader .slimHeaderImage {
  height: 300px;
}
.mdHeader .mdHeaderImage {
  height: 480px;
}
.lgHeader .lgHeaderImage {
  height: 580px;
}
.slimHeader.slimHeader300,
.slimHeader.slimHeader300 .slimHeaderImage {
  height: 220px;
}
.slimHeader.slimHeader210,
.slimHeader.slimHeader210 .slimHeaderImage {
  height: 210px;
}
.slimHeader .slimHeaderOverlay,
.mdHeader .mdHeaderOverlay,
.lgHeader .lgHeaderOverlay {
  background: rgba(0,105,129,.85);
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
}
.slimHeader.slimHeader300 .slimHeaderOverlay {
  background: rgba(0,115,141,.8);
}
.slimHeader .slimHeaderText,
.mdHeader .mdHeaderText,
.lgHeader .lgHeaderText {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  color: #FFF;
  left: 0;
  right: 0;
}
.lgHeader .lgHeaderText {
  margin-top: 1.5rem;
  padding-bottom: 1rem;
}
.slimHeader.slimHeader210 .slimHeaderText {
  top: 55%;
}
.slimHeader .slimHeaderText h1 {
  line-height: 1;
}
.slimHeader .breadcrumb,
.mdHeader .breadcrumb,
.lgHeader .breadcrumb {
  position: absolute;
  z-index: 10;
  top: 0.4rem;
  left: 0.6rem;
  right: 0;
  margin: 0 auto;
}

@media (min-width: 1200px) {
  .lgHeader .lgHeaderText {
    margin-top: 0rem;
  }
}

.light-bg .pageType {
  color: #00577D;
}
.dark-grad-bg .pageType {

}
.pageType {
  text-transform: uppercase;
  color: #FFF;
  font-family: "century-gothic", sans-serif;
  font-weight: 700;
  font-size: 1.125rem;
  margin-top: .8rem;
  margin-bottom: .5rem;
}

@media (min-width: 1200px) {
  .header {
    font-size: 1.125rem;
  }
  .header .headerLgText {
    font-size: 1.35rem;
  }
  .header .headerImage {
    max-width: 500px;
  }
  .slimHeader {
    height: 380px;
  }
  .slimHeader .slimHeaderImage {
    height: 380px;
  }
  .slimHeader.slimHeader300,
  .slimHeader.slimHeader300 .slimHeaderImage {
    height: 260px;
  }
  .pageType {
    margin-top: 0rem;
  }
}
@media (min-width: 1355px) {
  .header .headerLgText {
    font-size: 1.5rem;
  }
  .header .headerImage {
    max-width: 540px;
  }
  .pageType {
    font-size: 1.25rem;
  }
  .slimHeader.slimHeader300,
  .slimHeader.slimHeader300 .slimHeaderImage {
    height: 300px;
  }
}
@media (min-width: 1599px) {
  .header .headerLgText {
    font-size: 1.625rem;
  }
  .header .headerImage {
    max-width: 640px;
  }
  .slimHeader.slimHeader300,
  .slimHeader.slimHeader300 .slimHeaderImage {
    height: 300px;
  }
}
.contentBlock {
  border-radius: 1.5rem;
  padding: 6rem 1.25rem 1.25rem;
  margin-top: 5rem;
}
.contentBlock.contentBlock-noImg {
  padding: 1.25rem 1.25rem 1.25rem;
  margin-top: 0;
}
.contentBlock .rounded-circle {
  width: 135px;
  height: 135px;
  position: absolute;
  top: -9.625rem;
  left: 0;
  right: 0;
  margin: 0 auto;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
}
.contentBlock ul li {
  margin-bottom: .75rem;
}
.contentBlockBordered {
  border: 1px solid #FFF;
  padding: 1.25rem;
  border-radius: 0.875rem;
  margin-top: .5rem;
}
.contentBlockBordered a {
  font-weight: 500;
  text-decoration: underline;
  color: #FFF;
}
.contentBlock-singleCol {
  font-size: 1rem;
}
.contentBlock-multipleCol {
  font-size: 0.938rem;
}

.contentTextBlock {
  padding: 1.563rem;
  border-radius: 1.5rem;
  background: #E5F3F5;
}


@media (min-width: 1200px) {
  .contentBlock,
  .contentBlock.contentBlock-noImg {
    padding: 3rem;
    margin-top: 0rem;
  }
  .contentBlock .rounded-circle {
    width: 255px;
    height: 255px;
    position: relative;
    top: unset;
    left: unset;
    right: unset;
    margin: 0;
  }
  .contentBlockBordered {
    padding: 1.5rem;
    margin-top: 0;
  }
}
@media (min-width: 1355px) {
  .contentBlock-singleCol {
    font-size: 1.125rem;
  }
  .contentBlock-multipleCol {
    font-size: 1rem;
  }
  .contentTextBlock {
    padding: 2.188rem;
  }
}
@media (min-width: 1599px) {
  .contentBlock,
  .contentBlock.contentBlock-noImg {
    padding: 4rem;
  }
  .contentBlock-singleCol {
    font-size: 1.25rem;
  }
  .contentBlock-multipleCol {
    font-size: 1.125rem;
  }
}

.listBlock {
  background: #FFF;
  padding: 1.25rem;
  border-radius: 1rem;
  font-size: 0.938rem;
  margin-top: 0.5rem;
  border: 1px solid #FFF;
  transition: .3s all;
  height: 100%;
  line-height: 1.3;
}
.listBlockType {
  font-size: 0.75rem;
  text-transform: uppercase;
  padding: 0.25rem;
  font-weight: 500;
  border-radius: 0.25rem;
  display: inline-block;
  margin-bottom: 0.625rem;
}
.listBlockType.listBlockType-service {
  background: #CDFFBA;
}
.listBlockType.listBlockType-product {
  background: #FFEFB1;
}
.listBlock .h3 {
  margin-bottom: 0.5rem;
}
.listBlock .listBlock-image {
  border-radius: 0.5rem;
  padding-bottom: 44.6%;
  width: 100%;
  margin-top: 1.25rem
}
.listBlock .listBlock-imageMore {
  padding-bottom: 54.6%;
}
.listBlock:hover .h3,
.listBlock:hover .mb0 {
  color: #003DA7;
}

.listBlock:hover {
  border: 1px solid #003DA7;
}

@media (min-width: 1355px) {
  .listBlock {
    font-size: 1rem;
  }
  .listBlock.listBlock-sm {
    font-size: .938rem;
  }
}
@media (min-width: 1599px) {
  .listBlock {
    font-size: 1.125rem;
  }
  .listBlock.listBlock-sm {
    font-size: 1rem;
  }
}

.projectBlock {
  background:#E5F3F5;
  margin: 0.938rem 0 0 0;
}
.projectBlock .projectBlock-img {
  width: 110px;
  height: 110px;
  margin-right: 1.25rem;
  margin-bottom: 1.25rem;
  border-radius: 0.5rem;
}
.projectBlock .projectType {
  font-size: 0.813rem;
  color: #00577D;
  margin-bottom: 0.625rem;
}

.impactBlock {
  border: 1px solid;
  border-radius: 1rem;
  height: 100%;
  padding: 0.938rem 3.125rem;
  position: relative;
}
.impactBlock.impactBlock-location {
  padding: 4.5rem 3rem 3rem 3rem;
}
.impactBlock .h1 {
  font-size: 3.5rem;
  margin-bottom: .35rem;
}
.impactBlock .h3 {
  font-size: 1.25rem;
}
.impactBlock-first {
  border-color: #2DA9DB;
}
.impactBlock-first .h1,
.impactBlock-first .h3.impactQuote,
.impactBlock-first .h4.impactQuote,
.impactBlock-first .h4.impactInfo {
  color: #007BBC;
}
.impactBlock-middle {
  border-color: #42C414;
}
.impactBlock-middle .h1,
.impactBlock-middle .h3.impactQuote,
.impactBlock-middle .h4.impactQuote,
.impactBlock-middle .h4.impactInfo {
  color: #289B00;
}
.impactBlock-last {
  border-color: #F89100;
}
.impactBlock-last .h1,
.impactBlock-last .h3.impactQuote,
.impactBlock-last .h4.impactQuote,
.impactBlock-last .h4.impactInfo {
  color: #DE6F00;
}
.h4.impactInfo {
  margin-bottom: 0;
}
.impactType {
  font-size: 1rem;
  text-transform: uppercase;
  padding: 0.313rem 1rem;
  color: #FFF;
  text-align: center;
  border-radius: 1.125rem;
  font-family: "century-gothic", sans-serif;
  font-weight: 700;
  display: inline-block;
  margin-bottom: 1rem;
  position: absolute;
  top: 1.25rem;
  left: 0;
  right: 0;
  display: inline-block;
  width: fit-content;
  margin: 0 auto;
}

.impactBlock-first .impactType {
  background: #2DA9DB;
}
.impactBlock-middle .impactType {
  background: #42C414;
}
.impactBlock-last .impactType {
  background: #F89100;
}

.impactQuote.h3, 
.impactQuote.h4 {
  font-style: italic;
}
.impactAuthor {
  font-size: 0.875rem;
}
.impactAuthorLocation {
  max-width: 450px;
  margin: 0 auto;
}


@media (min-width: 1200px) {
  .impactBlock {
    padding: 2.5rem;
  }
  .impactBlock.impactBlock-location {
    padding: 4.5rem 3rem 3rem 3rem;
  }
  .impactBlock .h1 {
    font-size: 4.875rem;
    margin-bottom: 1.25rem;
  }
  .impactBlock .h3 {
    font-size: 1.5rem;
  }
  .impactType {
    font-size: 1.125rem;
    top: 1.35rem;
  }
  .projectBlock .projectType {
    font-size: 0.875rem;
  }
}
@media (min-width: 1599px) {
  .impactBlock {
    padding: 3rem;
  }
  .impactBlock .h1 {
    font-size: 5.5rem;
  }
  .impactBlock .h3 {
    font-size: 1.75rem;
  }
  .impactType {
    top: 1.55rem;
  }
}

.testimonials {
  background: #F2F1F1;
  border-radius: 1rem;
  padding: 4.5rem 1.563rem 1.563rem;
}
.testimonials .testimonialBody,
.testimonialBody {
  font-family: 'century-gothic', sans-serif;
  font-style: italic;
  font-weight: 700;
  line-height: 1.2;
  font-size: 1.25rem;
}
.testimonials .testimonialAuthor {
  font-size: 0.875rem;
  text-align: center;
  max-width: 250px;
}
.testimonials .testimonialImageWrap {
  background: #FFF;
  padding: 1rem;
  border-radius: 1rem;
  padding: 0.625rem;
  width: 140px;
  height: 140px;
  text-align: center;
  margin: 0 auto 1rem;
}
.testimonials .testimonialImage {
  height: 100%;
  width: 100%;
}

@media (min-width: 1200px) {
  .testimonials {
    border-radius: 1rem;
    padding: 5rem;
  }
  .testimonials .testimonialBody,
  .testimonialBody {
    font-size: 1.5rem;
    line-height: 1.3;
  }
  .testimonials .testimonialImageWrap {
    border-radius: 1.5rem;
  }
}

@media (min-width: 1599px) {
  .testimonials {
    border-radius: 1rem;
    padding: 5rem;
  }
  .testimonials .testimonialBody,
  .testimonialBody {
    font-size: 1.75rem;
  }
}


.blockLink {
  position: relative;
}
.blockLink > a {
  display: block;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  z-index: 99;
}


.teamWrapper {
  background: #FFF;
  padding: 1.25rem;
  border-radius: 1rem;
}
.teamBlock {
  width: 70px;
  height: 70px;
  border-radius: 50%;
  background-size: cover;
  background-repeat: no-repeat;
  cursor: pointer;
}
.teamBlockWrap {
  display: inline-block;
  margin-right: .5rem;
}
.teamBlockWrap:last-child {
  margin-right: 0;
}

.personBlockWraper {
  margin-bottom: 1rem;
}
.personBlock {
  background: #FFF;
  border-radius: 0.5rem;
  height: 100%;
  padding: 1rem;
  text-align: center;
  cursor: pointer;
  transition: .2s all;
  border: 1px solid #FFF;
}
.personBlockWraper.personBlockWraper-lg .personBlock {
  background: #E5F3F5;
  border-radius: 1rem;
  font-size: 0.938rem;
  line-height: 1.25;  
  cursor: pointer;
  border: 1px solid #E5F3F5;
}
.personBlock:not(.personBlock-noHover):hover,
.personBlockWraper.personBlockWraper-lg .personBlock:not(.personBlock-noHover):hover {
  border: 1px solid #003DA7;
}
.personBlock:not(.personBlock-noHover):hover .h3,
.personBlockWraper.personBlockWraper-lg .personBlock:not(.personBlock-noHover):hover .h3,
.personBlock:not(.personBlock-noHover):hover .personName {
  color: #003DA7;
}
.personBlock.personBlock-noHover {
  cursor: default;
}
.personBlock .personAvatar {
  width: 100px;
  height: 100px;
  border-radius: 50%;
  margin: 0 auto 1rem;
  background-repeat: no-repeat;
  background-size: cover;
}
.personBlock .personName {
  font-size: 1rem;
  margin-bottom: .25rem;
  line-height: 1.25;
}
.personBlock .personRole {
  font-size: 0.7rem;
  line-height: 1.25;
  margin-bottom: 0rem;
  color: #00577D;
}
.personBlockWraper.personBlockWraper-lg .h3 {
  margin-bottom: .25rem;
}
.personBlockWraper.personBlockWraper-lg .personRole {
  color: #00577D;
  margin-bottom: 1rem;
}

.teamModal .personAvatar {
  width: 150px;
  height: 150px;
  border-radius: 50%;
  margin: 0 auto 1rem;
  background-repeat: no-repeat;
  background-size: cover;
}
.teamModal .personRole {
  font-size: 1.125rem;
}
.teamModal .h2 {
  margin-bottom: 0.313rem;
}

@media (min-width: 1200px) {
  .personBlock .personName {
    font-size: 1.125rem;
    margin-bottom: 0rem;
    line-height: 1.35;
  }
  .personBlock .personRole {
    font-size: 0.875rem;
    line-height: 1.35;
  }
  .teamWrapper {
    padding: 2.188rem;
    border-radius: 1rem;
  }
  .teamBlock {
    width: 100px;
    height: 100px;
  }
  .teamBlockWrap {
    margin-right: 1rem;
  }
  .personBlockWraper {
    margin-bottom: 1.25rem;
  }
  .personBlockWraper.personBlockWraper-lg {
    margin-bottom: 1.875rem;
  }
  .personBlockWraper.personBlockWraper-lg .personBlock {
    padding: 1.875rem;
  }
  .personBlockWraper.personBlockWraper-lg .personAvatar {
    width: 135px;
    height: 135px;
  }
  .teamModal .personAvatar {
    width: 285px;
    height: 285px;
  }
}

.teamProducts {
  border: 1px solid #003251;
  padding: 1.563rem 1.25rem;
  margin-bottom: 1.5rem;
  border-radius: 1rem;
  text-align: left;
  max-width: 365px;
  font-size: .9rem;
}
.teamProducts p:last-child {
  margin-bottom: 0;
}
.teamProducts a {
  color: #013DA7;
  text-decoration: underline;
  font-weight: 500;
}

.promoBlock {
  background: #013DA7 url('/../img/promo-hex.svg') no-repeat bottom right;
  background-size: 50%;
  color: #FFF;
  padding: 1.563rem;
  border-radius: 1rem;
  min-height: 275px;
  font-size: 1rem;
}
.promoBlock a:not(.btn) {
  color: #FFF;
  text-decoration: underline;
}

.promoBlock .ctaForm {
  max-width: 400px;
  margin: 0 auto;
}

.promoBlock .ctaForm .form-group {
  margin-bottom: 1.125rem;
  display: inline-block;
  width: 100%;
}
.promoBlock .ctaForm .form-control,
.promoBlock .ctaForm .form-control:focus {
  border-radius: 2rem;
  border: 1px solid #FFF;
  color: #FFF;
  background-color: transparent;
}
.promoBlock .ctaForm .has-float-label input, .promoBlock .ctaForm .has-float-label textarea {
  padding-left: 18px;
}

.promoBlock .ctaForm .has-float-label label, .promoBlock .ctaForm .has-float-label > span {
  color: #FFF;
}

.loginBlock {
  background: #002F81;
  border-radius: 3rem;
  color: #FFF;
  font-size: .8rem;
  padding: .45rem 1rem;
  margin: 0 auto 1.5rem;
}
.promoBlock.registerBlock p.mb2 {
  font-size: .983rem;
}
.btn.signOut {
  border: 1px solid #003DA7;
  color: #003DA7;
  font-size: 0.813rem;
  padding: .35rem 1.25rem;
  margin-bottom: 1.5rem;
  margin-top: -.5rem;
}
.btn.signOut:hover {
  border-color: #0057F4;
  color: #0057F4;
}
.signUpFlash {
  max-width: 400px;
  margin: 0 auto 2rem;
}
.newsletterOptIn {
  font-size: 1rem;
}
.newsletterOptIn input[type="checkbox"] {
  margin-top: 0.3rem;
  margin-right: 0.5rem;
}
.newsletterOptIn label {
  font-size: 0.85rem;
  line-height: 1.35;
}

.error-message {
  font-size: .8rem !important;
  text-align: left;
  font-weight: 500;
  margin-bottom: 1.25rem;
}

@media (min-width: 992px) {
  .loginBlock {
    font-size: 1.125rem;
    padding: .5rem 1rem;
    max-width: 445px;
    margin: 0 auto 1.5rem;
  }
  .promoBlock.registerBlock p.mb2 {
    font-size: 1rem;
  }
  .newsletterOptIn label {
    font-size: 0.95rem;
    line-height: 1.4;
  }
}
@media (min-width: 1200px) {
  .promoBlock {
    font-size: 1.25rem;
    min-height: 250px;
    background-size: auto;
    border-radius: 1rem;
    padding: 2.188rem;
  }
  .promoBlock.registerBlock {
    padding: 3.25rem 2.188rem;
  }
}
@media (min-width: 1599px) {
  .promoBlock {
    min-height: 325px;
  }
}

.featuredBlock {
  background: #E6F1F4;
  padding: 1.563rem;
  border-radius: 1rem;
  font-size: 1rem;
}
.featuredBlock .embed-responsive {
  margin-bottom: 1.25rem;
}
@media (min-width: 1200px) {
  .featuredBlock {
    font-size: 1.25rem;
    background-size: auto;
    border-radius: 1.5rem;
    padding: 2.188rem;
  }
  .featuredBlock .embed-responsive {
    margin-bottom: 0;
  }
}

.eventBlock {
  background: #E9F1FD;
  border-radius: 0.5rem;
  margin-bottom: 0.625rem;
  padding: 1rem 1rem 0.8rem;
}
.eventBlock .eventDateWrap {
  width: 100px;
}
.eventBlock .eventDateItem {
  display: inline-block;
  margin-right: 1rem;
  color: #FFF;
  background: #003DA7;
  border-radius: .25rem;
  font-weight: 700;
  padding: 0.3rem;
  margin-right: 0.15rem;
  line-height: .95;
  width: 2.625rem;
  height: 2.625rem;
  text-align: center;
}
.eventBlock .eventDateItem .eventDateDay {
  font-size: 1.438rem;
}
.eventBlock .eventDateItem .eventDateMonth {
  font-size: 0.813rem;
  text-transform: uppercase;
}
.eventBlock .media-body {
  margin-left: .65rem;
}

.eventBlockWrap.eventBlockWrap-sm {
  font-size: 0.938rem;
  font-weight: 500;
}
.eventBlockWrap.eventBlockWrap-sm .eventBlock {
  border-radius: 0.5rem;
  padding: 0.625rem;
}
.eventBlockWrap.eventBlockWrap-sm .eventBlock .eventDateWrap {
  width: 80px;
}
.eventBlockWrap.eventBlockWrap-sm .eventBlock .eventDateItem {
  width: 2.188rem;
  height: 2.188rem;
}
.eventBlockWrap.eventBlockWrap-sm .eventBlock .eventDateItem .eventDateDay {
  font-size: 1.063rem;
}
.eventBlockWrap.eventBlockWrap-sm .eventBlock .eventDateItem .eventDateMonth {
  font-size: 0.625rem;
  text-transform: uppercase;
}

.eventBlock .eventLocation {
  color: #00577D;
  font-size: 0.938rem;
  line-height: 1.25;
}

.shareWrapper p {
  display: inline-block;
  float: left;
  margin-right: 20px;
  color:#003DA7;
  margin-bottom: 0;
  line-height: 1.5;
}


.shareWrapper #st-2 .st-btn {
  border: 1px solid #003DA7;
  margin-right: 10px;
  width: 40px;
}

.dropdown-col-light .eventBlockWrap.eventBlockWrap-sm .eventBlock,
.dropdown-col-light .newsBlock-sm {
  background: #FFF;
}

.pageData {
  font-size: 0.813rem;
  color: #C9F4FD;
  margin-bottom: 1.25rem;
  line-height: 1.7;
  color: #00577D;
}
.pageData {
  color: #00577D;
  font-weight: 500;
  line-height: 1.3;
}
.pageData a {
  color: #00577D;
}
.pageData .headerBlock {
  margin-bottom: .5rem;
}
.pageData .headerBlockType {
  width: 70px;
}
.eventPageCta {
  margin: 1.5rem 0;
}
.eventPageDate {
  background: #003DA7;
  border-radius: 0.25rem;
  padding: 0.125rem 0.75rem;
  text-transform: uppercase;
  font-weight: 700;
  color: #FFF;
  font-size: 0.938rem;
  display: inline-block;
}
@media (min-width: 1200px) {
  .pageData {
    font-size: 0.875rem;
  }
  .eventPageCta {
    margin: 2rem 0 2.5rem;
  }
  .eventPageDate {
    font-size: 1rem;
  }
}

@media (min-width: 992px) {
  .eventBlock {
    padding: 1rem;
    border-radius: 1rem;
  }

  .eventBlock.eventBlock-grid {
    height: 100%;
    padding: 1.35rem;
  }
}
@media (min-width: 1200px) {

}
@media (min-width: 1355px) {
  .eventBlock .eventLocation {
    font-size: 1rem;
  }
}
@media (min-width: 1599px) {
  .eventBlock .eventLocation {
    font-size: 1.063rem;
  }
}

.eventBlock:hover .h3,
.eventBlock:hover .mb0:not(.eventLocation) {
  text-decoration: underline !important;
  color: #003DA7 !important;
}


.videoBlock {
  line-height: 1.25;
}
.videoBlock iframe,
.videoBlock .embed-responsive {
  border: 1px solid #a6a6a6;
}

.newsBlock-sm,
.newsBlock {
  background: #F2F1F1;
  padding: 1rem;
  border-radius: 0.5rem;
}
.newsBlock-sm .newsBlock-image,
.newsBlock .newsBlock-image {
  height: 85px;
  width: 85px;
  border-top-right-radius: 0.25rem;
  border-top-left-radius: 0.25rem;
  border-bottom-right-radius: 0.25rem;
  border-bottom-left-radius: 0.25rem;
  background-repeat: no-repeat;
  background-size: cover;
}
.newsBlock .newsBlock-image {
  border: 1px solid #F2F1F1;
}
.newsBlock .newsBlock-body {
  background: #F2F1F1;
  border-bottom-right-radius: 1rem;
  border-bottom-left-radius: 1rem;
  padding: 0 0 0 1rem;
}
.newsBlock .newsBlock-date {
  color: #02577D;
  font-weight: 400;
  font-size: 0.813rem;
  margin-bottom: .4rem;
}

@media (min-width: 1200px) {
  .newsBlock {
    padding: 0;
    border-top-right-radius: 1rem;
    border-top-left-radius: 1rem;
    border-bottom-right-radius: 1rem;
    border-bottom-left-radius: 1rem;
  }
  .newsBlock.newsBlock-grid {
    height: 100%;
  }
  .newsBlock .newsBlock-image {
    width: 100%;
    border-top-right-radius: 1rem;
    border-top-left-radius: 1rem;
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
    padding-bottom: 51.6%;
  }
  .newsBlock .newsBlock-date {
    font-size: 0.875rem;
  }
  .newsBlock .newsBlock-body {
    padding: 1.35rem;
  }
}
@media (min-width: 1599px) {
  .newsBlock .newsBlock-image {
    padding-bottom: 54%;
  }
}

@media (max-width: 1199.98px) {
  .newsBlock {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: start;
    align-items: flex-start;
  }
  .newsBlock .newsBlock-body {
    -ms-flex: 1;
    flex: 1;
  }
}

.newsBlock-sm {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: start;
  align-items: flex-start;
  padding: 0.625rem;
  margin-bottom: 0.625rem;
}
.newsBlock-sm .newsBlock-image {
  height: 55px;
  width: 55px;
  margin-right: 1rem;
}
.newsBlock-sm .newsBlock-body {
  -ms-flex: 1;
  flex: 1;
  font-weight: 500;
  line-height: 1.35;
}

.newsBlock:hover .newsBlock-body p:not(.newsBlock-date),
.newsBlock-sm:hover .newsBlock-body p {
  text-decoration: underline;
  color: #013DA7;
}


.pagination {
  margin: 3rem 0 0;
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
}
.pagination ul {
  display: flex;
  justify-content: center;
  flex-grow: 1;
  padding: 0;
  margin: 0;
  list-style: none;
}
.pagination li {
  width: 45px;
  height: 45px;
  border-radius: 50%;
  border: 1px solid #003251;
  color: #003251;
  font-size: 1rem;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
}
.pagination li a {
  display: block;
  width: 100%;
  height: 100%;
  line-height: 45px;
  text-decoration: none;
  color: inherit;
}
.pagination li.active {
  background: #013DA7;
}
.pagination li.active a {
  color: #FFF;
}
.pagination .prev,
.pagination .next {
  position: relative;
  align-self: center;
}
.pagination .prev {
  margin-right: auto;
}
.pagination .next {
  margin-left: auto;
}
.pagination li:not(.prev):not(.next) {
  margin: 0 5px;
}
.pagination .prev svg,
.pagination .next svg {
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  margin: 0 auto;
}
.pagination .prev svg {
  left: -4px;
}
.pagination .next svg {
  left: 4px;
}
.pagination .prev.disabled,
.pagination .next.disabled  {
  visibility: hidden;
}


.caseStudyBlock {
  padding: 1.25rem 1.25rem 54.6%;
  color: #FFF;
  border-radius: 1rem;
  position: relative;
  overflow: hidden;
}
.caseStudyBlock .caseStudyBlock-overlay {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  border-top-right-radius: .5rem;
  border-top-left-radius: .5rem;
  background: rgb(0,50,81);
  background: linear-gradient(180deg, rgba(0,50,81,1) 0%, rgba(0,50,81,0.5956976540616247) 50%, rgba(255,255,255,0) 100%);
  height: 75%;
  z-index: 10;
}
.caseStudyBlock .caseStudyBlock-title {
  position: absolute;
  top: 1.25rem;
  left: 0rem;
  padding: 0 1.25rem;
  z-index: 11;
}

@media (min-width: 992px) {
  .caseStudyBlock {
    border-radius: 1rem;
    padding: 1.25rem 1.25rem 54.6%;
  }
  .caseStudyBlock .caseStudyBlock-overlay {
    border-top-right-radius: 1rem;
    border-top-left-radius: 1rem;
    height: 70%;
  }
  .caseStudyBlock .caseStudyBlock-title {
    top: 2.188rem;
    padding: 0 2.188rem;
  }
}

.caseStudyBlock:hover .caseStudyBlock-title {
  text-decoration: underline;
  color: #FFF;
}

.caseStudyBlock::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: inherit;
  transform: scale(1);
  transform-origin: center center;
  transition: transform 0.3s ease-in-out;
  z-index: 1;
}
.caseStudyBlock:hover::before {
  transform: scale(1.05);
}




.mediaBlock {
  background: #E6F1F4;
  border-radius: 0.5rem;
  margin-bottom: 0.625rem;
  padding: 1rem 1rem 0.8rem;
}
.mediaBlock .media-body {
  margin-left: .85rem;
}
.mediaBlock .mediaTypeWrap {
  width: 3.75rem;
}
.mediaBlock .mediaType {
  display: inline-block;
  margin-right: 1rem;
  color: #FFF;
  margin-right: 0.15rem;
  line-height: .95;
  width: 2.625rem;
  height: 2.625rem;
  text-align: center;
}
.mediaBlock .mediaType-video {
  background: url('/../img/icons/video.svg') no-repeat center / contain;
}
.mediaBlock .mediaType-podcast {
  background: url('/../img/icons/podcast.svg') no-repeat center / contain;
}
.mediaBlock .mediaType-insight {
  background: url('/../img/icons/insight.svg') no-repeat center / contain;
}
.mediaBlockWrap-sm .mediaBlock {
  background: #FFF;
  border-radius: 0.5rem;
  padding: 0.625rem;
  margin-bottom: 0.625rem;
}
.mediaBlockWrap-sm .mediaBlock .mediaTypeWrap {
  width: 2.5rem;
}
.mediaBlockWrap-sm .mediaBlock .mediaType {
  width: 2.188rem;
  height: 2.188rem;
}

@media (min-width: 992px) {
  .mediaBlock {
    padding: 1rem;
    border-radius: 1rem;
  }

  .blockSlider .mediaBlock {
    height: 100%;
    margin-bottom: 0;
  }
}

.mediaBlock:hover .h3,
.mediaBlock:hover .mb0 {
  text-decoration: underline;
  color: #003DA7;
}


.serviceBlock {
  background: #FFF;
  border-radius: 1.25rem;
  margin: 0rem 0 0;
  padding: 1.563rem;
}

.moreBlock {
  background: #E5F3F5;
  border-radius: 1.25rem;
  margin: 0rem 0 0;
  padding: 1.563rem;
  border: 1px solid #E5F3F5;
  transition: .2s all;
  height: 100%;
}

.light-bg .moreBlock {
  background: #FFF;
}

.moreBlock:hover {
  border: 1px solid #003DA7;
}
.moreBlock:hover .h3 {
  color: #003DA7;
}

.regionImageBlock {
  background: url('/../img/home/Wessex-region.jpg') no-repeat center / cover;
  border-radius: 1rem;
  padding-bottom: 70.4%;
}
.promoBlock-imageFullWrapper {
  position: relative;
  border-radius: 1rem;
  margin-top: 2.5rem;
}
.promoBlock-imageFull {
  padding-bottom: 54.6%;
  position: relative;
  border-top-left-radius: 1rem;
  border-top-right-radius: 1rem;
  border-bottom-left-radius: 0rem;
  border-bottom-right-radius: 0rem;
}
.promoBlock-textOverlay {
  background: #00738D;
  color: #FFF;
  border-top-left-radius: 0rem;
  border-top-right-radius: 0rem;
  border-bottom-left-radius: 1rem;
  border-bottom-right-radius: 1rem;
  padding: 1.5rem;
  max-width: 445px;
}
.promoBlock-textOverlay .promoBlock-author {
  font-size: 0.813rem;
}
.promoBlock-textOverlay .h4 {
  line-height: 1.3;
}

@media (min-width: 1200px) {
  .regionImageBlock {
    padding-bottom: 88.4%;
  }
  .promoBlock-imageFullWrapper {
    margin-top: 4rem;
  }
  .promoBlock-imageFull {
    padding-bottom: 34.6%;
    border-top-left-radius: 1rem;
    border-top-right-radius: 1rem;
    border-bottom-left-radius: 1rem;
    border-bottom-right-radius: 1rem;
  }
  .promoBlock-textOverlay .promoBlock-author {
    font-size: 0.875rem;
  }
  .promoBlock-textOverlay {
    position: absolute;
    padding: 2rem;
    top: 2rem;
    left: 2rem;
    border-top-left-radius: 1rem;
    border-top-right-radius: 1rem;
    border-bottom-left-radius: 1rem;
    border-bottom-right-radius: 1rem;
  }
}
@media (min-width: 1355px) {
  .regionImageBlock {
    padding-bottom: 88.4%;
  }
  .promoBlock-imageFull {
    padding-bottom: 40.6%;
  }
  .promoBlock-textOverlay {
    padding: 2.5rem;
  }
}
@media (min-width: 1599px) {
  .regionImageBlock {
    padding-bottom: 91.2%;
  }
  .promoBlock-imageFull {
    padding-bottom: 45.6%;
  }
}

.listItem {
  padding-left: 50px;
  position: relative;
  font-weight: 500;
}
.dark-bg .listItem a {
  color: #FFF;
}
.listItem::before {
  content: "";
  width: 30px;
  height: 30px;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}

.listItem.downloadItem::before {
  background: url('/../img/icons/download.svg') no-repeat center / contain;
}
.listItem.linkItem::before {
  background: url('/../img/icons/link.svg') no-repeat center / contain;
}
.listItem.toolkitItem::before {
  background: url('/../img/icons/toolkit.svg') no-repeat center / contain;
}
.listItem.insightItem::before {
  background: url('/../img/icons/insight.svg') no-repeat center / contain;
}

@media (min-width:1355px) {
  .listItem {
    font-size: 1.125rem;
  }
}
@media (min-width:1599px) {
  .listItem {
    font-size: 1.25rem;
  }
}

.headerImageBlockWrap {
  position: relative;
  margin-bottom: 3rem;
  margin-top: 2rem;
}
.headerImageBlock {
  padding-bottom: 46.4%;
  border-top-left-radius: 1rem;
  border-top-right-radius: 1rem;
  border-bottom-left-radius: 0rem;
  border-bottom-right-radius: 0rem;
  background-repeat: no-repeat;
  background-size: cover;
}
.headerImageBlockWrap .headerImageText {
  background: #00738D;
  border-top-left-radius: 0rem;
  border-top-right-radius: 0rem;
  border-bottom-left-radius: 1rem;
  border-bottom-right-radius: 1rem;
  max-width: 550px;
  color: #FFF;
  padding: 1.563rem;
}
.headerImageBlockWrap .headerImageType {
  text-transform: uppercase;
  color: #C9F4FD;
  font-family: "century-gothic", sans-serif;
  font-size: 1.125rem;
}
.headerImageBlockWrap .headerImageText h1 {
  font-size: 1.563rem;
}

.headerImageText-sm, {
  font-size: 0.813rem;
  color: #C9F4FD;
  margin-bottom: 1.25rem;
  line-height: 1.7;
}
.headerImageText-sm a {
  color: #C9F4FD;
  text-decoration: underline;
}
.headerBlockType {
  width: 95px;
  display: inline-block;
}

.headerBlockValue {
  display: inline-block;
}

@media (min-width: 1200px) {
  .headerImageBlockWrap {
    margin-top: .75rem;
  }
  .headerImageBlock {
    border-top-left-radius: 1rem;
    border-top-right-radius: 1rem;
    border-bottom-left-radius: 1rem;
    border-bottom-right-radius: 1rem;
  }
  .headerImageBlockWrap .headerImageText {
    position: absolute;
    left: 2.813rem;
    top: 2.813rem;
    border-top-left-radius: 1rem;
    border-top-right-radius: 1rem;
    border-bottom-left-radius: 1rem;
    border-bottom-right-radius: 1rem;
  }
  .headerImageBlockWrap .headerImageText {
    padding: 2.188rem;
  }
  .headerImageBlockWrap .headerImageType {
    font-size: 1.25rem;
  }
  .headerImageBlockWrap .headerImageText h1 {
    font-size: 2.25rem;
  }
  .headerImageText-sm {
    font-size: 0.875rem;
  }
}

.projectImageCluster {
  position: relative;
  margin-bottom: 2rem;
}
.projectImageBlock {
  padding-bottom: 54.6%;
  border-radius: 1rem;
  max-width: 260px;
  width: 100%;
  position: relative;
  z-index: 2;
  min-height: 260px;
  margin: 1.5rem 0 4.063rem;
  background-repeat: no-repeat;
  background-size: cover;
}
.projectImageColourBlock {
  padding-bottom: 54.6%;
  border-radius: 1rem;
  margin: 2rem 0 0 2rem;
  max-width: 260px;
  width: 100%;
  position: absolute;
  z-index: 1;
  top: 0rem;
  left: 0rem;
  background: rgb(180, 238, 235);
  background: linear-gradient(135deg, rgba(180, 238, 235, 1) 0%, rgba(183, 224, 239, 1) 100%);
  min-height: 260px;
}
.projectImageColourBlock.projectImageColourBlock-2 {
  background: rgb(180, 238, 235);
  background: linear-gradient(135deg, rgba(180, 238, 235, .45) 0%, rgba(183, 224, 239, .45) 100%);
}
.projectImageCluster img {
  position: absolute;
  z-index: 3;
  left: -15px;
  bottom: -15px;
  max-width: 165px;
}

.green-bg .projectImageColourBlock {
  background: rgb(180, 238, 235);
  background: linear-gradient(135deg, rgba(174, 229, 217, 1) 0%, rgba(196, 234, 184, 1) 100%);
}

@media (min-width: 1200px) {
  .projectImageBlock {
    max-width: 365px;
    min-height: 365px;
    margin: 0;
  }
  .projectImageColourBlock {
    max-width: 365px;
    min-height: 365px;
    top: 1rem;
    left: 1rem;
  }
  .projectImageCluster img {
    left: -45px;
    bottom: -30px;
    max-width: unset;
  }
}

.capability-1 {
  background: #EDEAE9
}
.capability-1 .h2 {
  color: #796862;
}
.capability-2 {
  background: #E6F1F4
}
.capability-2 .h2 {
  color: #00738D;
}
.capability-3 {
  background: #F3E5F6
}
.capability-3 .h2 {
  color: #9E29B5;
}
.capability-4 {
  background: #FFF8D9
}
.capability-4 .h2 {
  color: #796862;
}
.captabilityNav {
  margin-bottom: 1.5rem;
}
.captabilityNav-item {
  display: inline-block;
  margin: 0 10px 10px 0;
  width: 100%;
}
.captabilityNav-item .btn-sm.btn {
  font-size: 13px;
  border-radius: 10rem !important;
  padding: 0.25rem .75rem;
  width: 100%;
}
.captabilityNav-item .btn-sm.btn:hover {
  border-color: #0057F4;
  color: #0057F4;
}

.captabilityNav-item .btn-sm.btn.dropdown-toggle::after {
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8.707' height='5.061' viewBox='0 0 8.707 5.061'%3E%3Cpath d='M8.707.707l-4,4-4-4' transform='translate(-0.354 -0.354)' fill='none' stroke='%23003DA7' stroke-miterlimit='10' stroke-width='1'/%3E%3C/svg%3E") no-repeat center / contain;
}
.captabilityNav-item .btn-sm.btn.dropdown-toggle:hover::after {
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8.707' height='5.061' viewBox='0 0 8.707 5.061'%3E%3Cpath d='M8.707.707l-4,4-4-4' transform='translate(-0.354 -0.354)' fill='none' stroke='%230057F4' stroke-miterlimit='10' stroke-width='1'/%3E%3C/svg%3E") no-repeat center / contain;
}

@media (min-width: 768px) {
  .captabilityNav-item,
  .captabilityNav-item .btn-sm.btn {
    width: initial;
  }
}

.hexHeader {
  background: rgb(180, 238, 235);
  background: url('/../img/publications/publications-hex.svg') no-repeat bottom right, linear-gradient(135deg, rgba(180, 238, 235, 1) 0%, rgba(183, 224, 239, 1) 100%);
}
.hexHeader .slimHeaderText {
  color: #003251;
}

.contentSearch {
  position: relative;
}
.contentSearch .form-control {
  width: 100%;
  display: inline-block;
  height: 2.5rem;
  font-size: 1rem;
  border-radius: 10rem;
  padding-left: 2.5rem;
  margin-bottom: 0;
  margin-top: 0;
  border: 1px solid #B9B9B9;
}
.contentSearch button {
  background: none;
  border: none;
  position: absolute;
  left: 15px;
  top: 35%;
  transform: rotate(-45deg) translateY(-35%);
}
.contentSearch button svg {
  margin: -10px 0px -4px 0px;
}

.pod {
  background: #E6F1F4;
  border-radius: 1rem;
  padding: 0.938rem;
  margin-bottom: 0;
  margin-top: 1rem;
}
.pod .teamBlockWrap:last-child {
  margin-right: 0 !important;
}
.pod .teamBlock {
  width: 80px;
  height: 80px;
}

.pod.join-us-pod {
  background: #F3E5F6;
}
.pod.join-us-pod img {
  border-radius: 0.5rem;
}

.podImageHeader {
  position: relative;
  margin-bottom: 1.25rem;
}
.podImageHeader p {
  position: absolute;
  bottom: .9rem;
  left: .9rem;
  color: #FFF;
  margin-bottom: 0;
}

.pod .btn.btn-sm {
  color: #003DA7;
  border: 1px solid #003DA7;
  background: transparent;
  font-size: 0.875rem;
  border-radius: 0.875rem;
  padding: 0.25rem 1rem;
}
.pod .btn.btn-sm.btn-external svg {
  margin: -5px 0px 0 5px;
}

@media (min-width: 1200px) {
  .pod {
    padding: 1.563rem;
    margin-bottom: 2.5rem;
    margin-top: 0;
  }
}


.filterBlock {
  background: #F2F2F2;
  border-radius: 0.5rem;
  padding: 1.25rem;
}

.filterBlock .filterCheckbox {
  font-size: 1rem;
  margin-bottom: 1rem;
}


.filterBlock input[type="checkbox"] {
  display: none; /* Hide default checkbox */
}

.filterBlock label {
  display: flex;
  align-items: center;
  cursor: pointer;
  font-size: 0.938rem;
  user-select: none;
  gap: 10px;
  font-weight: 500;
}

.filterBlock label::before {
  content: "";
  width: 20px;
  height: 20px;
  border: 2px solid #003DA7;
  background: #FFF;
  border-radius: 4px;
  display: inline-block;
  transition: all 0.2s ease-in-out;
}

.filterBlock input[type="checkbox"]:checked + label::before {
  background-color: #003DA7;
  border-color: #003DA7;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='15.828' height='11.83' viewBox='0 0 15.828 11.83'%3E%3Cpath d='M88.849,747.075l4.308,4.188,8.692-9' transform='translate(-87.435 -740.849)' fill='none' stroke='%23fff' stroke-linecap='round' stroke-width='2'/%3E%3C/svg%3E");background-size: 18px;
  background-repeat: no-repeat;
  background-position: center;
  background-size: 15px;
}
.filterNav {
  display: inline-block;
  clear: both;
  width: 100%;
}
.filterNav .h3 {
  display: block;
  width: 100%;
}

.filterHeading {
  position: relative;
}
.filterNav .filterCount {
  position: absolute;
  left: 85px;
  top: 0;
  font-size: 12px;
  background: #FFF;
  padding: 4px 4px;
  color: #0057F4;
  border-radius: 50%;
  width: 25px;
  height: 25px;
  text-align: center;
  display: inline-block;
}
.filterNav .collapse.show {
  clear: both;
  display: inline-block;
  width: 100%;
}

@media (min-width: 1200px) {
  .filterBlock {
    border-radius: 1rem;
  }
  .filterBlock label {
    font-size: 1rem;
  }
  .filterBlock label::before {
    width: 22px;
    height: 22px;
  }
  .filterNav .filterCount {
    left: 115px;
  }
}

@media (max-width: 1199.98px) {
  .filterNav .h3 span:not(.filterCount) {
    position: relative;
    padding-right: 1.25rem;
    display: block;
    width: 100%;
  }
  .filterNav .h3 span:not(.filterCount):after {
    content: "";
    position: absolute;
    width: 18px;
    height: 10px;
    right: 0;
    top: 50%;
    transform: translateY(-15%);
    background-repeat: no-repeat;
    background-size: contain;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8.707' height='5.061' viewBox='0 0 8.707 5.061'%3E%3Cpath d='M8.707.707l-4,4-4-4' transform='translate(-0.354 -0.354)' fill='none' stroke='%23003251' stroke-miterlimit='10' stroke-width='1'/%3E%3C/svg%3E");
  }
}

.filterNav .filterBtn {
  display: block;
  font-size: 0.875rem;
  padding: 0.313rem 0rem;
}

@media (min-width: 1200px) {
  .filterNav .h3 {
    display: inline-block;
    float: left;
    margin-right: 1rem;
    width: unset;
  }
  .filterNav .collapse:not(.show) {
    display: inline-block;
    width: 100%;
  }
  .filterNav .filterBtn {
    display: inline-block;
    margin: 0 .25rem;
    border-radius: 1.25rem;
    border: 1px solid #B9B9B9;
    font-size: 0.875rem;
    padding: 0.313rem 0.986rem;
  }
  .filterNav .filterBtn span {
    position: relative;
    padding-right: 1rem;
  }
  .filterNav .filterBtn span:after {
    content: "";
    position: absolute;
    width: 8px;
    height: 11px;
    right: 0;
    top: 50%;
    transform: translateY(-40%);
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8.707' height='5.061' viewBox='0 0 8.707 5.061'%3E%3Cpath d='M8.707.707l-4,4-4-4' transform='translate(-0.354 -0.354)' fill='none' stroke='%23003251' stroke-miterlimit='10' stroke-width='1'/%3E%3C/svg%3E");
  }
}
@media (min-width: 1599px) {
  .bodyFormat {
    font-size: 1.125rem;
  }
}

.focusAreas, .focusAreas a {
  color: #00577D;
  font-weight: 500;
  font-size: 0.938rem;
}

.purple-bg .textFormatting a:not(.btn) {
  color: #FFF
}

.textFormatting b,
.textFormatting strong {
  font-weight: 500 !important;
  font-size: inherit; !important;
  line-height: 1.5 !important;
}
.textFormatting .h2 b, .textFormatting .h2 strong,
.textFormatting .h3 b, .textFormatting .h3 strong,
.textFormatting .h4 b, .textFormatting .h4 strong {
  font-weight: 700 !important;
}
.textFormatting ul {
  margin-bottom: 2rem;
}
.textFormatting ul li {
  margin-bottom: 0.5rem;
}
.textFormatting a:not(.btn) {
  text-decoration: underline;
  color: #003DA7;
  font-weight: 500;
}
.textFormatting .h3 a {
  font-weight: 700;
}
.textFormatting,
.textFormatting p:not(.h1):not(.h2):not(.h3):not(.h4), 
.textFormatting p span,
.textFormatting span,
.textFormatting li,
.textFormatting ul li, {
  font-size: 1rem !important;
  line-height: 1.5 !important;
  font-family: "neue-haas-grotesk-text", sans-serif !important;
  font-weight: unset !important;
}
.textFormatting p.h4,
.textFormatting p.h4 span {
  font-size: 1.125rem !important;
}
.textFormatting .note-float-left {
  margin-right: 2.5rem;
  margin-bottom: 2rem;
}
.textFormatting .note-float-right {
  margin-left: 2.5rem;
  margin-bottom: 2rem;
}
.bodyFormat-truncated {
  display: -webkit-box;
  -webkit-line-clamp: 135;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
}
.read-more-link {
  color: #003DA7;
  font-weight: 500;
  transition: 2s all;
}
.read-more-link.dropdown-toggle:after {
  margin-left: 0.5em;
}
.read-more-link.dropdown-toggle.read-less:after {
  transform: rotate(180deg);
}
.dark-grad-bg .textFormatting a {
  color: #FFF;
}

.textFormatting .table.table-bordered p,
.textFormatting .table.table-bordered span,
.textFormatting .table.table-bordered p span {
  font-size: 0.938rem !important;
}
.textFormatting .table.table-bordered p:not(.h1):not(.h2):not(.h3):not(.h4),
.textFormatting .table.table-bordered p span,
.textFormatting .table.table-bordered span {
  font-size: 0.938rem !important;
}

@media (min-width:1355px) {
  .textFormatting .table.table-bordered p,
  .textFormatting .table.table-bordered span,
  .textFormatting .table.table-bordered p span {
    font-size: 0.938rem !important;
  }
  .textFormatting .table.table-bordered p:not(.h1):not(.h2):not(.h3):not(.h4),
  .textFormatting .table.table-bordered p span,
  .textFormatting .table.table-bordered span {
    font-size: 0.938rem !important;
  }
  .textFormatting,
  .textFormatting p:not(.h1):not(.h2):not(.h3):not(.h4), 
  .textFormatting p span,
  .textFormatting span {
    font-size: 1.125rem !important;
  }
}
@media (min-width:1599px) {
  .textFormatting .table.table-bordered p,
  .textFormatting .table.table-bordered span,
  .textFormatting .table.table-bordered p span {
    font-size: 0.938rem !important;
  }
  .textFormatting .table.table-bordered p:not(.h1):not(.h2):not(.h3):not(.h4),
  .textFormatting .table.table-bordered p span,
  .textFormatting .table.table-bordered span {
    font-size: 0.938rem !important;
  }
  .textFormatting,
  .textFormatting p:not(.h1):not(.h2):not(.h3):not(.h4), 
  .textFormatting p span,
  .textFormatting span,
  .textFormatting li,
  .textFormatting ul li {
    font-size: 1.125rem !important;
    font-weight: unset !important;
  }
  .textFormatting b {
    font-size: inherit !important;
  }
}
.textFormatting table {
  display: block;
  overflow-x: auto;
}
.textFormatting .table.table-bordered {
  font-size: 0.938rem;
  margin: 15px 0;
  border: none;
}
.textFormatting .table.table-bordered p,
.textFormatting .table.table-bordered span,
.textFormatting .table.table-bordered p span {
  font-size: 0.938rem !important;
}
.textFormatting .table.table-bordered tr:first-child td {
  background-color: #E5F3F5;
  font-weight: bold;
}
.formWrapper {
  background: #E8F1FD;
  border-radius: 1rem;
  padding: 1.25rem;
}

.formWrapper .form-group {
  margin-bottom: 1.125rem;
  display: inline-block;
  width: 100%;
}
.formWrapper .form-control {
  border-radius: 2rem;
  border: 1px solid #8CB1F2;
  color: #003DA7;
}
.formWrapper textarea.form-control {
  border-radius: 1rem;
}
.formWrapper .has-float-label input, .formWrapper .has-float-label textarea {
  padding-left: 18px;
}
.has-float-label input,
.has-float-label textarea {
  padding-left: 0;
  font-size: 14px;
}
.has-float-label {
  display: block;
  position: relative;
}
.has-float-label label, .has-float-label > span {
  position: absolute;
  left: 18px;
  top: -23px;
  cursor: text;
  font-size: 13px;
  opacity: 1;
  transition: all .2s;
  pointer-events: none;
  color: #003DA7;
}
.has-error .has-float-label label, .has-error .has-float-label > span {
  color: red;
}
.has-float-label label.when-label {
  left: 45px;
}
.has-float-label textarea::placeholder,
.has-float-label input::placeholder {
  opacity: 1;
  transition: all .2s;
}
.has-float-label textarea:placeholder-shown:not(:focus)::placeholder,
.has-float-label input:placeholder-shown:not(:focus)::placeholder {
  opacity: 0;
}
.has-float-label textarea:placeholder-shown:not(:focus) + *,
.has-float-label input:placeholder-shown:not(:focus) + * {
  font-size: 13px;
  opacity: .9;
  top: 8px;
}
.has-float-label input,
.has-float-label input:focus {
  outline: none!important;
}

@media (min-width: 768px) {
  .has-float-label input,
  .has-float-label textarea {
    padding-left: 0;
    font-size: 1rem;
    color: #003DA7;
  }
  .has-float-label textarea:placeholder-shown:not(:focus) + *,
  .has-float-label input:placeholder-shown:not(:focus) + * {
    font-size: 1rem;
  }
  .has-float-label input,
  .has-float-label textarea {
    padding-left: 0;
    font-size: 18px;
  }
}
@media (min-width: 1200px) {
  .formWrapper {
    padding: 1.875rem;
  }
}

input::placeholder {
  color: #003DA7;
}

/*Careers*/
.careerMetaWrapper {
  margin-bottom: .75rem;
}
.careerMeta {
  color: #00577D;
  background: #FFF;
  font-size: 0.813rem;
  border-radius: 0.25rem;
  padding: 0.25rem 0.35rem;
  font-weight: 500;
  display: inline-block;
  margin: 0 .5rem .25rem 0;
}

.careerPageMeta {
  color: #00577D;
  font-weight: 500;
}
.careerPageMeta .headerBlockType {
  width: 135px;
  margin-bottom: .35rem;
}


.newsletter,
.newsletterSm {
  background: rgb(196,234,184);
  background: linear-gradient(135deg, rgba(196,234,184,1) 0%, rgba(174,229,217,1) 100%);
  position: relative;
}
.newsletter .newsletter-hex {
  background: url('/../img/newsletter-hex-sm.svg') no-repeat bottom right / contain;
  width: 50%;
  height: 75%;
  position: absolute;
  bottom: 0;
  right: 0;
}

.newsletterSm {
  padding: 1.563rem;
  border-radius: 1rem;
  min-height: 215px;
}
.newsletterSm .newsletter-hex-nav {
  background: url('/../img/newsletter-hex-nav.svg') no-repeat bottom right / contain;
  width: 50%;
  height: 75%;
  position: absolute;
  bottom: 0;
  right: 0;
}
.newsletterSm .btn {
  font-size: 1rem;
}

@media (min-width: 992px) {
  .newsletter .newsletter-hex {
    background: url('/../img/newsletter-hex.svg') no-repeat bottom right / contain;
    width: 45%;
    height: 90%;
  }
}

footer {
  background: #F2F2F2;
  padding: 2rem 0;
  font-size: 0.875rem;
}
footer .social {
  margin-top: 1.5rem;
}
footer .social a {
  margin-right: .95rem;
}
footer .footerNav a {
  margin-bottom: .65rem;
  font-weight: 500;
  display: block;
}
footer a:not(.footerNav a) {
  text-decoration: underline;
  color: #003DA7;
}
footer .tel {
  text-decoration: underline;
}
@media (min-width: 992px) {
  footer {
    font-size: 1rem;
  }
  footer .social {
    margin-top: 2.5rem;
  }
  footer .tel {
    text-decoration: none !important;
  }
}

.admin{
  max-width: 450px;
  margin: 0 auto;
  border: 1px solid #FFF;
  padding: 1.563rem;
  border-radius: 6px;
  background: #FFF;
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.24);
}
.admin h1 {
  margin: 0 0 20px;
}
.admin .btn {
  margin-top: 15px
}