/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent; }

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0; }
  .slick-list:focus {
    outline: none; }
  .slick-list.dragging {
    cursor: pointer;
    cursor: hand; }

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0); }

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto; }
  .slick-track:before, .slick-track:after {
    content: "";
    display: table; }
  .slick-track:after {
    clear: both; }
  .slick-loading .slick-track {
    visibility: hidden; }

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none; }
  [dir="rtl"] .slick-slide {
    float: right; }
  .slick-slide img {
    display: block; }
  .slick-slide.slick-loading img {
    display: none; }
  .slick-slide.dragging img {
    pointer-events: none; }
  .slick-initialized .slick-slide {
    display: block; }
  .slick-loading .slick-slide {
    visibility: hidden; }
  .slick-vertical .slick-slide {
    display: block;
    height: auto;
    border: 1px solid transparent; }

.slick-arrow.slick-hidden {
  display: none; }

body {
  font-family: neue-haas-grotesk-text, sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: calc(16px + (20 - 16) * (100vw - 320px) / (1440 - 320)); }
  @media (min-width: 1320px) {
    body {
      font-size: 20px; } }

h1 {
  font-size: calc(20px + (32 - 20) * (100vw - 320px) / (1440 - 320)); }

h2, .h2 {
  font-size: calc(20px + (32 - 20) * (100vw - 320px) / (1440 - 320)); }

h3, .h3 {
  font-size: 5.33333vw;
  text-transform: uppercase;
  line-height: 1.1;
  font-weight: 600; }
  @media (min-width: 768px) {
    h3, .h3 {
      font-size: 2.34375vw; } }

p {
  line-height: 1.7;
  font-size: calc(14px + (16 - 14) * (100vw - 320px) / (1440 - 320)); }

strong {
  font-weight: 600; }

.caps-header {
  font-size: 8vw;
  text-transform: uppercase;
  line-height: 1.1;
  font-weight: 700; }
  @media (min-width: 768px) {
    .caps-header {
      font-size: 3.125vw; } }

.text-navy {
  color: #071f40; }

.text-light-blue {
  color: #959fad; }

.text-blue {
  color: #064895; }

.aligncenter {
  text-align: center; }

a:hover, a:active {
  outline: none;
  text-decoration: none; }

body {
  -webkit-font-smoothing: antialiased; }

a {
  -webkit-transition: color .3s ease;
  -moz-transition: color .3s ease;
  -o-transition: color .3s ease;
  transition: color .3s ease; }
  a:hover, a:active, a:focus {
    text-decoration: none; }

.nopad {
  padding: 0 !important; }

.nomargin {
  margin: 0; }

.post, .page {
  margin: 0; }

.button {
  background: #a03f2b;
  line-height: 1;
  padding: 0.93333vw 1.6vw;
  border-radius: 1.06667vw;
  color: #FFF;
  -moz-transition: background-color 0.5s ease;
  -o-transition: background-color 0.5s ease;
  -webkit-transition: background-color 0.5s ease;
  transition: background-color 0.5s ease; }
  @media (min-width: 768px) {
    .button {
      padding: 0.36458vw 0.625vw;
      border-radius: 0.41667vw; } }
  .button:hover {
    background: #064895;
    color: #FFF; }

.blockpadding {
  padding: 5.33333vw; }
  @media (min-width: 768px) {
    .blockpadding {
      padding: 3.90625vw; } }
  @media (min-width: 992px) {
    .blockpadding {
      padding: 5.72917vw; } }
  @media (min-width: 1320px) {
    .blockpadding {
      padding: 5.20833vw; } }

.desktop-only {
  display: none !important; }
  @media (min-width: 576px) {
    .desktop-only {
      display: inline-block !important; } }

@media (min-width: 576px) {
  .mobile-only {
    display: none !important; } }

.flex {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex; }

.flex-center {
  -webkit-align-items: center;
  -moz-align-items: center;
  -ms-align-items: center;
  align-items: center; }

.flex-justify-center {
  -webkit-justify-content: center;
  -moz-justify-content: center;
  -ms-justify-content: center;
  justify-content: center;
  -ms-flex-pack: center; }

.fg-1 {
  -webkit-flex-grow: 1;
  -moz-flex-grow: 1;
  -ms-flex-grow: 1;
  flex-grow: 1; }

.fg-2 {
  -webkit-flex-grow: 2;
  -moz-flex-grow: 2;
  -ms-flex-grow: 2;
  flex-grow: 2; }

.fg-3 {
  -webkit-flex-grow: 3;
  -moz-flex-grow: 3;
  -ms-flex-grow: 3;
  flex-grow: 3; }

.fg-4 {
  -webkit-flex-grow: 1;
  -moz-flex-grow: 1;
  -ms-flex-grow: 1;
  flex-grow: 1; }
  @media (min-width: 576px) {
    .fg-4 {
      -webkit-flex-grow: 4;
      -moz-flex-grow: 4;
      -ms-flex-grow: 4;
      flex-grow: 4; } }

.bg-blue {
  background: #064895; }

.bg-navy {
  background: #071f40; }

.bg-red {
  background: #a03f2b; }

.bg-gray {
  background: #b9b9b9; }

.videoWrapper {
  position: relative;
  padding-bottom: 56.25%;
  overflow: hidden;
  max-width: 100%;
  height: auto; }
  .videoWrapper iframe, .videoWrapper object, .videoWrapper embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }

header#masthead {
  position: fixed;
  left: 0;
  top: 0;
  right: 0;
  padding: 2.60417vw;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  z-index: 10; }
  header#masthead #site-navigation {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    -moz-justify-content: space-between;
    -ms-justify-content: space-between;
    justify-content: space-between;
    -ms-flex-pack: space-between; }
  header#masthead .button {
    font-family: "mr-eaves-modern", sans-serif;
    font-weight: 700;
    font-style: normal;
    letter-spacing: 0.26667vw;
    text-transform: uppercase;
    font-size: 2.4vw;
    line-height: 1; }
    @media (min-width: 768px) {
      header#masthead .button {
        font-size: 0.83333vw;
        letter-spacing: 0.10417vw; } }
    @media (max-width: 768px) {
      header#masthead .button {
        position: fixed;
        z-index: 2;
        right: 2.66667vw;
        top: 5.33333vw; } }
  header#masthead .site-branding {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex; }
    @media (max-width: 768px) {
      header#masthead .site-branding {
        position: relative;
        z-index: 2; } }
    header#masthead .site-branding svg {
      -moz-transition: all 1s ease;
      -o-transition: all 1s ease;
      -webkit-transition: all 1s ease;
      transition: all 1s ease; }
    header#masthead .site-branding a:hover svg {
      transform: rotate(360deg); }
    header#masthead .site-branding .menu-button {
      appearance: none;
      background: none;
      border: none;
      outline: none;
      padding: 0;
      margin-left: 4vw;
      margin-right: 30px;
      -moz-transition: all 0.3s ease;
      -o-transition: all 0.3s ease;
      -webkit-transition: all 0.3s ease;
      transition: all 0.3s ease; }
      @media (min-width: 768px) {
        header#masthead .site-branding .menu-button {
          margin-left: 1.5625vw; } }
      header#masthead .site-branding .menu-button.rotate {
        transform: rotate(180deg); }
      header#masthead .site-branding .menu-button svg * {
        -moz-transition: all 0.3s ease;
        -o-transition: all 0.3s ease;
        -webkit-transition: all 0.3s ease;
        transition: all 0.3s ease; }
      header#masthead .site-branding .menu-button:hover svg circle {
        fill: #064895; }
      header#masthead .site-branding .menu-button:hover svg rect {
        fill: #FFF; }
  header#masthead .menu-main-menu-container {
    display: flex;
    align-items: center;
    opacity: 0;
    transform: translateX(-30px);
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease; }
    @media (max-width: 768px) {
      header#masthead .menu-main-menu-container {
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        width: 100%;
        background: #071f40;
        z-index: 1;
        padding-top: 16vw;
        padding-bottom: 2.66667vw; }
        header#masthead .menu-main-menu-container.show {
          opacity: 1; }
          header#masthead .menu-main-menu-container.show ul {
            display: block; } }
    header#masthead .menu-main-menu-container.show {
      opacity: 1;
      transform: translateX(0); }
    header#masthead .menu-main-menu-container ul li {
      margin: 0 0 0 5.20833vw;
      line-height: 1; }
      @media (max-width: 768px) {
        header#masthead .menu-main-menu-container ul li {
          display: block;
          margin: 2.66667vw 0;
          padding: 0 2.60417vw; }
          header#masthead .menu-main-menu-container ul li a {
            font-size: 3.2vw !important; } }
      header#masthead .menu-main-menu-container ul li a, header#masthead .menu-main-menu-container ul li a:visited {
        font-family: "mr-eaves-modern", sans-serif;
        font-weight: 700;
        font-style: normal;
        letter-spacing: 0.26667vw;
        text-transform: uppercase;
        font-size: 2.4vw;
        line-height: 1;
        color: #FFF; }
        @media (min-width: 768px) {
          header#masthead .menu-main-menu-container ul li a, header#masthead .menu-main-menu-container ul li a:visited {
            font-size: 0.83333vw;
            letter-spacing: 0.10417vw; } }

main section {
  padding: 5.20833vw 0; }
  @media (min-width: 992px) {
    main section {
      min-height: 100vh; } }
  @media (min-width: 1320px) {
    main section {
      padding: 100px 0; } }
  @media (min-width: 992px) {
    main section.page-builder .full-height {
      min-height: 100vh; } }
  main section.page-builder .full-height img {
    object-fit: cover;
    width: 100%;
    height: 100vh; }
  @media (max-width: 768px) {
    main section.small_callout {
      padding-top: 16vw;
      padding-bottom: 16vw; } }
  main section.small_callout p {
    font-size: 3.80208vw;
    color: #071f40;
    font-weight: 700;
    line-height: 1.2;
    opacity: 0; }
    @media (max-width: 768px) {
      main section.small_callout p {
        padding-left: 5.33333vw;
        padding-right: 5.33333vw;
        font-size: 8vw; } }
    main section.small_callout p span {
      opacity: 0 !important;
      -moz-transition: opacity 0.7s ease;
      -o-transition: opacity 0.7s ease;
      -webkit-transition: opacity 0.7s ease;
      transition: opacity 0.7s ease;
      min-width: 2.34375vw; }
      main section.small_callout p span.fade-in {
        opacity: 1 !important; }
  main section.column_section .row {
    margin-left: -2.08333vw;
    margin-right: -2.08333vw; }
  main section.column_section .col-md {
    padding-left: 2.08333vw;
    padding-right: 2.08333vw; }
  main section.column_section p {
    color: #071f40; }
    main section.column_section p:first-of-type {
      margin-top: 0; }
  main section.running_text_and_image:not(.bg-white) * {
    color: #FFF; }
  main section.running_text_and_image:not(.bg-white) h2 {
    font-size: 8vw;
    text-transform: uppercase;
    line-height: 1.1;
    font-weight: 700;
    margin-bottom: 2.08333vw; }
    @media (min-width: 768px) {
      main section.running_text_and_image:not(.bg-white) h2 {
        font-size: 3.125vw; } }
  main section.running_text_and_image .text {
    transform: translateX(-30px);
    -moz-transition: all 0.8s ease;
    -o-transition: all 0.8s ease;
    -webkit-transition: all 0.8s ease;
    transition: all 0.8s ease;
    opacity: 0; }
    @media (max-width: 768px) {
      main section.running_text_and_image .text {
        padding: 5.33333vw 8vw; } }
    main section.running_text_and_image .text.slide-in {
      opacity: 1;
      transform: translateX(0); }
    main section.running_text_and_image .text ul {
      margin-left: 0;
      padding-left: 0.88542vw; }
      main section.running_text_and_image .text ul li {
        font-family: neue-haas-grotesk-text, sans-serif;
        font-weight: 400;
        font-style: normal;
        line-height: 1.7;
        font-size: calc(14px + (16 - 14) * (100vw - 320px) / (1440 - 320));
        margin-bottom: 0.78125vw; }
        @media (min-width: 1320px) {
          main section.running_text_and_image .text ul li {
            font-size: 16px; } }
  main section.testimonial .slick-prev {
    position: absolute;
    left: 0;
    bottom: 0;
    display: none; }
  main section.testimonial .slick-next {
    position: absolute;
    left: 0;
    bottom: 0;
    height: 2.86458vw;
    line-height: 1;
    background: none;
    border: none;
    outline: none;
    width: 33.3333333333%;
    text-align: left;
    font-size: 0.625vw;
    text-transform: uppercase;
    color: #FFF;
    letter-spacing: 0.05208vw;
    padding-left: 1.04167vw;
    font-family: mr-eaves-modern, sans-serif;
    font-weight: 400;
    font-style: normal; }
  main section.testimonial .js-testimonials:not(.single-testimonial) .next-slide {
    position: absolute;
    left: 0;
    bottom: 0;
    right: 0;
    background: #064895;
    padding: 1.04167vw;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    -moz-justify-content: space-between;
    -ms-justify-content: space-between;
    justify-content: space-between;
    -ms-flex-pack: space-between; }
    main section.testimonial .js-testimonials:not(.single-testimonial) .next-slide * {
      color: #FFF;
      line-height: 1; }
    main section.testimonial .js-testimonials:not(.single-testimonial) .next-slide .next-name {
      text-transform: uppercase;
      font-weight: 600;
      font-size: 0.78125vw;
      padding-left: 2.60417vw;
      letter-spacing: 0.10417vw;
      font-family: mr-eaves-modern, sans-serif;
      font-weight: 700;
      font-style: normal; }
    main section.testimonial .js-testimonials:not(.single-testimonial) .next-slide .next-location {
      font-size: 0.78125vw;
      font-family: mr-eaves-modern, sans-serif;
      font-weight: 400;
      font-style: normal; }
  @media (max-width: 768px) {
    main section.large_callout {
      padding-top: 16vw;
      padding-bottom: 16vw; } }
  main section.large_callout h2 {
    width: 100%;
    -webkit-align-self: anchor-center;
    -moz-align-self: anchor-center;
    -ms-align-self: anchor-center;
    align-self: anchor-center;
    font-size: 7.8125vw;
    font-weight: 700;
    line-height: .9; }
    main section.large_callout h2 span {
      display: block; }
      main section.large_callout h2 span span {
        display: inline-block;
        opacity: 0;
        -moz-transition: opacity 0.7s ease;
        -o-transition: opacity 0.7s ease;
        -webkit-transition: opacity 0.7s ease;
        transition: opacity 0.7s ease;
        min-width: 2.34375vw; }
        main section.large_callout h2 span span.fade-in {
          opacity: 1; }
      main section.large_callout h2 span.line-2 {
        text-align: right; }
  main section.full_width_image {
    position: relative; }
    main section.full_width_image .attachment-full-width-section {
      object-fit: cover;
      width: 100%;
      height: 100vh; }
    main section.full_width_image .content {
      position: absolute;
      left: 50%;
      top: 50%;
      width: 80%;
      transform: translate(-50%, -50%);
      text-align: center; }
      @media (min-width: 768px) {
        main section.full_width_image .content {
          width: 40%; } }
      main section.full_width_image .content img {
        width: 100%;
        height: auto; }

footer {
  padding: 5.33333vw; }
  @media (min-width: 768px) {
    footer {
      padding: 5.20833vw 2.60417vw 2.60417vw 2.60417vw; } }
  @media (min-width: 768px) {
    footer .row {
      -webkit-align-items: flex-end;
      -moz-align-items: flex-end;
      -ms-align-items: flex-end;
      align-items: flex-end; } }
  footer * {
    color: #FFF;
    text-decoration: none; }
    footer *:visited {
      color: #FFF; }
    footer *:hover {
      color: #959fad; }
  @media (max-width: 768px) {
    footer .footer-first {
      width: 50%; } }
  footer ul {
    list-style: none;
    margin: 0;
    padding: 0; }
  footer .footer-logo {
    width: 33.33333vw; }
    @media (min-width: 768px) {
      footer .footer-logo {
        width: 13.02083vw; } }
  footer .top {
    margin-bottom: 20vw; }
    @media (min-width: 768px) {
      footer .top {
        margin-bottom: 7.8125vw; } }
  footer .bottom .copyright {
    border-top: 1px solid #FFF;
    margin-top: 2.66667vw;
    padding-top: 2.66667vw;
    font-size: 2vw; }
    @media (min-width: 768px) {
      footer .bottom .copyright {
        margin-top: 1.04167vw;
        padding-top: 1.04167vw;
        font-size: 0.78125vw; } }
  footer .menu-footer-sub-menu-container #menu-footer-sub-menu {
    column-count: 2; }
    footer .menu-footer-sub-menu-container #menu-footer-sub-menu li {
      line-height: 1.2; }
      footer .menu-footer-sub-menu-container #menu-footer-sub-menu li a {
        font-size: 2.4vw; }
        @media (min-width: 768px) {
          footer .menu-footer-sub-menu-container #menu-footer-sub-menu li a {
            font-size: 0.9375vw; } }
  footer .menu-footer-menu-container ul li a {
    font-family: neue-haas-grotesk-display, sans-serif;
    font-weight: 400;
    font-style: normal;
    text-decoration: none;
    font-size: 5.33333vw;
    font-weight: 400; }
    @media (min-width: 768px) {
      footer .menu-footer-menu-container ul li a {
        font-size: 2.34375vw; } }
