
@font-face {
    font-family: "Lato-Light";
    src: url("../fonts/lato/Lato-Light.eot");
    src: url("../fonts/lato/Lato-Light.eot?#iefix") format("embedded-opentype"),
    url("../fonts/lato/Lato-Light.woff2") format("woff2"),
    url("../fonts/lato/Lato-Light.woff") format("woff"),
    url("../fonts/lato/Lato-Light.ttf") format("truetype"),
    url("../fonts/lato/Lato-Light.svg") format("svg");
}

@font-face {
    font-family: "Lato-Regular";
    src: url("../fonts/lato/Lato-Regular.eot");
    src: url("../fonts/lato/Lato-Regular.eot?#iefix") format("embedded-opentype"),
    url("../fonts/lato/Lato-Regular.woff2") format("woff2"),
    url("../fonts/lato/Lato-Regular.woff") format("woff"),
    url("../fonts/lato/Lato-Regular.ttf") format("truetype"),
    url("../fonts/lato/Lato-Regular.svg") format("svg");
}

@font-face {
    font-family: "Lato-SemiBold";
    src: url("../fonts/lato/Lato-Semibold.eot");
    src: url("../fonts/lato/Lato-Semibold.eot?#iefix") format("embedded-opentype"),
    url("../fonts/lato/Lato-Semibold.woff2") format("woff2"),
    url("../fonts/lato/Lato-Semibold.woff") format("woff"),
    url("../fonts/lato/Lato-Semibold.ttf") format("truetype"),
    url("../fonts/lato/Lato-Semibold.svg") format("svg");
}

@font-face {
    font-family: "Lato-Bold";
    src: url("../fonts/lato/Lato-Bold.eot");
    src: url("../fonts/lato/Lato-Bold.eot?#iefix") format("embedded-opentype"),
    url("../fonts/lato/Lato-Bold.woff2") format("woff2"),
    url("../fonts/lato/Lato-Bold.woff") format("woff"),
    url("../fonts/lato/Lato-Bold.ttf") format("truetype"),
    url("../fonts/lato/Lato-Bold.svg") format("svg");
}

@font-face {
    font-family: "Montserrat-Black";
    src: url("../fonts/Mont/Montserrat-Black.eot");
    src: url("../fonts/Mont/Montserrat-Black.eot?#iefix") format("embedded-opentype"),
    url("../fonts/Mont/Montserrat-Black.woff2") format("woff2"),
    url("../fonts/Mont/Montserrat-Black.woff") format("woff"),
    url("../fonts/Mont/Montserrat-Black.ttf") format("truetype"),
    url("../fonts/Mont/Montserrat-Black.svg") format("svg");
}

body{
  font-family: "Lato-Regular";
  -webkit-font-smoothing: antialiased;
  margin: 0;
  font-weight: normal;
}

h1, h2, h3, h4{
    font-family: "Lato-Bold";
    font-weight: normal;
}

h1{ font-size: 30px; }
h2{ font-size: 22px; }
h3{ font-size: 20px; }
h4{ font-size: 18px; }

h1{ margin-top: 0; margin-bottom: 0; }

p, li, a{
    font-size: 15px;
    -webkit-font-smoothing: antialiased;
    line-height: 27px;
    color: #404040;
    letter-spacing: 0.2px;
}

a:hover{ color: #272727; text-decoration: underline; }
a[href^="tel"] {
  color: #fff;
}

strong{ font-family: "Lato-Bold"; font-weight: normal;}

.regular{ font-family: "Lato-Regular"; font-weight: normal; }

.fl-left{ float: left;}
.fl-right{ float: right;}
.fl-width{width: 100%;}

.img-fluid{
    max-width: 100%;
    height: auto;
}

.no-padding{padding: 0;}

.icon{ display: block;}

a.no-underline{ text-decoration: none; }
.uppercase{ text-transform: uppercase; }
.text-center{ text-align: center;}
.center { display: block; margin-left: auto; margin-right: auto; }
.news_card.no-border{ border: 0; }
/* COLOURS */

.grey-bkgr{
    background-color: #eeeeee;
}
.medgrey-bkgr{
    background-color: #788087;
}
.blue-bkgr{
    background-color: #576e82;
}
.white-text, .white-text p{
    color: #fff;
}
.grey-text{
    color: #404040;
}
/* PADDING */
.p-4{
    padding: 4em;
}
.p-3{
    padding: 3em;
}

@media (max-width: 680px){
  .p-3{
    padding: 1em;
  }
}

.p-2{
    padding: 2em;
}


/* BUTTONS*/

.yellow-btn, .darkbl-btn, .lightbl-btn, .full-form input[type=submit]{
    color: #fff;
    border-radius: 4px;
    padding: 15px;
    text-transform: uppercase;
    text-decoration: none;
    font-size: 13px;
    font-family: "Lato-Bold";
    transition: border 0.3s;
}

.yellow-btn{
    background-color:#edb250;
}

.darkbl-btn{
    background-color: #383d47;
}

.lightbl-btn{
    background-color: #5b869b;
}

.yellow-btn:hover, .darkbl-btn:hover, a.yellow-border:hover{
    color: #fff;
    background: transparent;
    text-decoration: none;
}

.yellow-btn:hover, a.yellow-border:hover{
    border: 2px solid #edb250;
}

.darkbl-btn:hover{
    border: 2px solid #383d47;
}

.btn-space{
    margin-top: 2em;
}

/* FLEX */

.flex-grid, .flex-grid-four, .flex-grid-form{
    display: flex;
    flex-wrap: wrap;
    margin-left: -10px;
    margin-top: -10px;
}

.flex-grid .col, .flex-grid-four .col, .flex-grid-form .col{
    flex: 1 0 300px;
    box-sizing: border-box;
    padding: 10px;
    margin-left: 10px;
    margin-top: 10px;
}

.flex-grid-four .col{
    flex: 1 0 200px;
}

.flex-grid .col-3{
    flex: 0 0 29%;
    max-width: 29%;
    flex-wrap: wrap;
}

.flex-grid .col-4{
   flex: 0 0 40%;
    max-width: 40%;
    flex-wrap: wrap;
}

.flex-grid .col-5{
   flex: 0 0 50%;
    max-width: 50%;
    flex-wrap: wrap;
}

.flex-grid .col-6{
    flex: 0 0 60%;
    max-width: 60%;
    flex-wrap: wrap;
}

.flex-grid .col-7{
    flex: 0 0 70%;
    max-width: 70%;
    flex-wrap: wrap;
}

.flex-grid .col-8{
    flex: 0 0 80%;
    max-width: 80%;
    flex-wrap: wrap;
}

.flex-grid .col-9{
    flex: 0 0 90%;
    max-width: 90%;
    flex-wrap: wrap;
}

.flex-grid .col-12{
    flex: 0 0 100%;
    max-width: 100%;
    flex-wrap: wrap;
}


.flex-gap{
    justify-content: space-between;
}

.slide-container > .slide-item, .form-container, .service-container, div.wpcf7, .main-container{
    max-width: 1200px;
    margin: auto;
}

/* FRONT PAGE ELEMENTS */


.main-container img, .service-container img{
     max-width: 100%;
    height: auto;
}

.main-banner{
    min-height: 550px;
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
}

.darken-pseudo{
    position: relative;
}

.darken-pseudo:after{
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    display: block;
    background: rgba(3, 27, 75, 0.6);
}

.flex-caption{
    background-color: rgba(0, 0, 0, 0.6);
    position: inherit;
    width: 100%;
    height: 550px;
}

.flex-caption h1{
    font-size: 55px;
    margin-bottom: 0.5em;
    line-height: 55px;
}

.flex-caption h2{
    font-size: 40px;
    margin-top: 0;
    font-family: "Lato-Regular";
    line-height: 40px;
}

.large-slider .flex-control-paging li a, .large-slider .flex-control-paging li a:hover{
    background: #fff;
}

.large-slider .flex-control-nav{
    text-align: center!important;
    bottom: 20px;
}

.large-slider .flex-control-nav li{
    display: inline-block;
}

.large-slider .flex-control-paging li a.flex-active{
    background: #edb250;
}

.caption-spacing{
    padding-top: 12em;
}

.single-title{
  background-color: #E4E8EE;
  text-align: center;
  margin-top: 4em;
}

@media (max-width: 1024px){
  .single-title{
    padding-top: 9em;
  }
}

@media (max-width: 480px){
  .single-title{
    padding-top: 7em;
  }
}


@media (max-width: 1137px){
  .flex-caption h1{
    font-size: 45px;
  }
  .flex-caption h2{
    font-size: 35px;
  }
  .caption-spacing{
    padding-left: 7em;
    padding-right: 7em;
  }
}

@media (max-width: 680px){
  .caption-spacing{
    padding-left: 6em;
    padding-right: 6em;
    padding-top: 11em;
  }
  .flex-caption h1{
    font-size: 35px;
    line-height: 40px;
  }
  .flex-caption h2{
    font-size: 30px;
  }
  .flex-caption{
    height: 450px;
  }
  .main-banner{
    min-height: 450px;
  }
}


@media (max-width: 480px){
  .caption-spacing{
    padding-left: 4em;
    padding-right: 4em;
    padding-top: 11em;
  }
  .flex-caption h1{
    font-size: 25px;
    line-height: 33px;
  }
  .flex-caption h2{
    font-size: 21px;
    line-height: 26px;
  }
}

.service-item h3{
    letter-spacing: 1px;
    font-family: "Lato-Regular";
    font-weight: normal;
    border-bottom: 1px solid #edb250;
    display: inline-block;
    padding-bottom: 11px;
}

.service-item hr{
    margin-top: -21px;
    border-top: 1px solid #a1acb6;
    width: 90%;
}

.service-item{
    padding-right: 1em;
}

.small-slide{
    padding: 3em 4em 1em 4em;
}

.small-slider-img{
    background-position: center;
    background-size: cover;
    min-height: 400px;
    border-top-left-radius: 14em;
    border-bottom-left-radius: 14em;
}

.small-slider .flex-control-nav li{
    margin: 10px 20px!important;
    display: block!important;
    zoom: 1.2!important;
}

.small-slider .flex-control-nav{
    bottom: 200px!important;
    left: 0;
    text-align: left!important;
    width: auto!important;
}

.small-slider .flex-direction-nav, .large-slider .flex-direction-nav{
    display: none;
}

.flexslider{
    border: 0!important;
    margin: 0!important;
    border-radius: 0!important;
}

.flexslider .slides{
  margin-top: 1em!important;
}

.small-slider .flexslider .slides > li{
    background-color: rgb(120, 128, 135);
}

.small-slider{
    background-color: #788087!important;
}

ul.recent-posts{
    padding: 0;
    color: #fff;
    list-style: none;
}

/* LINKS */

.more strong{
    font-size: 13px;
    letter-spacing: 1px;
}

.fa-arrow-right{
    color: #788087;
    margin-left: 0.3em;
}

.more {
    transition: border 0.5s;
    border: 1px solid #edb250;
    padding: 0.5em;
}

.more:hover {
    border: 1px solid #a1acb6;
}


/* navigation */

/* open and close burger */
#menu {
    position: fixed;
    width: 100%;
    top: 0px;
    background: transparent;
    z-index: 99;
    transition: all ease .3s;
    margin-top: 3.5em;
    justify-content: space-between;
}

#menu a,
#menu button {
    line-height: 28px;
    color: #fff;
    margin: 5px 16px;
    padding: 0;
    text-decoration: none;
    font-size: 15px;
    text-transform: uppercase;
}

#menu button{
    margin-right: 0;
    padding: 22px;
    padding-right: 0;
}

#logo {
    display: block;
    margin-left: auto;
    margin-right: auto;
    width: 300px;
    margin-top: 1em;
    margin-bottom: 2em;
    padding-left: 4em;
}

/* this makes sure the menu appears visible when clicked */
#menu.open, #menu {
    background-color: #1e4e79;
}

.menu-full #menu{
    margin-top: 0;
}

nav {
  width: 100%;
  margin: 0 auto;
  list-style: none;
  display: flex;
  justify-content: space-around;
  align-items: center;
  background-color: #1e4e79;
}

nav .dropdown button{
  width: max-content;
  padding: 10px 20px;
  text-align: center;
  background: none;
  outline: none;
  border: none;
  color: #111;
}

nav .dropdown button span {
  display: none;
}

#menu .column a,
#menu .full-column a{
    font-size: 15px;
    line-height: 28px;
    color: #000;
    text-decoration: none;
    text-transform: uppercase;
    font-family: "Lato-Regular";
}

#menu .full-column a{
    border-bottom: 2px solid #FFF;
    padding-bottom: 5px;
}

#menu .dropdown .row .column h3.top a,
#menu .full-column h3 a{
    font-family: "Lato-Bold";
}

#menu .dropdown .row .column h3.top{
    margin-bottom: 10px;
}

.nav-links{
    display: flex;
    align-items: baseline;
}

.menu-full nav{
    padding: 0;
}

.nav-content {
  display: none;
  position: absolute;
  left: 0;
  width: 100%;
  margin: 0;
  padding: 2em 0;
  background: #B9C3CE;
  text-align: left;
  z-index: 2;
}

.flex{
    display: flex;
}

#menu .nav-content .row{
    display: flex;
    width: 80%;
    flex-direction: column;
    flex-flow: wrap;
    margin: auto;
    margin-right: 0;
}

#menu .nav-content .row.single-link{
    width: 20%;
    margin-top: 0;
    text-align: center;
}

.dropdown:hover .nav-content {

  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}

.column, .full-column {
    display: flex;
    flex-direction: column;
    overflow: hidden;
    -ms-flex-preferred-size: 33.333%;
    flex-basis: 33.333%;
    max-width: 33.333%;
}

.full-column{
    flex-basis: 100%;
    max-width: 100%;
}

.column ul{
    list-style: none;
    padding: 0;
    margin: 0;
}

.hamburger {
  width: 30px;
  height: 27px;
  justify-content: space-between;
  align-items: center;
  flex-direction: column;
  display: none;
}
.hamburger:hover{
  cursor: pointer;
}
.hamburger .bar {
  width: 100%;
  height: 4px;
  background: #fff;
  border-radius: 5px;
}
.rotate {
  transform: rotate(90deg);
}
.menu-list{
    margin-right: 25px;
}

@media (max-width: 1024px){
      body.home .header,
      .header {
        display: flex;
        justify-content: space-between;
        position: fixed;
        background-color: #1e4e79;
        width: 100%;
        padding: 1em 0;
        z-index: 2;
        margin-top: 3em;
      }
      .header{
        margin-top: -1em;
      }
      .hamburger {
        display: flex;
        margin-right: 10px;
        margin-top: 30px;
      }
      nav {
        width: 100%;
        flex-direction: column;
        height: 100%;
        padding: unset;
        margin: unset;
        text-align: left;
        align-items: flex-start;
        justify-content: flex-start;
        display: none;
      }
      nav .dropdown{
        width: 100%;
        padding: 0;
        margin: 0;
        padding-bottom: 4px;
      }

      nav .dropdown button {
        width: 100%;
        display: flex;
        justify-content: space-between;
        align-items: center;
      }
      nav .dropdown button span {
        display: inline;
      }
      nav .dropdown button:hover{
        color: black;
        text-decoration: none;
        cursor: unset;
      }
      nav .dropdown:hover .nav-content {
        display: none;
      }
      .nav-content {
        display: none;
      }
      #menu .row {
        flex-direction: row;
        padding: 0;
        margin: 0;
      }
      .column {
        padding: 1em 0px;
        margin: 0 0 10px 0;
      }
      .seeAll{
        margin-bottom: 20px;
      }
      #menu{
        position: fixed;
        top: 5.5em;
        height: auto;
      }
      #menu #logo{
        display: none;
      }
    #logo {
        width: 200px;
        margin: 0px 27px 10px;
    }
    #menu a{
        margin-left: 26px;
    }
    #menu button{
        margin-bottom: 0;
        margin-left: 0;
        padding: 0;
    }
     #menu button a{
        margin-left: 0;
     }
    .nav-links{
        flex-flow: column;
    }
    #menu .nav-content .row{
        width: 100%;
    }
    .column ul{
        display: none;
    }
    nav .dropdown{
        padding-bottom: 0;
    }
    #menu .site-logo, .full-column{
        display: none;
    }
    .flexslider .slides{
      margin-top: 7em!important;
    }

}

@media (max-width: 480px){
    .hamburger{
        margin-top: 25px;
    }
    .flexslider .slides{
      margin-top: 9em!important;
    }
}

/* Animation for hamburger menu */
.animInfo {
  animation-duration: .5s;
  animation-fill-mode: forwards;
  animation-timing-fucntion: ease;
}
@keyframes bar1Anim {
  0%{transform: rotate(0deg) translate(0px);}
  100%{transform: rotate(45deg) translate(6px, 10px);}
}
@keyframes bar2Anim {
  0%{opacity: 1;}
  100%{opacity: 0;}
}
@keyframes bar3Anim {
  0%{transform: rotate(0deg) translate(0px);}
  100%{transform: rotate(-45deg) translate(6px, -10px);}
}

@keyframes bar1AnimReverse {
  0%{transform: rotate(45deg) translate(6px, 10px);}
  100%{transform: rotate(0deg) translate(0px);}
}
@keyframes bar2AnimReverse {
  0%{opacity: 0;}
  100%{opacity: 1;}
}
@keyframes bar3AnimReverse {
  0%{transform: rotate(-45deg) translate(6px, -10px);}
  100%{transform: rotate(0deg) translate(0px);}
}

/* Animation for navigation appearing */
@keyframes navAnim {
  0%{opacity: 0;}
  100%{opacity: 1;}
}
@keyframes navAnimReverse {
  0%{opacity: 1;}
  100%{opacity: 0;}
}
@media (min-width: 801px){
  nav {
    opacity: 1 !important;
  }
}

.top-nav{
    height: 56px;
    width: 100%;
    background-color: #576e82;
    position: fixed;
    z-index: 9999;
    top: 0;
}

.top-nav ul{
  display: flex;
  justify-content: flex-end;
  list-style: none;
  padding-right: 5px;
  padding-left: 0;
}

.top-nav ul li a{
  color: #fff;
  text-decoration: none;
  text-transform: uppercase;
  margin: 0px 10px;
}

.top-nav ul li.phone-no a{
  font-size: 24px;
}

.phone-icon{
  width: 22px;
  position: relative;
  top: 3px;
  margin-right: 8px;
}


@media (max-width: 677px){
   .top-nav ul li:nth-child(-n+3) a{
    display: none;
   }
   .top-nav ul li.phone-no a{
    font-size: 20px;
   }
   .top-nav ul li a.yellow-btn{
    padding: 10px;
   }
   .top-nav ul{
    justify-content: center;
   }
}

/* TESTIMONIAL CIRCLE */

.circle-container {
    width: 100%;
    max-width: 1150px;
    display: block;
    margin-left: auto;
    margin-right: auto;
    margin-top: 7em;
    margin-bottom: 9em;
    position: relative;
}

.circle {
    position: absolute;
    display: inline-block;
    width: 50%;
    height: 0;
    padding: 24% 0;
    border-radius: 50%;
    background: rgba(3, 27, 75, 0.6);
    color: #fff;
    text-align: center;
    }

.circle-inner p{
    line-height: 32px;
    font-size: 17px;
}

.circle-inner h4{
    line-height: 33px;
    margin-bottom: 10px;
}

.circle-inner:before, .circle-inner:after{
    font-family: "Montserrat-Black";
}

.circle-inner:before {
    color: #edb250;
    content: open-quote;
    font-size: 13em;
    line-height: 0.1em;
    margin-right: 0.25em;
    vertical-align: -0.4em;
    float: left;
    position: relative;
    bottom: 175px;
    left: 45px;
}

.circle-img{
    background-position: top center!important;
    background-size: cover!important;
    background-repeat: no-repeat!important;
    min-height: 500px!important;
    width: 70%;
    text-align: right;
    margin-left: auto;
}

blockquote{
    clear: both;
    position: relative;
    bottom: 130px;
    color: #fff;
    padding-left: 1em;
    padding-right: 1em;
}

blockquote .yellow-border{
    border-bottom: 1px solid #edb250;
    width: 50%;
    margin-left: auto;
    margin-right: auto;
    display: block;
}

.testimonial-cards .cards {
  display: initial;
  flex-wrap: wrap;
  list-style: none;
  margin: 0;
  padding: 0;
}

.testimonial-cards .testimonial-header h2 a p{
    margin-bottom: 0;

}

h4.read-more a{
    font-size: 18px;
    font-family: "Lato-Bold";
    float: right;
}

h4.read-more{
    margin-top: 10px;
}

/* FORM ELEMENTS */

.full-form, .full-form textarea, .full-form input{
    font-size: 15px;
    display: block;
    margin-left: auto;
    margin-right: auto;
}
.full-form input{
    width: 80%;
}
.full-form input, .full-form textarea{
    height: 30px;
    border: none;
    padding: 1em;
    margin-bottom: 1em;
    margin-top: 1em;
}
.full-form textarea{
    height: auto;
    width: 93.3%;
    font-family: "Lato-Regular";
}
.full-form input[type=submit]{
    color: #fff;
    width: 135px;
    height: auto;
    background-color: #5b869b;
    justify-content: center;
    cursor: pointer;
    font-size: 14px;
    letter-spacing: 0.2px;
}
.full-form input[type=submit]:hover{
    color: #404040;
    background: transparent;
    text-decoration: none;
    border: 2px solid #5b869b;
}


/* PEOPLE PAGE */

.small-banner, .post-title{
    position: relative;
    z-index: 9999;
    top: 11em;
    padding-bottom: 1em;
}


.btn {
  background-color: white;
  border: 1px solid #edb250;
  color: #edb250;
  padding: 0.5rem;
  text-transform: lowercase;
  text-transform: uppercase;
  font-size: 14px;
  transition: border 0.5s;
}
.btn_block {
    bottom: 36px;
    position: absolute;
    width: 75%;
    left: 0;
    right: 0;
    text-align: center;
    margin-left: auto;
    margin-right: auto;
}

.btn:hover{
    color: #a1acb6;
    text-decoration: none;
    cursor: pointer;
    border: 1px solid #a1acb6;
}


.cards {
  display: flex;
  flex-wrap: wrap;
  list-style: none;
  margin: 0;
  padding: 0;
}

.news_list .cards{
    display: inherit;
}

.cards_item {
  display: flex;
  padding: 1rem;
  position: relative;
  margin-bottom: 1em;
}

.card {
  background-color: white;
  border-radius: 0.25rem;
  box-shadow: 0 20px 40px -14px rgba(0, 0, 0, 0.25);
  flex-direction: column;
  overflow: hidden;
  width: 100%;
}

.card_content {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  padding: 2em 2em 5em 2em;
}
.card_content p{
    font-size: 14px;
    line-height: 21px;
}
.card_image {
  border-top-left-radius: 0.25rem;
  border-top-right-radius: 0.25rem;
}
.card_image::before {
  content: "";
  display: block;
  padding-top: 56.25%;
}
@media (min-width: 40rem) {
  .card_image::before {
    padding-top: 66.6%;
  }
}
.card_title, .news_card h2 a {
  color: #696969;
  font-size: 1.25rem;
  font-weight: bold;
  letter-spacing: 2px;
  text-transform: uppercase;
}
.card_position{
    color: #696969;
    border-bottom: 1px solid #eee;
    padding-bottom: 10px;
    line-height: 20px;
    padding-top: 6px;
}
.card_text {
  flex: 1 1 auto;
  font-size: 0.875rem;
  line-height: 1.5;
  margin-bottom: 1.25rem;
}

.people-tags.tags-section li{
    margin-right: 2em;
}

.tags-section li{
    display: inline-block;
    list-style: none;
    background-color: #edb250;
    color: #fff;
    border-radius: 10px;
    padding: 5px 10px 5px 10px;
    margin-bottom: 10px;
}

.tags-section li a {
    text-decoration: none;
}

.tags-section{
    display: block;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
    margin-bottom: 2em;
}

.contact-details .related-posts li{
    background-color: #fff;
    color: #404040;
    font-size: 17px;
    margin-bottom: 10px; 
}

.contact-details{
    margin-bottom: 3em;
}

.single-person{
    background-repeat: no-repeat;
    background-position: center center; 
    min-height: 380px;
    margin-left: 2.5em;
}

.tags-section .related-posts{
    text-align: left;
}

.tags-section .related-posts li{
    margin-bottom: 1em;
    display: table;
}

.tags-section .related-posts a{
    color: #fff;
}
.tags-section .related-posts a:hover{
    color: #404040;
}


/* SERVICES PAGE */

.service .circle, .service .light-circle, .service .lighter-circle{
    display: inline-block;
    position: relative;
    width: 30%;
    height: 0;
    padding: 14% 0px;
    border-radius: 50%;
    background: rgba(3, 27, 75, 0.6);
    color: #fff;
    text-align: center;
    margin-right: 30px;
}
.service .light-circle{
    background: rgba(3, 27, 75, 0.4);
}
.service .lighter-circle{
    background: rgba(3, 27, 75, 0.2);
}
.service .circle span{
    font-size: 32px;
    font-family: "Lato-Bold";
    line-height: 0px;
    text-align: center;
    display: block;
    margin-left: auto;
    margin-right: auto;
    width: 50%;
}
.circle-padding{
    padding: 4em;
    padding-bottom: 0;
}
.round-arrow{
    margin-top: -45px;
}
.service-container{
    max-width: 800px;
    margin: auto;
    text-align: center;
}
.service-item-container{
    max-width: 1200px;
    margin: auto;
    text-align: center;
    justify-content: center;
}
.service-col.flex-grid{
    justify-content: center;
}
.service-col h3 a{
    display: block;
    font-family: "Lato-Regular";
    color: #404040;
    text-decoration: none;
    font-size: 18px;
    border-bottom: 1px solid #eee;
    padding-bottom: 10px;
}
.service-col a.more{
    font-size: 13px;
    text-align: center;
    display: block;
    width: 35%;
    margin-left: auto;
    margin-right: auto;
    color: #edb250;
}
.service-col a.more:hover{
    color: #a1acb6;
}
.service-col p, .service-col h3{
    padding-left: 1em;
    padding-right: 1em;
}
.service-center{
    margin-bottom: 2em;
}
.service h2{
    line-height: 36px;
    color: #696969;
    font-family: "Lato-Regular";
}
.service .circle .circle-content:before {
    color: #edb250;
    content: "\2192";
    font-size: 6em;
    line-height: 0.1em;
    margin-right: 0.25em;
    vertical-align: -0.4em;
    float: left;
    position: relative;
    left: -58px;
    font-family: "Montserrat-Black";
}

.service .circle:first-child .circle-content:before{
    content: none;
}

/* NEWS PAGE*/

.news_card .cards_item{
  display: flex;
  flex-direction: column;
  width: 100%;
  background-color: #fff;
  padding: 3em 6em 3em 6em;
  border-radius: 0.25rem;
  box-shadow: 0 5px 40px -14px rgba(0, 0, 0, 0.25);
  margin-bottom: 20px;
}

.news_card{
  border-bottom: 1px solid #eee;
  display: flex;
}

.news_card h2{
  border-bottom: 1px solid #eee;
  padding-bottom: 17px;
}

.news_card h4{
  font-size: 13px;
  border-bottom: 2px solid #edb250;
  height: 25px;
  display: inline-block;
}

.news_card p{
  margin-top: 6px;
}

.news_card .yellow-btn{
  width: 100px;
  padding: 10px 7px 10px 7px;
  text-align: center;
  display: block;
}

.news_card .yellow-btn:hover, a.yellow-border:hover{
  color: #edb250;
}

.news_pag li a,
.news_pag li a:hover,
.news_pag li.active a,
.news_pag li.disabled {
    color: #fff;
    text-decoration:none;
}
 
.news_pag li {
    display: inline;
}
 
.news_pag li a,
.news_pag li a:hover,
.news_pag li.active a,
.news_pag li.disabled {
    background-color: #576e82;
    border-radius: 3px;
    cursor: pointer;
    padding: 12px;
    padding: 0.75rem;
}
 
.news_pag li a:hover,
.news_pag li.active a {
    background-color: #1e4e79;
}

.content a{
    color: #576e82;
    font-family: "Lato-Bold";
}

.content p{
    padding-right: 3em;
    padding-bottom: 0.5em;
}


.xsmall-img, .small-img{
    background-position: center center; 
    background-size: cover; 
    background-repeat: no-repeat; 
    min-height: 450px;
    z-index: -1;
}

.single-post h4, .single-post h5{
    color: #edb250;
    font-family: "Lato-Light";
    font-size: 22px;
    padding-bottom: 11px;
    margin: 0;
}

.single-post h5{
    font-size: 15px;
    padding-top: 1em;
    color: #fff;
    letter-spacing: 2px;
}

.single-post h1{
    font-size: 50px;
    border-bottom: 1px dotted #eee;
    padding-bottom: 12px;
}

.single-post .small-banner{
    top: 10em;
}

.single-post .post-title{
    top: 8em;
}

.single-post.img-fluid{
    border-bottom: 4px solid #edb250;
}

.related-posts ul{
    list-style: none;
}

.related-posts a{
    text-decoration: none;
    color: #696969;
    line-height: 0;
    font-size: 1rem;
}

.related-posts h3{
    margin-left: 2em;
    color: #696969;
    border-bottom: 1px solid #eee;
    padding-bottom: 12px;
}

a.yellow-border{
    color: #edb250;
    border: 1px solid #edb250;
    display: block;
    text-align: center;
    padding: 14px;
    margin-bottom: 2em;
    text-transform: uppercase;
    font-size: 14px;
    transition: border 0.5s;
    background-color: #edb250;
    color: #fff;
    border-radius: 10px;
    padding: 17px 10px 17px 10px;
}

.related-posts h5{
    font-size: 12px;
    padding-top: 1em;
    letter-spacing: 2px;
    margin-top: 0;
    font-family: "Lato-Bold";
    padding: 2px;
}


/* ABOUT / PARTNER PAGE */


.partner-logo{
    display: block;
    margin-left: auto;
    margin-right: auto;
    padding-top: 1em;
    padding-bottom: 2em;
    width: 80%
}
.partner-content .card_position{
    position: absolute;
    bottom: 100px;
    width: 76%;
}
.full-row.flex-grid{
    margin-left: 0;
    margin-top: 0;
}
.about-col{
    padding: 4em;
}
.about-img{
    min-height: 350px;
}

/*.img-container{
    position: absolute;
    width: 91%;
}*/

/* CONTACT PAGE*/


 .contact-content .flex-grid-form .col, .content-submit{
    flex: 1 0 200px;
    padding: 0;
    margin-top: 0;
    margin-left: 0;
}

.contact-content .full-form input[type=submit]{
    float: right;
    margin-right: 15px;
}

.contact-content .full-form input, .contact-content .full-form textarea{
    border: 1px solid #5b869b;
}

.contact-content .related-posts h3{
    margin-top: 0;
}

.contact-social .fa-twitter, .contact-social .fa-linkedin-in  {
    font-size: 35px;
    text-align: center;
    color: #fff;
    padding-left: 8px;
}

.contact-social .fa-circle{
    color: #404040;
    font-size: 50px;
}

.contact_icons{
    display: inline-flex;
}

.contact_icons li{
    margin-right: 2.5em;
}

div.wpcf7-response-output{
    margin: 4em 0.5em 1em;
}
/* FOOTER */

footer{
    background:
    linear-gradient(
       to left,
       #5b869b 0, 
       #5b869b 33.3%,
       #788087 33.3%, 
       #788087 66.6%, 
       #edb250 66.6%, 
       #edb250 )no-repeat;
   background-size:100% 4px;
   background-color: #212121;
}
footer .flex-grid-four .col{
    border-right: 1px solid #444242;
}
footer .flex-grid-four .col:nth-last-child(1){
    border-right: 0;
}
footer h3{
    margin-bottom: 0;
    padding-left: 1.3em;
}
footer p{
    font-size: 13px;
    padding-left: 2em;
    padding-right: 2em;
    line-height: 21px;
}
footer h4{
    color: #fff;
    margin-top: 10px;
}
footer h4 a{
    color: #fff;
    text-decoration: none;
    text-transform: uppercase;
    margin-left: 25px;
    margin-top: 0;
}
footer h4 a:hover{
    color: #fff;
    text-decoration: underline;
}
.footer-container{
    max-width: 1200px;
    margin: auto;
}

span.footer-no{
    font-family: "Lato-Bold";
    font-size: 16px;
}

ul.social_icons{
  display: inline-flex;
  list-style-type: none;
  padding: 0;
}

ul.social_icons li{
  margin-top: 0;
  margin-right: -13px;
}

.fa-twitter, .fa-linkedin-in  {
    font-size: 40px;
    text-align: center;
    color: #212121;
}

.fa-circle{
    color: #fff;
    font-size: 50px;
}

.bottom-footer{
    background-color: #000;
    text-align: center;
    color: #fff;
    padding: 1em;
    font-size: 10px;
}

.bottom-footer a, .bottom-footer span{
    font-size: 12px;
}

/* NEWSLETTER*/
#mc_embed_signup .mc-field-group{
    min-height: 37px!important;
    border-radius: 0;
    padding-bottom: 0!important;
    margin-bottom: 1.3em;
    padding-left: 1.3em;
}
#mc_embed_signup form{
    padding: 15px 0 0px 0%;
}
#mc_embed_signup .mc-field-group input{
    font-size: 14px;
    padding: 12px 0!important;
    border-radius: 0;
}

.signup.yellow-btn{
    margin-left: 1.6em;
}

/* MEDIA QUERIES*/

@media screen and (max-width: 1199px) {
   .small-slide{
    padding: 3em 2em 3em 4em;
   }
   .small-banner{
    margin-left: 30px;
    margin-right: 30px;
   }
   .single-post .post-title{
    width: 80%;
    }
}

@media screen and (max-width: 1109px) {
   .service .circle, .service .light-circle, .service .lighter-circle{
    margin-right: 8px;
   }
   .circle-padding{
    padding: 0;
    margin-top: 1em;
    margin-bottom: 2em;
   }
   .service .circle span{
    font-size: 28px;
   }
}

@media screen and (max-width: 1064px) {
    footer .flex-grid-four .col{
        flex: 1 0 400px;
   }
}

@media screen and (max-width: 1047px) {
   .flex-grid-form .col{
    flex: 1 0 460px;
    }
    .full-form input{
        width: 94%;
    }
    .contact-content input{
        width: 93%;
    }
    .contact-content .flex-grid-form .col{
        flex: 1 0 400px;
    }
    .circle-container{
        margin-top: 0;
        margin-bottom: 0;
    }
    .circle{
        border-radius: 0;
        width: 100%;
        background: 0;
        position: absolute;
        top: 4em;
        z-index: 9999;
    }
    .circle-img{
        width: 100%;
        min-height: 550px!important;
    }
    .round-arrow{
        margin-top: 4em;
    }
    .blue-pseudo {
        position: relative;
        z-index: -111;
    }
    .blue-pseudo:after {
        content: '';
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        display: block;
        background-color: rgba(3, 27, 75, 0.6);
    }
    h4.read-more a{
        float: inherit;
    }
    h4.read-more{
        margin-top: 20px;
        text-align: center;
    }
    .contact-content .full-form input[type=submit]{
        margin-right: 0;
    }

}


@media screen and (max-width: 991px) {
   .circle-none{
    display: none;
   }
   .people-sm.flex-grid .col-3{
    flex: 0 0 45%;
    max-width: 45%;
   }
   .small-slide{
    padding: 1.2em 2em 2em 3em;
   }
   .flex-grid .col-5{
    flex: 0 0 100%;
    max-width: 100%;
   }
   .item-two{
    order: 1;
   }
   .item-one{
    order: 2;
   }
   .small-slider-img{
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
   }
   .single-person{
    min-height: 200px
   }
}

@media screen and (max-width: 947px) {
   footer h3{
    margin-top: 0;
   }
   footer .flex-grid-four .col{
    border-bottom: 1px solid #444242;
    border-right: 0;
   }
}
@media screen and (max-width: 909px) {
   .small-slider-img{
    border-radius: 0;
    min-height: 300px;
   }
   .small-slider .flex-control-nav, .large-slider .flex-control-nav{
    bottom: 30px!important;
    width: auto!important;
    margin-right: 3em!important;
    float: right!important;
    left: auto!important;
    right: 0;
   }
   .small-slider .flex-control-nav li, .large-slider .flex-control-nav li{
    zoom: 1.4!important;
    margin: 5px 5px!important;
    display: inline-block!important;
   }
   div.col.item-two{
    order: 1;
   }
   div.col.item-one{
    order: 2;
   }
   .flex-grid .col{
    flex: 1 0 450px;
   }
}
@media screen and (max-width: 768px) {
   .p-4{
    padding: 3em;
   }
   .flex-grid-four, .flex-grid-form{
    display: block;
   }
   .circle{
    top: 9em;
   }
   .service-item{
    padding-right: 1em;
    margin-bottom: 3em;
   }
   .small-slide {
    padding: 1em 5em 2em 2em;
    }
    .flex-grid .col-7, .flex-grid .col-3, .people-sm.flex-grid .col-3,
    .flex-grid .col-6, .flex-grid .col-4{
      flex: 0 0 100%;
      max-width: 100%;
    }
    .news_card .cards_item{
      padding: 2em 4em 3em 4em;
    }
    .related-posts h3{
        margin-left: 0;
    }
    .related-posts ul{
        padding: 0;
    }
    .contact-details{
        margin-bottom: 0;
        margin-top: 2em;
    }
    .cards{
        display: block;
    }
    .content p{
        padding-right: 1em;
    }
    .single-person{
        min-height: 380px;
        margin-left: 0;
        width: 300px;
    }
    .single-post h1{
        font-size: 40px;
    }
}

@media screen and (max-width: 480px) {
    p, li, a{ font-size: 14px; }
    h1{ font-size: 26px; }
    .single-post h1{ font-size: 22px; }
   .p-4{
    padding: 2em;
   }
   .small-slider h1{
    font-size: 20px;
   }
   .circle-inner:before{
    bottom: 150px;
    font-size: 6em;
   }
   .circle-inner p{
    font-size: 15px;
    line-height: 27px;
   }
   .circle-inner h4{
    line-height: 28px;
    font-size: 16px;
   }
   .circle-img{
    min-height: 500px!important;
   }
   .small-slide {
    padding: 1em 3em 2em 1.5em;
    }
    .card_title, .news_card h2 a{
      font-size: 16px;
      letter-spacing: 1px;
    }
    .news_card .cards_item {
      padding: 2em 3em 3em 3em;
    }
    .about-col{
        padding: 3em;
    }
    .small-img, .xsmall-img{
        min-height: 300px;
    }
    .single-post .post-title{
    top: 4em;
    }
    ul.recent-posts{
        padding-right: 4em;
    }
    h3{
        font-size: 16px;
    }
    .service-item h3{
        border-bottom: 0;
    }
    .service-item hr{
        width: 100%;
    }
    .flex-caption{
       height: 350px;
    }
    .main-banner{
        min-height: 350px;
    }
    .caption-spacing{
        padding-left: 2em;
        padding-right: 2em;
        padding-top: 6em;
    }
    #mc_embed_signup .mc-field-group input{
        width: 90%;
    }
    .site-logo{
        width: 60%;
        margin-top: 10px;
    }
    .phone-icon{
        display: none;
    }
    a[href^="tel"]{
        font-size: 22px;
    }
}

@media screen and (max-width: 370px) {
   .small-slide {
    padding: 1em 8em 6em 1em;
    }
    .p-4{
        padding: 1em;
    }
}




/* latest css changes */

ul.related-articles{
  list-style: none;
  padding: 0;
}

.article-img,
.article-title{
  width: 50%;
}

.article-img{
    line-height: 0;
}

ul.related-articles li img{
  width: 100%;
}

ul.related-articles li{
  background-color: #f0f0f0;
  display: flex;
  margin: 10px 0;
  align-items: center;
}

ul.related-articles li a{
  text-decoration: none;
  font-family: "Lato-Bold";
  line-height: 18px;
  font-size: 16px;
  margin: 0 10px;
  display: flex;
}

ul.related-articles li .article-title a.read-more{
  margin-top: 10px;
  font-family: "Lato-SemiBold";
}

ul.accordion-menu{
  padding: 0;
  list-style: none;
}

li.page_item_has_children > a {
  display: block;
  border: none;
  outline: none;
  text-align: left;
  font-size: 16px;
  color: #204F78;
  text-transform: uppercase;
  text-decoration: none;
  cursor: pointer;
  pointer-events: none; 
  background-color: #f2af32;
  padding: 5px 10px;
  margin: 5px 0px;
  font-family: "Lato-Bold";
}

ul.children {
  background-color: white;
  border-left: 1px solid whitesmoke;
  border-right: 1px solid whitesmoke;
  padding: 0 20px;
  max-height: 0;
  overflow: hidden;
  list-style: none;
  transition: max-height 0.5s ease-in-out;
}

ul.children li a{
  font-family: "Lato-SemiBold";
}

li.page_item_has_children.is-open ul.children{
  max-height: 100%;
  background-color: white;
  transition: 0.5s ease-in-out;
  display: flex;
  flex-direction: column;
}


.service-padding{
    padding-left: 0;
}
@media screen and (min-width: 480px) {
.service-padding{
    padding-left: 20px;
    box-sizing: border-box;
}
}