@charset "UTF-8";
/* Forces mobile menus to open states */
body > header > section nav:after, .grid:after, .grid > div:after, .grid > div > div > ul:after {
  content: "";
  display: table;
  clear: both; }

body > header > section nav ul.menu li, body > main .menu li {
  position: relative;
  display: block;
  min-height: 3.75em;
  line-height: 3.75em;
  border-top: 1px solid #ccc;
  padding-right: 2em; }

h1, h2, h3, h4, h5, h6 {
  line-height: 1.125; }

h1 {
  font-weight: 700; }

h1, h2 {
  font-size: 1.75em;
  color: #333333; }
  @media (min-width: 768px) {
    h1, h2 {
      font-size: 2.5em; } }

h3 {
  font-size: 1.75em; }

h4 {
  font-size: 1.4em;
  padding-bottom: .75em; }
  @media (min-width: 768px) {
    h4 {
      font-size: 1.85em; } }

h5 {
  font-weight: 700;
  padding-bottom: 1em; }

h6 {
  font-family: "Open Sans", serif;
  font-style: italic;
  font-weight: 700;
  margin-bottom: 1em;
  line-height: 1.4em;
  font-size: 1em; }

p, ul {
  margin-bottom: 1.5em;
  line-height: 1.5em; }

a {
  text-decoration: none;
  color: #333333; }
  a:hover {
    color: #B90822; }
    a:hover.slash:before {
      color: #e50051; }
  a.slash {
    position: relative;
    padding-left: 1em;
    font-weight: 400; }
    a.slash:before {
      content: '//';
      position: absolute;
      top: 0;
      bottom: 0;
      left: 0;
      width: .5em; }

body {
  color: #333333;
  font-size: 16px;
  font-weight: 300;
  font-family: "Oxygen", sans-serif; }
  @media (min-width: 768px) {
    body {
      font-size: 17px; } }

body {
  background-color: #fff; }
  body.error404 > main section {
    padding: 4em 0; }
  body.error404 h1 {
    margin-bottom: .5em; }
  body > *:not(footer) > section {
    box-sizing: border-box;
    /*border: 1px solid red;*/ }
  body > header {
    background-color: #fff; }
    body > header > section {
      font-weight: 400; }
      body > header > section > div {
        position: relative;
        padding-top: 0;
        padding-bottom: 0; }
      @media (min-width: 768px) {
        body > header > section {
          position: relative;
          display: table;
          width: 100%;
          max-width: 64em;
          margin: 0 auto; }
          body > header > section > div {
            display: table-cell;
            vertical-align: middle; } }
      @media (min-width: 1200px) {
        body > header > section {
          padding: 0; } }
      body > header > section a {
        display: inline-block; }
      body > header > section .table {
        height: 105px;
        margin: 0; }
        @media (min-width: 768px) {
          body > header > section .table {
            position: relative;
            height: 125px;
            max-width: 64em;
            margin: 0 auto; }
            body > header > section .table > div:last-child {
              display: none; } }
      body > header > section .icons .text-right a {
        color: #333333;
        font-size: 1.75em;
        padding-left: .5em; }
      body > header > section nav {
        position: relative; }
        @media (min-width: 768px) {
          body > header > section nav > ul > li {
            line-height: 160px;
            height: 125px; } }
        body > header > section nav ul.menu {
          display: none;
          margin-bottom: .5em; }
          @media (max-width: 823px) {
            body > header > section nav ul.menu.show {
              display: block; } }
          @media (min-width: 768px) {
            body > header > section nav ul.menu {
              display: block;
              margin: 0 2em 0 0;
              text-align: right;
              height: 125px; }
              body > header > section nav ul.menu > li.current-menu-item:not(:last-child).menu-item-has-children > a:before, body > header > section nav ul.menu > li.current-menu-parent:not(:last-child).menu-item-has-children > a:before {
                right: -1em; }
              body > header > section nav ul.menu > li.current-menu-item:not(:last-child) > a, body > header > section nav ul.menu > li.current-menu-parent:not(:last-child) > a {
                color: #2178AD; }
                body > header > section nav ul.menu > li.current-menu-item:not(:last-child) > a:before, body > header > section nav ul.menu > li.current-menu-parent:not(:last-child) > a:before {
                  content: '';
                  position: absolute;
                  top: 94px;
                  left: 0;
                  right: 0;
                  height: 2px;
                  background-color: #2178AD; }
              body > header > section nav ul.menu > li:last-child {
                position: absolute;
                top: 0;
                right: 0;
                height: 45px;
                line-height: 58px;
                border-bottom-left-radius: .125em;
                border-bottom-right-radius: .125em;
                background-color: #2178AD;
                padding: 0 .5em; }
                body > header > section nav ul.menu > li:last-child a {
                  color: #fff;
                  font-size: .8em; }
                body > header > section nav ul.menu > li:last-child:hover {
                  background-color: #e50051; }
                  body > header > section nav ul.menu > li:last-child:hover a {
                    color: #fff; } }
          body > header > section nav ul.menu li {
            z-index: 99; }
            body > header > section nav ul.menu li.menu-item-has-children:after {
              font-family: 'Font Awesome 5 Free';
              content: '\f107';
              position: absolute;
              top: 0;
              right: 0;
              bottom: 0;
              width: 2em;
              text-align: right;
              font-weight: 900;
              font-size: 1.25em;
              color: #b1b1b1; }
              @media (min-width: 768px) {
                body > header > section nav ul.menu li.menu-item-has-children:after {
                  font-size: 1em; } }
            @media (min-width: 768px) {
              body > header > section nav ul.menu li {
                display: inline-block;
                min-height: 0;
                line-height: 160px;
                border: 0;
                padding: 0 1em;
                margin-right: .5em; }
                body > header > section nav ul.menu li:hover ul.sub-menu {
                  display: block; } }
            @media (max-width: 823px) {
              body > header > section nav ul.menu li:first-child {
                border-width: 2px; } }
            body > header > section nav ul.menu li a {
              position: relative;
              display: block;
              color: #333333; }
              body > header > section nav ul.menu li a:hover {
                color: #2178AD; }
            body > header > section nav ul.menu li ul.sub-menu {
              display: none;
              /*if($debug, block, none);*/
              margin-bottom: 1.5em; }
              @media (min-width: 768px) {
                body > header > section nav ul.menu li ul.sub-menu {
                  z-index: 99;
                  position: absolute;
                  background-color: rgba(33, 120, 173, 0.8);
                  padding: .5em 0;
                  margin: 0;
                  height: auto;
                  min-width: 220px;
                  left: -.25em;
                  top: 125px;
                  border-bottom-left-radius: .125em;
                  border-bottom-right-radius: .125em; } }
              body > header > section nav ul.menu li ul.sub-menu.show {
                display: block; }
              body > header > section nav ul.menu li ul.sub-menu li {
                border-top: 0;
                min-height: 2.5em;
                line-height: 2.5em;
                text-indent: 1.5em;
                padding: 0 .5em; }
                @media (min-width: 768px) {
                  body > header > section nav ul.menu li ul.sub-menu li {
                    display: block;
                    border: 0;
                    text-align: left;
                    text-indent: .5em; }
                    body > header > section nav ul.menu li ul.sub-menu li a {
                      color: #fff; } }
        body > header > section nav #menu-main-menu #menu-item-5 ul.sub-menu {
          width: 300px; }
        body > header > section nav .icon.search {
          display: none; }
          @media (min-width: 768px) {
            body > header > section nav .icon.search {
              display: block;
              position: absolute;
              top: 4.25em;
              right: .5em;
              color: #333333;
              padding-left: 1em;
              border-left: 1px solid #D9D9D9;
              text-align: right; }
              body > header > section nav .icon.search:hover {
                color: #2178AD; } }
      body > header > section .search-box {
        display: none;
        position: absolute;
        top: 85px;
        left: 0;
        right: 0;
        z-index: 99; }
        @media (min-width: 768px) {
          body > header > section .search-box {
            top: 105px;
            left: initial;
            right: -.5em;
            width: 30em; } }
        body > header > section .search-box > div:first-child {
          position: relative;
          height: 20px; }
          body > header > section .search-box > div:first-child div {
            position: absolute;
            top: 0;
            right: 2em;
            width: 0;
            height: 0;
            border-style: solid;
            border-width: 0 25px 20px 25px;
            border-color: transparent transparent #2178AD transparent; }
            @media (min-width: 768px) {
              body > header > section .search-box > div:first-child div {
                right: 0; } }
        body > header > section .search-box > div:last-child {
          background-color: #2178AD;
          border-bottom-left-radius: .25em;
          border-bottom-right-radius: .25em;
          padding: .5em; }
          body > header > section .search-box > div:last-child form {
            position: relative; }
            body > header > section .search-box > div:last-child form:after {
              font-family: 'Font Awesome 5 Free';
              content: '\f002';
              position: absolute;
              top: 0;
              left: .5em;
              line-height: 2.2em;
              color: #2178AD;
              font-weight: 900;
              font-size: 1.5em; }
          body > header > section .search-box > div:last-child input {
            background-color: rgba(255, 255, 255, 0.6);
            padding-left: 3em; }
  body > section {
    padding: 0 2em;
    background-color: #fff; }
    @media (min-width: 768px) {
      body > section {
        padding: 0; } }
    body > section > div {
      position: relative;
      max-width: 64em;
      margin: 0 auto; }
    body > section h1 {
      padding-bottom: 1em; }
    body > section > .table {
      margin-bottom: 0; }
    body > section h4 {
      padding-bottom: 0; }
  body > main {
    background-color: #fff; }
    @media (min-width: 768px) {
      body > main > section > * {
        position: relative;
        max-width: 64em;
        margin: 0 auto; } }
    body > main > section.grid {
      padding-top: 2em; }
    body > main > section.grey {
      /*&:nth-child(even) {*/
      background-color: #F5F5F5; }
    body > main > section:not(.grey):not(:first-child) > div {
      border-top: 2px solid #cccccc; }
    body > main .menu {
      margin-bottom: 0; }
      @media (min-width: 768px) {
        body > main .menu {
          border-bottom: 2px solid #D9D9D9; } }
      body > main .menu li {
        width: 100%;
        padding-left: 1.75em; }
        body > main .menu li:first-child {
          border: 0; }
        body > main .menu li:hover a {
          color: #e50051; }
        body > main .menu li.current-menu-item:before {
          content: '\2022';
          position: absolute;
          left: 0;
          color: #e50051; }
        body > main .menu li.current-menu-item a {
          font-weight: 700; }
        body > main .menu li a {
          color: #242424; }
  body > footer {
    padding-top: 2em; }
    body > footer > section {
      margin-left: 2em;
      margin-right: 2em;
      padding: 0; }
      body > footer > section > div {
        margin-bottom: 2em; }
      @media (min-width: 768px) {
        body > footer > section {
          position: relative;
          max-width: 64em;
          margin: 0 auto; } }
      body > footer > section:first-child {
        border: none; }
      body > footer > section:last-child {
        padding-top: 2em; }
      body > footer > section a {
        text-decoration: underline; }
      body > footer > section .social li {
        display: inline-block; }
        body > footer > section .social li a {
          font-family: 'Font Awesome 5 Free';
          display: block;
          color: #fff;
          width: 40px;
          height: 40px;
          line-height: 40px;
          margin-left: 1em;
          border-radius: 50%;
          text-align: center;
          text-decoration: none;
          font-size: 1.25em; }
          @media (min-width: 768px) {
            body > footer > section .social li a {
              margin-left: 1.5em; } }
          body > footer > section .social li a.linkedin {
            background-color: #007bb6; }
          body > footer > section .social li a.twitter {
            background-color: #00aced; }
  body.page-template-posts > main h2 {
    margin-top: .75em;
    margin-bottom: 1em; }
  body.page-template-posts > main .grid li {
    border-bottom: 2px solid #D9D9D9;
    border-top: 0; }
  body.admin-bar .search-box {
    top: 131px; }
    @media (min-width: 783px) {
      body.admin-bar .search-box {
        top: 117px; } }
  body.search-results ul {
    padding: 0 2em; }

main.portal .span-12 {
  border-top: 0; }

main.meet-the-team h2 {
  padding-top: 1em; }

section.get-in-touch > div h5 {
  color: #2178AD;
  font-weight: 700;
  font-size: 1.75em; }
section.get-in-touch > div p {
  font-family: "Open Sans", serif;
  font-style: italic; }

.pagination {
  max-width: 64em;
  margin: 0 auto;
  padding: 1em 0;
  text-align: center;
  font-weight: 700;
  font-size: 1.25em; }

body > main > section.get-in-touch > div {
  padding: 3em 0 1em; }

ul li article {
  display: block; }
  @media (min-width: 768px) {
    ul li article {
      padding-bottom: 2em; }
      body.category ul li article {
        padding-top: 2em; } }
  ul li article h4 a {
    display: block;
    font-size: .8em;
    font-weight: 700;
    text-decoration: none; }
    @media (min-width: 768px) {
      body:not(.category):not(.page-template-posts):not(.search) ul li article h4 a {
        height: 4em; } }
  ul li article time {
    display: block;
    font-family: "Open Sans", serif;
    font-style: italic;
    color: #707070;
    padding-bottom: 1.5em; }
    @media (min-width: 768px) {
      ul li article time {
        padding-bottom: 1em; } }
  ul li article p, ul li article > a {
    display: none; }
    @media (min-width: 768px) {
      ul li article p, ul li article > a {
        display: block; } }
  ul li article > *:last-child {
    margin-bottom: 0; }
ul.attachments li {
  position: relative;
  padding-top: 1.25em; }
  ul.attachments li:first-child {
    border-top: 0; }
  ul.attachments li i {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    font-size: 2em;
    margin-top: .75em !important; }
  ul.attachments li time {
    display: block;
    font-family: "Open Sans", serif;
    font-style: italic;
    color: #707070;
    padding-bottom: 1.5em; }
  ul.attachments li h4 {
    font-size: 1.5em;
    margin-left: 1.5em;
    font-weight: 700; }
  ul.attachments li time, ul.attachments li p {
    margin-left: 2.25em; }
ul.contacts li:first-child {
  border: 0; }
ul.contacts li .table > div:first-child {
  width: 100px;
  height: 75px; }

.container {
  width: 350px; }
  @media (min-width: 576px) {
    .container {
      width: 576px; } }
  @media (min-width: 768px) {
    .container {
      width: 768px; } }
  @media (min-width: 1200px) {
    .container {
      width: 1000px; } }

.carousel {
  position: relative; }
  .carousel div.item {
    overflow: hidden; }
  .carousel .fa-play-circle {
    display: none;
    position: absolute;
    top: 50%;
    left: 50%;
    width: 52px;
    height: 52px;
    margin-top: -26px;
    margin-left: -26px;
    color: rgba(255, 255, 255, 0.75) !important;
    font-size: 4em;
    z-index: 99; }
  .carousel.header {
    background-color: #c5ddea; }
    .carousel.header div.item video {
      width: 100%;
      height: 25em;
      object-fit: cover; }
      @media (min-width: 768px) {
        .carousel.header div.item video {
          height: 43.75em; } }
    .carousel.header div.item * {
      color: #fff; }
    .carousel.header div.item > div:first-child {
      position: relative;
      background-size: cover;
      background-position: center center;
      height: 25em;
      overflow: hidden; }
      @media (min-width: 768px) {
        .carousel.header div.item > div:first-child {
          height: 43.75em; } }
    .carousel.header div.item > div:last-child {
      position: relative; }
      @media (min-width: 768px) {
        .carousel.header div.item > div:last-child {
          max-width: 64em;
          margin: 0 auto; } }
      .carousel.header div.item > div:last-child > div {
        position: relative; }
        .carousel.header div.item > div:last-child > div h1, .carousel.header div.item > div:last-child > div h2 {
          font-weight: 700;
          padding-bottom: .25em; }
        .carousel.header div.item > div:last-child > div h4 {
          margin-bottom: .5em; }
        .carousel.header div.item > div:last-child > div p {
          font-family: "Open Sans", serif;
          font-style: italic; }
        @media (min-width: 768px) {
          .carousel.header div.item > div:last-child > div {
            max-width: 64em;
            margin: 0 auto;
            position: absolute;
            left: 0;
            width: 65%;
            bottom: 3em; } }
        .carousel.header div.item > div:last-child > div .over {
          position: relative;
          background-image: url(../img/banner-bg.svg);
          background-repeat: repeat-x;
          background-size: cover;
          padding: 2em; }
          @media (min-width: 768px) {
            .carousel.header div.item > div:last-child > div .over {
              padding-left: 0; } }
          .carousel.header div.item > div:last-child > div .over > *:last-child {
            margin: 0; }
        .carousel.header div.item > div:last-child > div .lead, .carousel.header div.item > div:last-child > div .edge {
          display: none; }
        @media (min-width: 768px) {
          .carousel.header div.item > div:last-child > div .lead {
            display: block;
            background-image: url(../img/banner-bg.svg);
            background-repeat: repeat-x;
            background-size: contain;
            position: absolute;
            top: 0;
            left: -3000px;
            right: 0;
            bottom: 0;
            width: 3000px; }
          .carousel.header div.item > div:last-child > div .edge {
            display: block;
            background-image: url(../img/banner-edge.svg);
            background-repeat: no-repeat;
            background-size: cover;
            position: absolute;
            top: 0;
            left: 100%;
            bottom: 0;
            width: 43px; } }
  .carousel.content {
    background-color: #F5F5F5; }
    .carousel.content div.item video {
      width: 100%;
      height: 20em;
      object-fit: cover; }
      @media (min-width: 768px) {
        .carousel.content div.item video {
          height: 30em; } }
    .carousel.content div.item > div {
      position: relative;
      background-size: cover;
      background-position: center center;
      height: 20em;
      overflow: hidden; }
      @media (min-width: 768px) {
        .carousel.content div.item > div {
          height: 30em; } }
    .carousel.content div.item * {
      color: #fff; }

.owl-nav > div {
  position: absolute;
  top: 50%;
  margin-top: -26px;
  display: block;
  width: 52px;
  height: 52px;
  color: rgba(255, 255, 255, 0.75);
  font-size: 3em; }
  .owl-nav > div.owl-prev {
    left: .5em; }
  .owl-nav > div.owl-next {
    right: .5em; }
  .owl-nav > div.disabled {
    display: none; }

.owl-dots {
  height: 20px; }
  .owl-dots .owl-dot {
    display: inline-block;
    background-color: rgba(255, 255, 255, 0.5);
    width: 1.25em;
    height: 1.25em;
    margin: 0 .25em;
    transform: skewX(-8deg);
    transition: background-color .2s ease; }
    .owl-dots .owl-dot:first-child {
      margin-left: 0; }
    .owl-dots .owl-dot:last-child {
      margin-right: 0; }
    .owl-dots .owl-dot:hover, .owl-dots .owl-dot.active {
      background-color: #fff; }
    .blocks .owl-dots .owl-dot {
      background-color: #2178AD; }
      .blocks .owl-dots .owl-dot:hover, .blocks .owl-dots .owl-dot.active {
        background-color: #e50051; }
  .header .owl-dots {
    position: absolute;
    left: 2em;
    top: 22em; }
    @media (min-width: 768px) {
      .header .owl-dots {
        max-width: 64em;
        margin: 0 auto;
        top: 39.5em;
        left: 0;
        right: 0;
        text-align: right; } }
  .blocks .owl-dots {
    margin-top: 2em; }

.owl-carousel + .owl-carousel {
  margin-top: 2em; }

input[type="submit"], button, a.button {
  display: inline-block;
  background-color: #2178AD;
  color: #fff;
  font-weight: 700;
  border: none;
  border-radius: 2em;
  padding: .75em 1.5em; }
  input[type="submit"].button, button.button, a.button.button {
    margin-bottom: 2em; }
  input[type="submit"]:hover, button:hover, a.button:hover {
    background-color: #e50051; }

input:not([type="submit"]), textarea, select, option {
  background-color: #F5F5F5;
  padding: 1em;
  border: none;
  color: #555555; }
  input:not([type="submit"]):focus, input:not([type="submit"]):hover, textarea:focus, textarea:hover, select:focus, select:hover, option:focus, option:hover {
    background-color: #D9D9D9; }

input[type="email"], input[type="password"], input[type="text"], textarea, select, option {
  width: 100%; }

[disabled] {
  background-color: #D9D9D9 !important;
  color: #aaa !important; }

form {
  width: 100%; }
  form label {
    display: block;
    margin: 1.5em 0 1em; }
  form .required, form .wppb-required {
    color: red;
    font-size: 1.25em; }
  form input[type="submit"] {
    margin-top: 2em; }
  form li {
    border: 0 !important;
    padding-bottom: 1em;
    width: calc(22em + (100% - 22em)); }
  form .wppb-default-first-name, form .wppb-default-last-name, form .wppb-default-password, form .wppb-default-repeat-password {
    width: calc(22em + (100% - 22em)); }
    @media (min-width: 768px) {
      form .wppb-default-first-name, form .wppb-default-last-name, form .wppb-default-password, form .wppb-default-repeat-password {
        width: calc(10em + ((100% - 22em) / 12 * 6)); }
        form .wppb-default-first-name:nth-child(2n+2), form .wppb-default-last-name:nth-child(2n+2), form .wppb-default-password:nth-child(2n+2), form .wppb-default-repeat-password:nth-child(2n+2) {
          margin-right: 0; } }

.select2-container {
  width: 100% !important; }

.select2-container--default .select2-selection--single {
  background-color: #F5F5F5 !important;
  border: none !important;
  color: #555555 !important;
  height: 55px !important;
  line-height: 55px !important; }

.select2-container--default .select2-selection--single .select2-selection__rendered {
  line-height: unset !important;
  padding-left: 1em !important; }

.select2-container--default .select2-selection--single .select2-selection__arrow {
  height: 55px !important;
  width: 30px !important; }

::placeholder {
  color: #555555; }

.contact-us {
  background-repeat: no-repeat; }

.frm_submit {
  position: absolute;
  margin-left: 15%; }

.frm_button_submit {
  background-color: #B90822 !important;
  color: #fff !important;
  width: 200px !important;
  border: none; }

.nf-form-content label {
  font-size: 14px !important; }

.nf-field-label label {
  font-weight: 400 !important; }

.mobile-logo {
  display: none; }

.centered {
  margin: auto;
  width: 50%; }

@media only screen and (max-width: 768px) {
  .mobile-logo {
    display: block;
    width: 100px !important;
    height: auto;
    margin: 0 !important; }

  .dig-logo {
    display: none; } }
.wp-block-cover {
  min-height: 550px !important; }

.wp-block-cover,
.wp-block-cover-image {
  background-color: unset !important; }

.dig-container h1 {
  margin-top: 40px;
  font-size: 21px; }

.dig-container h2 {
  font-size: 21px; }

.dig-container h3 {
  font-size: 21px; }

.dig-container .centre {
  text-align: center; }

.footer .centre {
  text-align: center; }

.dig-container .footer {
  margin-top: 30px;
  margin-bottom: 10px; }

.dig-container .divider {
  height: 64px;
  margin: 50px auto;
  background: url(../images/divider.png); }

.dig-container .header {
  height: 91px;
  vertical-align: middle; }

.dig-container .header img {
  float: left;
  width: 300px;
  margin-left: 10px;
  margin-top: 15px; }
  @media (min-width: 1200px) {
    .dig-container .header img {
      margin-left: 15%; } }

.dig-container .header ul {
  float: left;
  list-style: none;
  margin: 0;
  padding: 0; }
  @media (min-width: 576px) {
    .dig-container .header ul {
      float: none; } }

.dig-container .header ul li {
  display: inline;
  margin-top: 28px;
  margin-left: 30px;
  line-height: 55px; }

.dig-container .header ul li a {
  color: #404040;
  font-size: 12px; }
  @media only screen and (max-width: 960px) {
    .dig-container .header ul li a {
      display: none; } }

.sub-header {
  vertical-align: middle;
  display: block;
  width: 100%;
  margin-bottom: 0 !important; }
  .sub-header .wp-block-column {
    margin-bottom: 0 !important; }

.sub-header img {
  height: 70px;
  width: auto;
  display: inline; }

.sub-header-menu-list {
  list-style: none;
  display: inline; }
  @media only screen and (max-width: 959px) {
    .sub-header-menu-list {
      display: none; } }

.sub-header-menu-list li {
  display: inline;
  line-height: 91px;
  margin-left: 30px; }

.sub-header-menu-list li a {
  font-size: 12px; }

.sub-header-menu-list .wp-block-column ul li {
  color: #404040;
  font-size: 15px; }

.sub-header-menu-centered {
  margin: auto;
  width: fit-content;
  width: -moz-fit-content;
  padding: 2% 0; }

.origins {
  background-color: #8FC663; }

.payd {
  background-color: #4390FF; }

.vesta {
  background-color: #E55D2E; }

#menu-main-menu li a {
  font-size: 15px; }

#menu-item-42 {
  border: none;
  color: white;
  text-align: center;
  text-decoration: none;
  display: inline-block;
  background-image: url(https://image.flaticon.com/icons/svg/118/118738.svg);
  background-position: 100% 51%;
  background-repeat: no-repeat;
  background-size: 0.7em;
  width: 150px; }

#menu-item-42:hover {
  text-decoration: underline; }

.sub-menu {
  display: none;
  position: absolute;
  background: #F6F6F6;
  width: 400px;
  top: 65px;
  height: auto;
  border-bottom: 3px solid #B90822;
  z-index: 999;
  margin-left: -120px !important; }
  @media (max-width: 823px) {
    .sub-menu {
      margin-left: 0 !important;
      border-bottom: 0 !important; } }

.sub-menu li {
  background: #F6F6F6;
  display: block !important;
  height: 70px; }

#menu-item-42:hover .sub-menu {
  display: block; }

.sub-menu li a {
  display: inline-block;
  font-size: 17px !important;
  margin-left: 50px !important; }

li .origins-menu-item {
  background: url("../images/ORIGINS_Icon.png") top left no-repeat;
  margin: 20px;
  background-size: auto 70px; }
  @media (max-width: 823px) {
    li .origins-menu-item {
      background: none; } }

li .payd-menu-item {
  background: url("../images/PAYD_Icon.png") top left no-repeat;
  margin: 20px;
  background-size: auto 70px; }
  @media (max-width: 823px) {
    li .payd-menu-item {
      background: none; } }

li .vesta-menu-item {
  background: url("../images/VESTA_Icon.png") top left no-repeat;
  margin: 20px;
  background-size: auto 70px; }
  @media (max-width: 823px) {
    li .vesta-menu-item {
      background: none; } }

.origins-menu-item a {
  color: #8FC663 !important; }

.payd-menu-item a {
  color: #4390FF !important; }

.vesta-menu-item a {
  color: #E55D2E !important; }

.home-paragraph {
  font-size: 1.15em !important;
  color: white;
  left: 5%;
  padding: 0 !important;
  float: left; }
  @media (min-width: 768px) {
    .home-paragraph {
      width: 65%; } }
  @media (min-width: 1200px) {
    .home-paragraph {
      width: 40%;
      left: 10%;
      top: 40%;
      position: relative; } }

.clients-paragraph {
  font-size: 1.15em !important;
  color: white;
  width: 75%;
  position: absolute;
  right: 5%;
  padding: 0 !important;
  float: right; }
  @media (min-width: 768px) {
    .clients-paragraph {
      width: 65%; } }
  @media (min-width: 1200px) {
    .clients-paragraph {
      width: 40%;
      right: 20%; } }

.margin-content {
  margin: 0 5%; }

#clients {
  position: relative;
  display: block; }

.frm_submit {
  position: relative;
  width: 50%;
  margin: auto; }

.product-contact-us {
  background-color: #ECEDEE;
  width: 100%;
  padding-top: 50px; }

#post-46 .frm_button_submit {
  background-color: #8fc663 !important; }

#post-86 .frm_button_submit {
  background-color: #e55d2e !important; }

#shiftnav-toggle-main.shiftnav-toggle-style-burger_only {
  position: absolute;
  top: 2%;
  right: 5% !important; }

#shiftnav-toggle-main {
  color: #000 !important; }

.shiftnav-toggle-style-burger_only .shiftnav-toggle-burger {
  font-size: 30px !important; }

.shiftnav ul.shiftnav-menu li.shiftnav-retract, .shiftnav ul.shiftnav-menu li.shiftnav-sub-shift li.shiftnav-active ~ li.shiftnav-retract {
  display: none !important; }

#post-86 .wp-block-column ul {
  list-style: none; }
#post-86 .wp-block-column ul li::before {
  content: "\■";
  color: #E55D2E;
  font-weight: bold;
  display: inline-block;
  width: 1em;
  margin-left: -1em; }

#post-246 .wp-block-column ul {
  list-style: none; }
#post-246 .wp-block-column ul li::before {
  content: "\■";
  color: #E55D2E;
  font-weight: bold;
  display: inline-block;
  width: 1em;
  margin-left: -1em; }

#post-46 .wp-block-column ul {
  list-style: none; }
#post-46 .wp-block-column ul li::before {
  content: "\■";
  color: #8FC663;
  font-weight: bold;
  display: inline-block;
  width: 1em;
  margin-left: -1em; }

.firefighter {
  min-height: 250px !important;
  background-color: #8FC663 !important; }

.housing {
  min-height: 250px !important; }

figcaption {
  text-align: center; }

#modal {
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(0, 0, 0, 0.75);
  z-index: 9999; }
  #modal > div {
    display: block;
    position: fixed;
    top: 10%;
    left: 10%;
    right: 10%;
    bottom: 10%;
    background-color: #fff;
    padding: 2em; }
    @media (min-width: 768px) {
      #modal > div {
        top: 20%;
        left: 25%;
        right: 25%;
        bottom: 30%; } }
    #modal > div form > div:first-child {
      position: absolute;
      top: 2em;
      left: 2em;
      right: 2em;
      bottom: 9em;
      overflow-y: scroll;
      border-bottom: 6em solid #fff; }
      @media (min-width: 768px) {
        #modal > div form > div:first-child {
          border-bottom: 2.5em solid #fff; } }
      #modal > div form > div:first-child > * {
        margin-top: 0;
        margin-bottom: 2em; }
      #modal > div form > div:first-child > h1, #modal > div form > div:first-child > h2 {
        margin-bottom: 1em; }
    #modal > div form > div:last-child {
      position: absolute;
      left: 2em;
      right: 2em;
      bottom: 0;
      border-top: 2px solid #b1b1b1;
      padding-top: 2em; }
  @media (max-width: 823px) {
    #modal .table {
      display: block; } }
  @media (max-width: 823px) {
    #modal .table > div {
      display: block;
      padding-top: 1em; } }
  @media (min-width: 768px) {
    #modal .table > div:first-child {
      width: 70%; } }
  @media (min-width: 768px) {
    #modal .table > div:last-child {
      width: 30%; } }
  #modal .table > div * {
    width: 100%; }
  @media (min-width: 768px) {
    #modal .table > div button {
      width: 80%; } }

.grid {
  /* Nested grids */ }
  .grid div[class*="span-"], .grid li {
    float: left;
    margin-right: 2em;
    border-top: 2px solid #cccccc; }
    .grid div[class*="span-"]:last-child, .grid li:last-child {
      margin-right: 0; }
    footer .grid div[class*="span-"], footer .grid li {
      border-top: 0; }
    .grid div[class*="span-"] > *:first-child:not(ul):not(h2), .grid li > *:first-child:not(ul):not(h2) {
      margin-top: 1.5em; }
    .grid div[class*="span-"] .grid > div > div, .grid li .grid > div > div {
      border-top: 0; }
    .grid div[class*="span-"].content ul, .grid li.content ul {
      border: 0; }
    .grid div[class*="span-"].content li, .grid li.content li {
      float: none;
      margin-left: 1.25em;
      list-style: disc;
      border: 0; }
  .grid .span-12 {
    width: calc(22em + (100% - 22em)); }
  .grid .span-8 {
    width: calc(22em + (100% - 22em)); }
    @media (min-width: 768px) {
      .grid .span-8 {
        width: calc(14em + ((100% - 22em) / 12 * 8)); } }
  .grid .span-6 {
    width: calc(22em + (100% - 22em)); }
    @media (min-width: 768px) {
      .grid .span-6 {
        width: calc(10em + ((100% - 22em) / 12 * 6)); }
        .grid .span-6:nth-child(2n+2) {
          margin-right: 0; } }
  .grid .span-4 {
    width: calc(10em + ((100% - 22em) / 12 * 6)); }
    @media (max-width: 823px) {
      .grid .span-4:nth-child(2n+2) {
        margin-right: 0; } }
    @media (min-width: 768px) {
      .grid .span-4 {
        width: calc(6em + ((100% - 22em) / 12 * 4)); }
        .grid .span-4:nth-child(3n+3) {
          margin-right: 0; } }
  .grid .span-3 {
    width: calc(22em + (100% - 22em)); }
    @media (min-width: 768px) {
      .grid .span-3 {
        width: calc(4em + ((100% - 22em) / 12 * 3)); }
        .grid .span-3:nth-child(4n+4) {
          margin-right: 0; } }
  .grid.blocks .span-6 {
    width: calc(22em + (100% - 22em)); }
    @media (min-width: 576px) {
      .grid.blocks .span-6 {
        width: calc(10em + ((100% - 22em) / 12 * 6)); }
        .grid.blocks .span-6:nth-child(2n+2) {
          margin-right: 0; } }
  .grid.team {
    padding-top: 1em; }
    .grid.team img {
      width: 100%;
      height: auto;
      margin-bottom: 1em; }
    .grid.team h4 {
      font-weight: 700;
      padding: 0; }
    .grid.team .span-6 {
      width: calc(10em + ((100% - 22em) / 12 * 6)); }
      .grid.team .span-6:nth-child(2n+2) {
        margin-right: 0; }
    .grid.team .span-12 {
      display: none;
      border-top: 2px solid #cccccc;
      border-bottom: 2px solid #cccccc; }
    .grid.team a {
      display: block;
      position: relative;
      padding-right: 1.5em; }
      .grid.team a:after {
        font-family: 'Font Awesome 5 Free';
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        content: '\f067';
        color: #2178AD;
        font-size: 2em;
        font-weight: 900;
        text-align: right; }
      .grid.team a.show:after {
        content: '\f068'; }
      .grid.team a:hover:after {
        color: #e50051; }
  .grid > div {
    margin-bottom: 2em; }
    .grid > div:last-child {
      margin-bottom: 0; }
  .grid > div, .grid > div > div > ul {
    padding-top: 0; }
    body.category .grid > div:not(div), body.category .grid > div > div > ul:not(div) {
      padding: 0 2em; }
      @media (min-width: 768px) {
        body.category .grid > div:not(div), body.category .grid > div > div > ul:not(div) {
          padding: 0; } }
  .grid .grid {
    margin-top: 0 !important; }

.text-right {
  text-align: right; }

.text-center, body > main > section.get-in-touch > div {
  text-align: center; }

.table {
  display: table;
  width: 100%;
  padding: 0;
  margin-bottom: 1.5em; }
  .table > div {
    display: table-cell;
    vertical-align: middle; }
  @media (min-width: 768px) {
    .table {
      margin-bottom: 2em; } }

.breadcrumb li {
  display: inline-block;
  margin-left: 1em; }
  .breadcrumb li:first-child {
    margin: 0; }

.sr-only, .screen-reader-response, .screen-reader-text {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0; }

span.wpcf7-not-valid-tip, .wppb-warning {
  display: block;
  padding: 1em 0;
  margin: 0;
  color: red; }

.alert {
  margin: 2em 0 0;
  padding: 1em;
  background-color: #168073;
  color: #fff;
  border: 0;
  border-radius: .125em;
  font-weight: 400; }

div.wpcf7-validation-errors, div.wpcf7-acceptance-missing {
  margin: 0;
  padding: 1em;
  background-color: #f8ea19;
  border: 0;
  border-radius: .125em; }

.wppb-default-name-heading, .wppb-default-contact-info-heading {
  display: none !important; }

#wpgmza_map {
  margin-bottom: 2em; }

/*
|--------------------------------------------------------------------------
| UItoTop jQuery Plugin 1.2
| http://www.mattvarone.com/web-design/uitotop-jquery-plugin/
|--------------------------------------------------------------------------
*/
#toTop {
  display: none;
  text-decoration: none;
  position: fixed;
  bottom: 10px;
  right: 10px;
  overflow: hidden;
  width: 51px;
  height: 51px;
  border: none;
  text-indent: 100%;
  background: url(../images/ui.totop.png) no-repeat left top; }

#toTopHover {
  background: url(../images/ui.totop.png) no-repeat left -51px;
  width: 51px;
  height: 51px;
  display: block;
  overflow: hidden;
  float: left;
  opacity: 0;
  -moz-opacity: 0;
  filter: alpha(opacity=0); }

#toTop:active, #toTop:focus {
  outline: none; }

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