/* CSS Document */
/*-----------
++VARIABLES++
-----------*/
::-moz-selection {
  color: white;
  background: #00183f; }

::selection {
  color: white;
  background: #00183f; }

/*--------
++GLOBAL++
---------*/
* {
  margin: 0;
  padding: 0;
  outline: 0 !important; }

html {
  scroll-behavior: smooth;
  scroll-padding-top: 250px; }

body {
  background: #fff;
  font-weight: 400;
  font-family: "Montserrat", sans-serif; }

.gform_required_legend {
  display: none; }

img {
  max-width: 100%; }

h1,
.h1 {
  font-weight: 300;
  line-height: 1.2;
  font-size: clamp(65px, 5.3vw, 65px);
  font-family: "Barlow Condensed", sans-serif;
  color: #002c72;
  font-weight: 500; }

h2,
.h2 {
  font-weight: 300;
  line-height: 1.2;
  font-size: clamp(40px, 4.5vw, 55px);
  font-family: "Barlow Condensed", sans-serif;
  color: #002c72;
  font-weight: 500; }

h3,
.h3 {
  font-weight: 300;
  line-height: 1.2;
  font-size: clamp(35px, 2.4vw, 45px);
  font-family: "Barlow Condensed", sans-serif;
  color: #002c72;
  font-weight: 500; }

h4,
.h4 {
  font-weight: 300;
  line-height: 1.2;
  font-size: clamp(30px, 2vw, 35px); }

h5,
.h5 {
  font-weight: 300;
  line-height: 1.2;
  font-size: clamp(20px, 1.5vw, 25px); }

h6,
.h6 {
  font-weight: 300;
  line-height: 1.2;
  font-size: clamp(16px, 1.3vw, 22px); }

p {
  margin-bottom: 15px;
  font-size: 16px;
  line-height: 1.4;
  font-weight: 300; }
  p a {
    color: #000; }
    p a:visited {
      color: #000; }
  p strong {
    font-weight: 700; }
  p .large {
    font-size: clamp(18px, 1.3vw, 22px); }

a {
  text-decoration: none;
  outline: 0px solid #000; }
  a:focus {
    outline: 0px solid #000; }

.post,
.page {
  margin: 0; }

.container {
  position: relative;
  z-index: 1; }
  @media (min-width: 576px) {
    .container {
      max-width: 540px;
      margin: 0 auto; } }
  @media (min-width: 768px) {
    .container {
      max-width: 720px;
      margin: 0 auto; } }
  @media screen and (min-width: 992px) {
    .container {
      max-width: 960px;
      margin: 0 auto; } }
  @media screen and (min-width: 1200px) {
    .container {
      max-width: 1500px;
      width: 85%;
      margin: 0 auto;
      padding: 0 15px;
      min-width: 1140px; } }
  @media screen and (min-width: 1500px) {
    .container {
      width: 90%;
      margin: 0 auto; } }
  @media screen and (max-width: 991px) {
    .container {
      padding-right: 25px;
      padding-left: 25px; } }

.flexibleModule {
  padding: 80px 0 !important;
  background-size: cover;
  background-position: center; }
  .flexibleModule.topBotSpacing {
    padding: 80px 0 !important; }
  .flexibleModule.noSpacing, .flexibleModule.spacingNone {
    padding: 0 !important; }
  .flexibleModule.spacingTop {
    padding: 80px 0 0 !important; }
  .flexibleModule.spacingBot {
    padding: 0 0 80px !important; }
  @media screen and (max-width: 991px) {
    .flexibleModule {
      padding: 60px 0 !important; }
      .flexibleModule.topBotSpacing {
        padding: 60px 0 !important; }
      .flexibleModule.noSpacing, .flexibleModule.spacingNone {
        padding: 0 !important; }
      .flexibleModule.spacingTop {
        padding: 60px 0 0 !important; }
      .flexibleModule.spacingBot {
        padding: 0 0 60px !important; } }

.owl-dots {
  width: 100%;
  padding: 40px 0 0;
  display: flex;
  justify-content: center; }
  .owl-dots .owl-dot {
    display: inline-flex;
    width: 50px;
    height: 4px;
    margin: 0 3px;
    border: 0;
    padding: 0;
    border-radius: 0;
    background: #D9D9D9;
    transition: .5s; }
    .owl-dots .owl-dot.active {
      background: #002c72; }

.blueBG {
  background: #002c72; }

.redBG {
  background: #aa2328; }

.whiteBG {
  background: #fff; }

/*--------
++Buttons++
---------*/
.btnWrap a {
  margin-right: 25px; }
  .btnWrap a:last-child {
    margin-right: 0; }
  .btnWrap a:hover {
    color: white; }

.defaultBTN {
  font-family: "Barlow Condensed", sans-serif;
  padding: 15px 28px;
  border-radius: 5px;
  display: inline-flex;
  align-items: center;
  line-height: 1;
  border: 1px solid #fff;
  cursor: pointer;
  font-size: 18px;
  overflow: hidden;
  background: transparent;
  color: #fff;
  transition: 0.5s;
  border-radius: 10px; }
  .defaultBTN:focus {
    text-decoration: none;
    color: #fff; }
  .defaultBTN:visited {
    text-decoration: none;
    color: #fff; }
  .defaultBTN:hover {
    background: #002c72;
    border: 1px solid #002c72;
    text-decoration: none;
    color: #fff; }
  .defaultBTN.blueBTN {
    background: transparent;
    color: #002c72;
    border: 1px solid #002c72; }
    .defaultBTN.blueBTN:focus {
      color: #002c72; }
    .defaultBTN.blueBTN:visited {
      color: #002c72; }
    .defaultBTN.blueBTN:hover {
      background: #002c72;
      color: #fff; }
  .defaultBTN.redBTN {
    background: transparent;
    color: #aa2328;
    border: 1px solid #aa2328; }
    .defaultBTN.redBTN:focus {
      color: #aa2328; }
    .defaultBTN.redBTN:visited {
      color: #aa2328; }
    .defaultBTN.redBTN:hover {
      border: 1px solid #fff;
      background: #fff;
      color: #aa2328; }

.plainBTN {
  font-family: "Barlow Condensed", sans-serif;
  padding: 15px 28px;
  border-radius: 5px;
  display: inline-flex;
  align-items: center;
  line-height: 1;
  border: 1px solid #fff;
  cursor: pointer;
  font-size: 18px;
  overflow: hidden;
  background: #fff;
  color: #002c72;
  transition: 0.5s;
  border-radius: 10px; }
  .plainBTN:focus {
    text-decoration: none;
    color: #002c72; }
  .plainBTN:visited {
    text-decoration: none;
    color: #002c72; }
  .plainBTN.blueBTN {
    background: #002c72;
    color: #fff;
    border: 1px solid #002c72; }
    .plainBTN.blueBTN:focus {
      color: #fff; }
    .plainBTN.blueBTN:visited {
      color: #fff; }
    .plainBTN.blueBTN:hover {
      background: transparent;
      color: #002c72; }
  .plainBTN.redBTN {
    background: #aa2328;
    color: #fff;
    border: 1px solid #aa2328; }
    .plainBTN.redBTN:focus {
      color: #fff; }
    .plainBTN.redBTN:visited {
      color: #fff; }
    .plainBTN.redBTN:hover {
      border: 1px solid #aa2328;
      background: transparent;
      color: #aa2328; }

.underlineBTN {
  font-family: "Barlow Condensed", sans-serif;
  padding: 8px 0;
  display: inline-flex;
  align-items: center;
  line-height: 1;
  cursor: pointer;
  font-size: 18px;
  overflow: hidden;
  background: transparent;
  color: #fff;
  transition: 0.5s;
  position: relative; }
  .underlineBTN::after {
    content: "";
    position: absolute;
    bottom: 0;
    z-index: 0;
    height: 1px;
    right: 0;
    width: 100%;
    background: #fff;
    transition: .5s; }
  .underlineBTN:focus {
    text-decoration: none;
    color: #fff; }
  .underlineBTN:visited {
    text-decoration: none;
    color: #fff; }
  .underlineBTN:hover::after {
    animation: hoverUnderline 1.5s ease; }
  .underlineBTN.blueBTN {
    background: transparent;
    color: #002c72;
    border-bottom: 1px solid #002c72; }
    .underlineBTN.blueBTN svg path {
      fill: #002c72; }
    .underlineBTN.blueBTN:focus {
      color: #002c72; }
    .underlineBTN.blueBTN:visited {
      color: #002c72; }
  .underlineBTN.redBTN {
    background: transparent;
    color: #aa2328;
    border-bottom: 1px solid #aa2328; }
    .underlineBTN.redBTN svg path {
      fill: #aa2328; }
    .underlineBTN.redBTN:focus {
      color: #aa2328; }
    .underlineBTN.redBTN:visited {
      color: #aa2328; }

@keyframes hoverUnderline {
  0% {
    width: 100%;
    right: 0;
    left: auto; }
  50% {
    width: 0;
    right: 0;
    left: auto; }
  51% {
    width: 0;
    right: auto;
    left: 0; }
  100% {
    width: 100%;
    right: auto;
    left: 0; } }
/*--------
++IMPORTS++
---------*/
/* CSS Document */
/* HEADER / MENU */
.bomHeader {
  position: fixed;
  top: 0;
  left: 0;
  background: #fff;
  z-index: 9999;
  width: 100%;
  height: auto;
  -o-transition: .5s;
  -ms-transition: .5s;
  -moz-transition: .5s;
  -webkit-transition: .5s; }

.bomHeader .topHeader {
  background: #002c72;
  padding: 8px 0;
  height: auto;
  -o-transition: .5s;
  -ms-transition: .5s;
  -moz-transition: .5s;
  -webkit-transition: .5s; }
  .bomHeader .topHeader .container {
    max-width: 95%;
    padding: 0; }
  .bomHeader .topHeader ul {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    list-style: none;
    margin: 0; }
    .bomHeader .topHeader ul li {
      padding: 0 2vw; }
      .bomHeader .topHeader ul li:last-child {
        padding: 0 0 0 2vw; }
      .bomHeader .topHeader ul li a, .bomHeader .topHeader ul li a:visited, .bomHeader .topHeader ul li a:focus {
        color: #fff;
        font-family: "Barlow Condensed", sans-serif;
        font-size: clamp(18px, 1.3vw, 22px);
        line-height: 1.2;
        font-weight: 300;
        text-transform: lowercase;
        display: inline-flex;
        justify-content: flex-start;
        align-items: center;
        text-decoration: none; }
        .bomHeader .topHeader ul li a:hover, .bomHeader .topHeader ul li a:visited:hover, .bomHeader .topHeader ul li a:focus:hover {
          text-decoration: none; }
        .bomHeader .topHeader ul li a svg, .bomHeader .topHeader ul li a:visited svg, .bomHeader .topHeader ul li a:focus svg {
          width: 15px;
          height: 15px;
          margin: 0 5px 0 0; }
.bomHeader .bottomHeader {
  padding: 0;
  position: relative;
  -o-transition: .5s;
  -ms-transition: .5s;
  -moz-transition: .5s;
  -webkit-transition: .5s;
  max-width: 95%;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 2rem; }
  .bomHeader .bottomHeader .headerMiddle ul li a {
    text-transform: uppercase; }
  .bomHeader .bottomHeader .headerRight ul.menu {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    list-style: none;
    margin: 0; }
    .bomHeader .bottomHeader .headerRight ul.menu li {
      padding: 28px 1vw;
      position: relative; }
      .bomHeader .bottomHeader .headerRight ul.menu li::last-child {
        padding: 28px 0 28px 1vw; }
      .bomHeader .bottomHeader .headerRight ul.menu li.current_page_item a {
        color: #aa2328;
        font-weight: 700; }
      .bomHeader .bottomHeader .headerRight ul.menu li a {
        font-family: "Barlow Condensed", sans-serif;
        color: #000;
        font-size: clamp(18px, 1.3vw, 22px);
        line-height: 1.2;
        font-weight: 400;
        text-decoration: none;
        display: block; }
      .bomHeader .bottomHeader .headerRight ul.menu li .sub-menu {
        margin: 0;
        width: 450px;
        background: #e5e5e5;
        padding: 10px;
        position: absolute;
        top: 100%;
        left: 0;
        display: none;
        list-style-type: none;
        z-index: 9999999999999; }
      .bomHeader .bottomHeader .headerRight ul.menu li:hover {
        cursor: pointer; }
        .bomHeader .bottomHeader .headerRight ul.menu li:hover a {
          color: #aa2328; }
        .bomHeader .bottomHeader .headerRight ul.menu li:hover ul.sub-menu {
          display: block; }
          .bomHeader .bottomHeader .headerRight ul.menu li:hover ul.sub-menu li {
            padding: 5px 0; }
            .bomHeader .bottomHeader .headerRight ul.menu li:hover ul.sub-menu li a {
              color: #000;
              font-weight: 400; }
              .bomHeader .bottomHeader .headerRight ul.menu li:hover ul.sub-menu li a:hover {
                color: #aa2328; }
@media screen and (max-width: 991px) {
  .bomHeader .bottomHeader {
    padding: 15px 0; }
  .bomHeader .bottomHeader .headerRight ul {
    display: none !important; }
  .bomHeader .bottomHeader .headerRight p {
    display: none !important; } }

.page-template-page-home .bomHeader .topHeader {
  background: #aa2328; }

.logo {
  display: inline-block; }

.logo img, .logo svg {
  width: 190px;
  -o-transition: .5s;
  -ms-transition: .5s;
  -moz-transition: .5s;
  -webkit-transition: .5s; }

.headerSpacing {
  margin: 114px 0 0; }

/* MENU LINK */
.menuLink {
  position: fixed;
  cursor: pointer;
  right: 4vw;
  background: transparent;
  top: 25px;
  z-index: 99999999;
  padding: 0;
  width: 30px;
  height: 30px;
  display: none;
  -o-transition: .5s;
  -ms-transition: .5s;
  -moz-transition: .5s;
  -webkit-transition: .5s; }

/*.menuLink.headerScroll {
    top: 15px;
}*/
.menuLink span {
  position: absolute;
  left: 0;
  width: 30px;
  height: 3px;
  background-color: #002c72;
  top: 12px;
  border-radius: 0px;
  -o-transition: .5s;
  -ms-transition: .5s;
  -moz-transition: .5s;
  -webkit-transition: .5s; }

.menuLink span::before {
  content: '';
  position: absolute;
  left: 0;
  width: 30px;
  height: 3px;
  background-color: #002c72;
  top: -10px;
  border-radius: 0px;
  -o-transition: .5s;
  -ms-transition: .5s;
  -moz-transition: .5s;
  -webkit-transition: .5s; }

.menuLink span::after {
  content: '';
  position: absolute;
  left: 0;
  width: 30px;
  height: 3px;
  background-color: #002c72;
  top: 10px;
  border-radius: 0px;
  -o-transition: .5s;
  -ms-transition: .5s;
  -moz-transition: .5s;
  -webkit-transition: .5s; }

/* MENU POP OUT */
.fullMenu {
  position: fixed;
  top: 0;
  right: calc(100% + 1px);
  width: 100%;
  height: 100vh;
  z-index: 9999999;
  background-color: transparent;
  overflow: hidden;
  padding: 0;
  transition: .8s ease-in-out;
  justify-content: center;
  align-items: center;
  display: flex; }

.fullMenu.fullmenuOpen {
  display: flex; }

.menuOpenStopScroll {
  overflow: hidden; }

.menuBackground {
  background: #002c72;
  position: absolute;
  left: 0px;
  top: 0;
  bottom: 0;
  width: 100%; }

.menuLink.menuLinkOpen span {
  width: 30px;
  top: 12px;
  left: 0;
  background-color: #fff;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg); }

.menuLink.menuLinkOpen span:before {
  opacity: 0;
  background-color: #fff; }

.menuLink.menuLinkOpen span:after {
  top: 0px;
  background-color: #fff;
  -webkit-transform: rotate(-90deg);
  -ms-transform: rotate(-90deg);
  transform: rotate(-90deg); }

.fullMenu.fullmenuOpen {
  right: 0; }

.menuWrapper {
  width: 100%;
  height: 100%;
  position: relative; }

.menuContainer {
  position: absolute;
  top: 50%;
  left: 7%;
  transform: translateY(-50%); }

.menuContainer ul {
  text-align: left;
  list-style: none;
  margin: 0;
  padding: 0;
  display: block;
  height: auto;
  align-items: center; }

.menuContainer ul li {
  padding: 0 10px; }

.menuContainer ul li a, .menuContainer ul li a:focus, .menuContainer ul li a:visited {
  line-height: 1.2;
  font-size: 6vw;
  font-weight: 400;
  color: #fff;
  text-decoration: none;
  position: relative;
  text-transform: uppercase;
  overflow: hidden;
  display: inline-block;
  padding: 6px;
  user-select: none;
  cursor: pointer;
  -o-transition: .5s;
  -ms-transition: .5s;
  -moz-transition: .5s;
  -webkit-transition: .5s; }

.menuContainer ul li a:after {
  content: '';
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: -101%;
  width: 100%;
  background: #aa2328;
  z-index: -1;
  -o-transition: .5s;
  -ms-transition: .5s;
  -moz-transition: .5s;
  -webkit-transition: .5s; }

.menuContainer ul li a:hover {
  text-decoration: none; }

.menuContainer ul li a:hover:after {
  left: 0; }

.menuContainer ul li a i {
  font-size: 1.6vw; }

.menuContainer ul.sub-menu {
  display: none; }

.menuContainer li:hover ul.sub-menu {
  display: flex; }

.menuContainer ul.sub-menu li a, .menuContainer ul.sub-menu li a:focus, .menuContainer ul.sub-menu li a:visited {
  font-size: 1.8vw;
  padding: 0.6vw 1.2vw; }

@media screen and (max-width: 991px) {
  .bottomHeader {
    padding: 15px 0; }

  .bottomHeader .headerRight ul {
    display: none !important; }

  .bottomHeader .headerRight p {
    display: none !important; }

  .menuContainer li:hover ul.sub-menu {
    display: block;
    margin: 0 0 10px; }

  .menuContainer ul.sub-menu li a, .menuContainer ul.sub-menu li a:focus, .menuContainer ul.sub-menu li a:visited {
    font-size: 4vw;
    padding: 6px;
    margin: 5px 0; }

  .menuContainer ul li a i {
    font-size: 5vw;
    padding: 0 0 0 10px; }

  .menuLink {
    display: inline-block; } }
/* CSS Document */
/* FOOTER */
.bomFooter {
  background: white;
  position: relative;
  color: #002c72;
  padding: 60px; }

.bomFooter::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  height: 12px;
  width: 100%;
  background: #aa2328; }

.bomFooter::after {
  content: "";
  position: absolute;
  top: -12px;
  left: 0;
  height: 12px;
  width: 100%;
  background: #002c72; }

.bomFooter p {
  color: #002c72;
  font-size: clamp(18px, 1.3vw, 22px);
  line-height: 1.4;
  font-weight: 400;
  text-transform: capitalize;
  margin-bottom: 0; }

.bomFooter p a, .bomFooter p a:focus, .bomFooter p a:visited {
  color: #002c72; }

.bomFooter h6 {
  margin-bottom: 0;
  font-size: clamp(18px, 1.3vw, 22px);
  color: #002c72;
  line-height: 1.4;
  font-weight: 700;
  text-transform: uppercase; }

.bomFooter .footerContainer {
  display: flex;
  justify-content: space-between; }

.bomFooter .footerContainer .leftContainer {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 1rem; }

.bomFooter .footerContainer .leftContainer .footerLogo img {
  width: 176px; }

.bomFooter .footerContainer .leftContainer div {
  display: flex;
  justify-content: space-between;
  gap: 1rem; }

.bomFooter .footerContainer .leftContainer div p a {
  color: #000;
  text-transform: capitalize; }

.bomFooter .footerContainer .leftContainer div p {
  text-transform: uppercase;
  font-family: "Barlow Condensed", sans-serif;
  color: #000; }

.bomFooter .footerContainer .contactDetailContainer {
  display: flex; }

.footerContact {
  list-style: none;
  margin: 0;
  padding: 0 50px 0 0;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: 100%; }

.footerContact li {
  padding: 4px 0;
  font-size: clamp(18px, 1.3vw, 22px);
  font-family: "Barlow Condensed", sans-serif;
  color: #002c72;
  line-height: 1.4; }

.footerContact li a, .footerContact li a:focus, .footerContact li a:visited {
  color: #002c72; }

.footerContact li a svg {
  margin-bottom: 3px;
  margin-right: 10px; }

.addressContainer {
  font-family: "Barlow Condensed", sans-serif; }

.footerColEnd p {
  margin: 10px 0 0; }

.footerLogo img {
  width: 280px; }

@media screen and (max-width: 991px) {
  .bomFooter .footerContainer {
    flex-direction: column;
    gap: 1rem; }

  .bomFooter {
    padding: 5vw;
    padding-top: 10vw; }

  .bomFooter .footerContainer .leftContainer div {
    flex-direction: column;
    gap: 0; }

  .footerLogo img {
    width: 220px;
    margin: 0; }

  .bomFooter .footerContainer .contactDetailContainer {
    flex-direction: column; } }
/* CSS Document */
/* NEWS */
.blogPage {
  padding: 6vw 2.5rem;
  text-align: left; }

.blogPage article {
  scroll-margin-top: 100px;
  padding: 5rem 6.5rem;
  margin: 2.25rem auto;
  background-color: #F1F1F1;
  border-left: 20px solid #002c72;
  max-width: 1700px; }

.blogPage img {
  margin: 30px 0; }

.blogPage p a, .blogPage p a:focus, .blogPage p a:visited {
  color: #aa2328;
  text-decoration: none; }

.blogPage p a:hover {
  color: #002c72;
  text-decoration: none; }

.blogPage p {
  font-family: 'Montserrat', sans-serif !important;
  margin: 0 auto 15px;
  padding: 0 !important; }

.blogPage p.date {
  color: #002c72;
  margin: 0 0 10px;
  font-size: 16px;
  padding: 0 !important; }

.blogPage h1 {
  color: #002c72;
  margin: 0;
  font-weight: 500;
  font-size: clamp(36px, 3.5vw, 56px);
  text-transform: uppercase; }

.blogPage h2 {
  color: #002c72;
  margin: 2vw 0 1vw;
  font-weight: 600;
  font-size: clamp(28px, 2.6vw, 40px);
  max-width: 1000px; }

.blogPage h3 {
  color: #002c72;
  margin: 2vw 0 1vw;
  font-weight: 600;
  font-size: clamp(26px, 2.4vw, 36px);
  max-width: 1000px; }

.blogPage h4 {
  color: #002c72;
  margin: 2vw 0 1vw;
  font-weight: 600;
  font-size: clamp(24px, 2.2vw, 32px);
  max-width: 1000px; }

.blogPage h5 {
  color: #002c72;
  margin: 2vw 0 1vw;
  font-weight: 600;
  font-size: clamp(22px, 2vw, 30px);
  max-width: 1000px; }

.blogPage h6 {
  color: #002c72;
  margin: 2vw 0 1vw;
  font-weight: 600;
  font-size: clamp(20px, 1.6vw, 26px);
  max-width: 1000px; }

@media screen and (max-width: 991px) {
  .blogPage article {
    padding: 5rem 1.5rem; } }
/* CSS Document */
/*text image*/
.textImageSectionWrap {
  position: relative; }
  .textImageSectionWrap .brandingWrap {
    position: absolute;
    user-select: none;
    pointer-events: none;
    z-index: 1;
    max-width: 100%;
    overflow: hidden; }
  .textImageSectionWrap.brandingTop .brandingWrap {
    top: 0;
    left: 0; }
  .textImageSectionWrap.brandingMiddle .brandingWrap {
    top: 50%;
    left: 0;
    transform: translateY(-50%); }
  .textImageSectionWrap.brandingBottom .brandingWrap {
    bottom: -100px;
    left: 0; }

.textImageSection {
  display: flex;
  align-items: center;
  position: relative;
  z-index: 2; }
  .textImageSection.mediaRight {
    flex-direction: row-reverse; }
    .textImageSection.mediaRight .textContainer {
      padding: 0 5vw 0 7vw; }

.textImageSection .textContainer {
  padding: 0 5vw;
  flex: -1 0 50%; }

.textImageSection .imageContainer {
  flex: 0 0 50%;
  position: relative;
  z-index: 1; }

.textImageSection .imageContainer img {
  height: 100%;
  width: 100%;
  object-fit: cover; }

.textImageSection .textContainer p {
  color: #000;
  /*  font-size: 16px;*/
  /*line-height: 2;*/
  font-weight: 400;
  margin: 30px 0; }

.textImageSection .textContainer h2 {
  color: #002c72;
  /*  font-size: 80px;*/
  line-height: 1;
  font-weight: 500; }

.textImageSection.blueBG {
  background: #002c72; }

.textImageSection::before {
  content: none; }

.textImageSection::after {
  content: none; }

.textImageSection.blueBG .textContainer p {
  color: #fff; }

.textImageSection.blueBG .textContainer h2 {
  color: #fff; }

@media screen and (max-width: 991px) {
  .textImageSection {
    flex-direction: column;
    gap: 2.5rem; }
    .textImageSection.mediaRight {
      flex-direction: column; }

  .textImageSection::before {
    width: 6vw; }

  .textImageSection::after {
    left: 6vw;
    width: 2vw; }

  .textImageSection .imageContainer {
    width: 100%; }

  .textImageSection .textContainer {
    padding: 0;
    width: 100%; }

  .brandingWrap {
    opacity: 0.2; } }
@media screen and (min-width: 992px) and (max-width: 1200px) {
  .textImageSection {
    gap: 1.5rem;
    align-items: flex-start; }

  .textImageSection::before {
    width: 10vw; }

  .textImageSection::after {
    left: 10vw; }

  .textImageSection .textContainer {
    padding-right: 0vw; } }
@media screen and (max-width: 1200px) {
  .textImageSection .textContainer {
    padding: 0; }
  .textImageSection.mediaRight .textContainer {
    padding: 0; } }
/* CSS Document */
.caseStudiesHalfWrap {
  display: flex; }
  .caseStudiesHalfWrap .caseStudyContainer {
    flex: 0 0 50%;
    position: relative; }
    .caseStudiesHalfWrap .caseStudyContainer img {
      width: 100%;
      height: 100%;
      object-fit: cover; }
    .caseStudiesHalfWrap .caseStudyContainer .textContainer {
      position: absolute;
      bottom: 50px;
      left: 50px;
      z-index: 3; }
      .caseStudiesHalfWrap .caseStudyContainer .textContainer h1, .caseStudiesHalfWrap .caseStudyContainer .textContainer h2, .caseStudiesHalfWrap .caseStudyContainer .textContainer h3, .caseStudiesHalfWrap .caseStudyContainer .textContainer h4, .caseStudiesHalfWrap .caseStudyContainer .textContainer p {
        color: #fff; }
      .caseStudiesHalfWrap .caseStudyContainer .textContainer h1, .caseStudiesHalfWrap .caseStudyContainer .textContainer h2, .caseStudiesHalfWrap .caseStudyContainer .textContainer h3, .caseStudiesHalfWrap .caseStudyContainer .textContainer h4 {
        font-weight: 600;
        margin-bottom: 20px; }
    .caseStudiesHalfWrap .caseStudyContainer::before {
      content: "";
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      z-index: 2;
      background: linear-gradient(180deg, rgba(0, 0, 0, 0) 55%, rgba(0, 0, 0, 0.61) 95%); }
  @media screen and (max-width: 991px) {
    .caseStudiesHalfWrap {
      flex-direction: column; }
      .caseStudiesHalfWrap .caseStudyContainer .textContainer {
        left: 25px; } }

/* CSS Document */
.caseStudyFullWrap {
  position: relative;
  overflow: hidden;
  height: 100dvh; }
  .caseStudyFullWrap img {
    width: 100%;
    height: 100%;
    object-fit: cover; }
  .caseStudyFullWrap .textContainer {
    position: absolute;
    top: 65px;
    left: 0;
    background-color: #002c72;
    padding: 50px 3vw;
    border-top-right-radius: 30px;
    width: 30%; }
    .caseStudyFullWrap .textContainer .kicker {
      text-transform: uppercase;
      font-size: clamp(18px, 1.3vw, 22px);
      font-family: "Barlow Condensed", sans-serif;
      font-weight: 500; }
    .caseStudyFullWrap .textContainer h2, .caseStudyFullWrap .textContainer h3, .caseStudyFullWrap .textContainer p {
      color: white; }
    .caseStudyFullWrap .textContainer h2, .caseStudyFullWrap .textContainer h3 {
      font-weight: 500;
      font-size: clamp(30px, 2vw, 35px);
      margin-bottom: 20px;
      text-transform: uppercase; }
    .caseStudyFullWrap .textContainer.introRight {
      right: 0;
      left: auto;
      border-top-right-radius: 0;
      border-top-left-radius: 30px; }
    .caseStudyFullWrap .textContainer.redBG {
      background-color: #aa2328; }
  @media screen and (max-width: 991px) {
    .caseStudyFullWrap {
      height: auto; }
      .caseStudyFullWrap .imageContainer {
        height: 60dvh; }
      .caseStudyFullWrap .textContainer {
        position: relative;
        top: auto;
        left: auto;
        padding: 25px;
        width: auto;
        border-radius: 0;
        min-width: auto; }
        .caseStudyFullWrap .textContainer.introRight {
          border-radius: 0;
          right: auto;
          left: auto; } }

/* CSS Document */
.fullWidthMediaWrap {
  overflow: hidden;
  position: relative;
  height: 80dvh; }
  .fullWidthMediaWrap img {
    width: 100%;
    height: 100%;
    object-fit: cover; }
  .fullWidthMediaWrap .textContainer {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 3;
    width: 100%; }
    .fullWidthMediaWrap .textContainer h1, .fullWidthMediaWrap .textContainer h2, .fullWidthMediaWrap .textContainer h3, .fullWidthMediaWrap .textContainer h4, .fullWidthMediaWrap .textContainer p {
      color: #fff;
      font-family: "Barlow Condensed", sans-serif; }
    .fullWidthMediaWrap .textContainer h1, .fullWidthMediaWrap .textContainer h2, .fullWidthMediaWrap .textContainer h3, .fullWidthMediaWrap .textContainer h4 {
      font-size: clamp(65px, 5.3vw, 65px);
      width: 50%; }
    .fullWidthMediaWrap .textContainer p {
      font-size: clamp(25px, 2.4vw, 30px);
      margin: 50px 0;
      width: 40%; }
  .fullWidthMediaWrap.overlay::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 2;
    background: linear-gradient(270deg, rgba(0, 44, 114, 0) 0%, rgba(0, 44, 114, 0.84) 92%); }
  @media screen and (max-width: 991px) {
    .fullWidthMediaWrap .textContainer h1, .fullWidthMediaWrap .textContainer h2, .fullWidthMediaWrap .textContainer h3, .fullWidthMediaWrap .textContainer h4, .fullWidthMediaWrap .textContainer p {
      width: 100%; } }

/* CSS Document */
.ctaWrap {
  position: relative;
  overflow: hidden; }
  .ctaWrap .bgarrow {
    position: absolute;
    top: 0;
    left: 5vw;
    height: 100%; }
  .ctaWrap .ctaContainer {
    display: flex;
    justify-content: space-between; }
    .ctaWrap .ctaContainer .textContainer {
      padding: 0 5vw 0 6vw; }
      .ctaWrap .ctaContainer .textContainer h2, .ctaWrap .ctaContainer .textContainer p {
        color: white; }
      .ctaWrap .ctaContainer .textContainer h2 {
        margin-bottom: 30px; }
    .ctaWrap .ctaContainer .ctaSection {
      display: flex; }
      .ctaWrap .ctaContainer .ctaSection .ctaItem {
        position: relative;
        margin-right: 20px;
        overflow: hidden;
        min-width: 200px; }
        .ctaWrap .ctaContainer .ctaSection .ctaItem:last-child {
          margin-right: 0; }
        .ctaWrap .ctaContainer .ctaSection .ctaItem img {
          height: 100%;
          width: 100%;
          object-fit: cover;
          transition: 0.4s; }
        .ctaWrap .ctaContainer .ctaSection .ctaItem h2, .ctaWrap .ctaContainer .ctaSection .ctaItem h3, .ctaWrap .ctaContainer .ctaSection .ctaItem p {
          position: absolute;
          bottom: 0;
          left: 1vw;
          font-family: "Barlow Condensed", sans-serif;
          font-size: 18px;
          font-weight: 600;
          text-transform: uppercase;
          color: #fff;
          z-index: 3;
          width: 80%;
          display: flex;
          justify-content: space-between; }
        .ctaWrap .ctaContainer .ctaSection .ctaItem::before {
          content: "";
          position: absolute;
          top: 0;
          left: 0;
          width: 100%;
          height: 100%;
          z-index: 2;
          background: linear-gradient(180deg, rgba(0, 0, 0, 0) 60%, rgba(0, 0, 0, 0.61) 92%); }
        .ctaWrap .ctaContainer .ctaSection .ctaItem:hover img {
          transform: scale(1.02); }
  @media screen and (max-width: 991px) {
    .ctaWrap .ctaContainer {
      flex-direction: column; }
      .ctaWrap .ctaContainer .textContainer {
        padding: 0; }
      .ctaWrap .ctaContainer .ctaSection {
        flex-direction: column;
        margin-top: 60px;
        row-gap: 30px; }
        .ctaWrap .ctaContainer .ctaSection .ctaItem {
          width: 100%; }
          .ctaWrap .ctaContainer .ctaSection .ctaItem h2, .ctaWrap .ctaContainer .ctaSection .ctaItem h3, .ctaWrap .ctaContainer .ctaSection .ctaItem p {
            left: 25px;
            font-size: 40px;
            width: 85%; }
            .ctaWrap .ctaContainer .ctaSection .ctaItem h2 svg, .ctaWrap .ctaContainer .ctaSection .ctaItem h3 svg, .ctaWrap .ctaContainer .ctaSection .ctaItem p svg {
              height: 30px;
              width: auto; } }

/* CSS Document */
.contactCTAWrap {
  position: relative;
  overflow: hidden;
  text-align: center; }
  .contactCTAWrap .bgarrowLeft {
    position: absolute;
    top: 0;
    left: -30px;
    height: 100%; }
    .contactCTAWrap .bgarrowLeft svg {
      height: 100%;
      width: 24vw; }
  .contactCTAWrap .bgarrowRight {
    position: absolute;
    top: 0;
    right: -30px;
    height: 100%; }
    .contactCTAWrap .bgarrowRight svg {
      height: 100%;
      width: 24vw; }
  .contactCTAWrap .textContainer h2 {
    margin-bottom: 30px; }
  .contactCTAWrap.redBG .textContainer h2 {
    color: #fff; }
  @media screen and (max-width: 430px) {
    .contactCTAWrap .bgarrowLeft svg, .contactCTAWrap .bgarrowRight svg {
      width: 180px;
      opacity: 0.2; }
    .contactCTAWrap.redBG .bgarrowLeft svg, .contactCTAWrap.redBG .bgarrowRight svg {
      opacity: 1; } }

/* CSS Document */
.bannerWrap {
  position: relative;
  overflow: hidden; }
  .bannerWrap .arrowBox {
    position: absolute;
    right: 0;
    top: 0;
    height: 100%; }
    .bannerWrap .arrowBox svg {
      height: 100%;
      width: auto; }
  .bannerWrap .textContainer {
    width: 50%; }
    .bannerWrap .textContainer h1, .bannerWrap .textContainer h2, .bannerWrap .textContainer p {
      color: #fff; }
    .bannerWrap .textContainer h1, .bannerWrap .textContainer h2 {
      margin-bottom: 30px;
      font-size: clamp(40px, 4.5vw, 55px); }
    .bannerWrap .textContainer p {
      font-size: clamp(20px, 1.5vw, 25px); }
  .bannerWrap.redBG .textContainer h1, .bannerWrap.redBG .textContainer h2, .bannerWrap.redBG .textContainer p {
    color: #fff; }
  .bannerWrap.blueBG .textContainer h1, .bannerWrap.blueBG .textContainer h2, .bannerWrap.blueBG .textContainer p {
    color: #fff; }
  .bannerWrap.whiteBG .arrowBox svg path {
    fill: #002c72; }
  .bannerWrap.whiteBG .textContainer h1, .bannerWrap.whiteBG .textContainer h2, .bannerWrap.whiteBG .textContainer h3 {
    color: #002c72; }
  .bannerWrap.whiteBG .textContainer p {
    color: #000; }
  @media screen and (max-width: 991px) {
    .bannerWrap .container {
      margin: 0; }
    .bannerWrap .arrowBox svg {
      height: 500px;
      width: 100%;
      opacity: 0.2; }
    .bannerWrap .textContainer {
      width: 100%; } }

/* CSS Document */
.gridWrap {
  position: relative;
  overflow: hidden; }
  .gridWrap h2 {
    margin-bottom: 50px;
    text-align: center; }
  .gridWrap .gridContainer {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    grid-gap: 20px 30px;
    padding: 0 12vw; }
    .gridWrap .gridContainer .item {
      background-color: #aa2328;
      border-top-right-radius: 30px;
      padding: 30px; }
      .gridWrap .gridContainer .item h3, .gridWrap .gridContainer .item p {
        color: #fff; }
      .gridWrap .gridContainer .item h3 {
        margin-bottom: 20px;
        font-weight: 600; }
      .gridWrap .gridContainer .item.blueBG {
        background-color: #002c72; }
      .gridWrap .gridContainer .item.whiteBG {
        background-color: #fff; }
        .gridWrap .gridContainer .item.whiteBG h3, .gridWrap .gridContainer .item.whiteBG p {
          color: #002c72; }
  @media screen and (max-width: 991px) {
    .gridWrap .gridContainer {
      grid-template-columns: 1fr 1fr; } }
  @media screen and (max-width: 768px) {
    .gridWrap .gridContainer {
      grid-template-columns: 1fr; } }
  @media screen and (max-width: 1200px) {
    .gridWrap .gridContainer {
      padding: 0; } }

/* CSS Document */
.stepsWrap {
  position: relative;
  overflow: hidden; }
  .stepsWrap .arrowBox {
    position: absolute;
    left: 65px;
    top: 0;
    height: 100%; }
    .stepsWrap .arrowBox svg {
      height: 100%;
      width: auto; }
  .stepsWrap .stepsContainer {
    display: flex;
    justify-content: space-between; }
    .stepsWrap .stepsContainer .textContainer {
      flex: 0 0 35%;
      padding: 0 5vw 0 0; }
      .stepsWrap .stepsContainer .textContainer h2, .stepsWrap .stepsContainer .textContainer p {
        color: #fff; }
      .stepsWrap .stepsContainer .textContainer h2 {
        margin-bottom: 30px; }
      .stepsWrap .stepsContainer .textContainer p {
        margin-bottom: 30px; }
    .stepsWrap .stepsContainer .steps {
      flex: 1 0 40%;
      display: grid;
      grid-template-columns: 1fr 1fr 1fr;
      grid-gap: 30px 20px; }
      .stepsWrap .stepsContainer .steps .item {
        background: #fff;
        border-bottom-right-radius: 30px; }
        .stepsWrap .stepsContainer .steps .item .cardHeader {
          padding: 10px;
          text-align: center;
          background: linear-gradient(260deg, #002c72 35%, rgba(255, 255, 255, 0.98) 99%); }
          .stepsWrap .stepsContainer .steps .item .cardHeader p {
            color: #fff;
            font-size: clamp(18px, 1.3vw, 22px);
            text-transform: uppercase;
            font-weight: 500;
            margin: 0; }
        .stepsWrap .stepsContainer .steps .item .content {
          text-align: center;
          padding: 20px; }
          .stepsWrap .stepsContainer .steps .item .content .icon svg {
            height: 110px;
            width: auto;
            max-width: 150px; }
          .stepsWrap .stepsContainer .steps .item .content h3 {
            text-transform: uppercase;
            font-weight: 600;
            font-size: clamp(18px, 1.3vw, 22px); }
          .stepsWrap .stepsContainer .steps .item .content p {
            margin: 20px 0 0; }
  .stepsWrap.whiteBG .arrowBox svg path {
    fill: #002c72; }
  .stepsWrap.whiteBG .stepsContainer .textContainer h2, .stepsWrap.whiteBG .stepsContainer .textContainer h3, .stepsWrap.whiteBG .stepsContainer .textContainer p {
    color: #002c72; }
  @media screen and (max-width: 991px) {
    .stepsWrap .stepsContainer {
      flex-direction: column; }
      .stepsWrap .stepsContainer .textContainer {
        padding: 0; }
      .stepsWrap .stepsContainer .steps {
        margin-top: 50px;
        grid-template-columns: 1fr; } }

/* CSS Document */
.quoteWrap .quoteContainer {
  padding: 0 12vw;
  overflow: hidden;
  border-top-right-radius: 30px;
  display: flex;
  justify-content: space-between; }
  .quoteWrap .quoteContainer .textContainer {
    background-color: #002c72;
    position: relative;
    padding: 50px;
    flex: 1 0 60%; }
    .quoteWrap .quoteContainer .textContainer .arrowBox {
      position: absolute;
      right: -200px;
      top: 0;
      height: 100%; }
      .quoteWrap .quoteContainer .textContainer .arrowBox svg {
        height: 100%; }
    .quoteWrap .quoteContainer .textContainer p {
      color: #fff; }
    .quoteWrap .quoteContainer .textContainer .quote {
      font-family: "Barlow Condensed", sans-serif;
      font-size: clamp(18px, 1.3vw, 22px);
      margin: 50px 0; }
    .quoteWrap .quoteContainer .textContainer .author {
      font-weight: 600; }
    .quoteWrap .quoteContainer .textContainer .role, .quoteWrap .quoteContainer .textContainer .author {
      font-size: 14px; }
    .quoteWrap .quoteContainer .textContainer.redBG {
      background-color: #aa2328; }
      .quoteWrap .quoteContainer .textContainer.redBG .quoteMark svg path {
        fill: #fff; }
  .quoteWrap .quoteContainer .imageContainer {
    flex: 0 0 40%;
    border-top-right-radius: 30px;
    overflow: hidden; }
    .quoteWrap .quoteContainer .imageContainer img {
      height: 100%;
      object-fit: cover; }
@media screen and (max-width: 991px) {
  .quoteWrap .quoteContainer {
    padding: 0;
    flex-direction: column-reverse;
    border-top-right-radius: 0;
    border-bottom-left-radius: 30px; }
    .quoteWrap .quoteContainer .imageContainer img {
      width: 100%; }
    .quoteWrap .quoteContainer .textContainer {
      padding: 25px; } }

/* CSS Document */
/* GRID */
.fullWidthGrid {
  position: relative;
  overflow: hidden;
  width: 100%; }
  .fullWidthGrid h2 {
    text-align: center;
    margin-bottom: 50px; }

.fullWidthGrid .fullWidthRow {
  display: flex; }

.fullWidthGrid .fullWidthRow .fwItem {
  height: 70vh;
  width: 25%;
  position: relative;
  background-position: center;
  background-size: cover;
  -o-transition: .5s;
  -ms-transition: .5s;
  -moz-transition: .5s;
  -webkit-transition: .5s; }

.fullWidthGrid .fullWidthRow .fwItem:hover {
  width: 60vw; }

.fullWidthGrid .fullWidthRow .fwItem a, .fullWidthGrid .fullWidthRow .fwItem .itemText {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 20%, rgba(0, 0, 0, 0.7) 100%);
  text-decoration: none;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 0; }

.fullWidthGrid .fullWidthRow .fwItem a p, .fullWidthGrid .fullWidthRow .fwItem .itemText p {
  position: absolute;
  bottom: 0;
  left: 2vw;
  transform-origin: center left;
  transform: rotate(-90deg);
  text-transform: uppercase;
  font-size: 1.7vw;
  color: #fff;
  font-weight: 600;
  margin: 0;
  line-height: 1;
  white-space: nowrap; }

.fullWidthGrid .fullWidthRow .fwItem a img, .fullWidthGrid .fullWidthRow .fwItem .itemText img {
  position: absolute;
  bottom: 0;
  left: 2vw;
  transform-origin: center left;
  transform: rotate(-90deg);
  margin: 0;
  width: 15vw; }

@media screen and (max-width: 991px) {
  .fullWidthGrid .fullWidthRow {
    display: block; }

  .fullWidthGrid .fullWidthRow .fwItem {
    height: 35vw;
    width: 100%; }

  .fullWidthGrid .fullWidthRow .fwItem:hover {
    width: 100%;
    height: 60vw; }

  .fullWidthGrid .fullWidthRow .fwItem a p, .fullWidthGrid .fullWidthRow .fwItem .itemText p {
    bottom: 20px;
    left: 20px;
    transform-origin: center left;
    transform: rotate(0deg);
    font-size: 6vw;
    white-space: normal; } }
@media screen and (max-width: 768px) {
  .fullWidthGrid .fullWidthRow .fwItem {
    height: 45vw; }

  .fullWidthGrid .fullWidthRow .fwItem:hover {
    height: 70vw; } }
/* CSS Document */
.contactFormWrap {
  overflow: hidden;
  position: relative; }
  .contactFormWrap .bgarrowLeft {
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    opacity: 0.2;
    z-index: 1; }
    .contactFormWrap .bgarrowLeft svg {
      height: 100%;
      width: 24vw; }
  .contactFormWrap .bgarrowRight {
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    opacity: 0.2;
    z-index: 1; }
    .contactFormWrap .bgarrowRight svg {
      height: 100%;
      width: 24vw;
      transform: rotate(180deg); }
  .contactFormWrap .gform_wrapper {
    width: 60%;
    margin: 0 auto;
    z-index: 2; }
    .contactFormWrap .gform_wrapper h1 {
      margin-bottom: 30px; }
    .contactFormWrap .gform_wrapper h1, .contactFormWrap .gform_wrapper p {
      text-align: center; }
    .contactFormWrap .gform_wrapper #gform_submit_button_1 {
      font-family: "Barlow Condensed", sans-serif;
      padding: 15px 28px;
      border-radius: 5px;
      display: inline-flex;
      align-items: center;
      line-height: 1;
      cursor: pointer;
      font-size: 16px;
      overflow: hidden;
      background: #002c72;
      color: #fff;
      border-radius: 10px; }
  @media screen and (max-width: 991px) {
    .contactFormWrap .bgarrowLeft svg {
      width: auto; }
    .contactFormWrap .bgarrowRight {
      display: none; }
    .contactFormWrap .gform_wrapper {
      width: 90%; } }
