/*
Theme Name: IaW
Author: Capsule
Author URI: https://capsulemarketing.co.uk/
Description: Responsive WordPress Theme for Capsule
Version: 1.0
*/
/*Variables*/
.wow {
  visibility: hidden; }

body {
  min-width: 320px;
  background: #fff; }
  body.admin-bar .sticky-header {
    top: 32px; }

ol, ul, li {
  list-style: none; }

img {
  max-width: 100%; }

.column:last-child:not(:first-child), .columns:last-child:not(:first-child) {
  float: left; }

.row {
  max-width: 1200px; }

.large-row {
  max-width: 1600px; }

/* FONT STYLES */
h1, h2, h3, h4, h5, h6, p, a, li, ol, blockquote, table, label, body {
  font-family: "aktiv-grotesk", sans-serif;
  font-weight: 400;
  color: #001E46; }

h1, h2, h3, h4, h5, h6 {
  line-height: 1.2em;
  margin-bottom: .75em;
  font-weight: 700; }

h1 {
  font-size: 40px;
  font-weight: 700;
  font-family: "aktiv-grotesk-extended", sans-serif;
  color: #E31B23; }

h2 {
  font-size: 30px;
  font-weight: 700;
  margin-bottom: 1em; }

h3 {
  font-size: 28px;
  font-weight: 700; }

h4 {
  font-size: 24px; }

h5 {
  font-size: 20px; }

h6 {
  font-size: 18px; }

p, label, ul li, ol li {
  font-size: 15px;
  line-height: 1.4em; }

ul li {
  list-style: disc; }

a {
  color: #64C1C7; }

p a:hover {
  color: #001E46; }

blockquote p {
  font-size: 1.6em; }

span.larger {
  font-size: 20px;
  line-height: 28px; }

/* BUTTONS */
.button-wrapper {
  display: inline-flex; }
  .button-wrapper + .button-wrapper {
    margin-top: 16px; }

.btn {
  color: #fff;
  padding: 16px;
  background: #E31B23;
  border-radius: 8px;
  font-size: 16px;
  margin: 0;
  display: inline-flex;
  align-items: center;
  gap: 5px;
  transition: background .5s ease;
  position: relative;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  -webkit-transition-property: color;
  transition-property: color;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  transition: background-color 0.5s ease;
  overflow: hidden;
  line-height: 1; }
  .btn + .btn {
    margin-top: 16px; }

.btn svg {
  margin-left: auto; }
.btn:before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background: #001E46;
  -webkit-transform: scaleX(0);
  transform: scaleX(0);
  -webkit-transform-origin: 50%;
  transform-origin: 50%;
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out; }
.btn:hover {
  color: #fff !important; }
  .btn:hover:before {
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
    background: #001E46; }
.btn:focus:before, .btn:active:before {
  -webkit-transform: scaleX(1);
  transform: scaleX(1);
  background: #001E46; }
.btn:focus {
  color: #fff;
  background: #001E46; }

.blue-btn {
  background: #001E46; }

.white-btn {
  background: #fff;
  color: #001E46 !important; }

/*MOBILE MENU*/
.single-books .main-banner > .row {
  min-height: 0; }
.single-books .main-banner .large-5 {
  padding: 80px 0; }
  .single-books .main-banner .large-5 img {
    display: block;
    margin: 0 auto; }
.single-books .main-banner .button-wrapper {
  margin-top: 1rem; }

p:last-of-type {
  margin-bottom: 0; }
p + .button-wrapper, p + .btn {
  margin-top: 16px; }

.widget-full-width-text.darkblue-back .columns.text-center p:first-of-type {
  font-size: 20px; }

.widget-video .embed-container {
  width: 100%;
  aspect-ratio: 16/9;
  max-width: 800px;
  margin: 0 auto; }
  .widget-video .embed-container iframe {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 10px;
    border: 10px solid #d8e9e9; }

.widget-approach .columns.xpad {
  padding-bottom: 0 !important; }

.button-secondary {
  font-weight: 800;
  color: #001E46; }

p.button-wrapper {
  margin-top: auto;
  margin-bottom: 0 !important; }

.widget-three-block-content.two-cols .row .column {
  width: calc(50% - 12px); }
.widget-three-block-content .three-block {
  height: auto;
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  flex-direction: column; }
  .widget-three-block-content .three-block .btn.red {
    margin-top: auto; }
  .widget-three-block-content .three-block h1, .widget-three-block-content .three-block h2, .widget-three-block-content .three-block h3, .widget-three-block-content .three-block h4, .widget-three-block-content .three-block h5, .widget-three-block-content .three-block h6 {
    font-size: 30px;
    width: 100%; }
  .widget-three-block-content .three-block p {
    width: 100%; }
    .widget-three-block-content .three-block p:last-of-type {
      margin-bottom: 16px; }
.widget-three-block-content .row {
  display: flex;
  flex-wrap: wrap;
  gap: 24px;
  padding: 0.9375rem; }
  .widget-three-block-content .row:before, .widget-three-block-content .row:after {
    display: none; }
  .widget-three-block-content .row .column {
    width: calc(33.3333% - 24px);
    padding: 24px;
    border-radius: 10px; }

.widget-left-content-and-right-image .row,
.widget-right-content-and-left-image .row {
  display: flex;
  flex-wrap: wrap; }
.widget-left-content-and-right-image .content-wrapper,
.widget-right-content-and-left-image .content-wrapper {
  display: flex;
  flex-direction: column;
  justify-content: center; }
.widget-left-content-and-right-image .image-wrapper,
.widget-right-content-and-left-image .image-wrapper {
  aspect-ratio: 1/1; }
  .widget-left-content-and-right-image .image-wrapper img,
  .widget-right-content-and-left-image .image-wrapper img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover; }

#hamburger {
  border-top: 3px solid #E31B23;
  height: 25px;
  width: 30px;
  box-sizing: border-box;
  position: relative;
  z-index: 30;
  margin-left: auto;
  cursor: pointer;
  outline: none;
  margin-right: .9375rem;
  -webkit-transition: all 0.3s ease-in;
  -moz-transition: all 0.3s ease-in;
  -khtml-transition: all 0.3s ease-in;
  -o-transition: all 0.3s ease-in;
  transition: all 0.3s ease-in; }
  #hamburger:before {
    content: "";
    display: block;
    position: absolute;
    height: 3px;
    width: 30px;
    left: 0;
    background: #E31B23;
    top: 8px;
    -webkit-transition: all 0.3s ease-in;
    -moz-transition: all 0.3s ease-in;
    -khtml-transition: all 0.3s ease-in;
    -o-transition: all 0.3s ease-in;
    transition: all 0.3s ease-in; }
  #hamburger:after {
    content: "";
    display: block;
    position: absolute;
    height: 3px;
    width: 30px;
    left: 0;
    background: #E31B23;
    bottom: 0;
    -webkit-transition: all 0.3s ease-in;
    -moz-transition: all 0.3s ease-in;
    -khtml-transition: all 0.3s ease-in;
    -o-transition: all 0.3s ease-in;
    transition: all 0.3s ease-in; }

#hamburger.active {
  border-color: transparent;
  outline: none;
  z-index: 9999999;
  top: 0px; }
  #hamburger.active:before {
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -khtml-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    transform: rotate(45deg);
    width: 32px;
    left: -2px;
    top: 7px; }
  #hamburger.active:after {
    -webkit-transform: rotate(135deg);
    -moz-transform: rotate(135deg);
    -khtml-transform: rotate(135deg);
    -o-transform: rotate(135deg);
    transform: rotate(135deg);
    bottom: 12px;
    width: 32px;
    left: -2px; }

#hamburger.active:before, #hamburger.active:after {
  background: #fff !important; }

.site-nav {
  background: #001E46;
  height: calc(100% - 0px);
  position: fixed;
  top: 0px;
  width: 100%;
  transform: translatex(-100%);
  will-change: transform;
  padding-top: 50px;
  left: 0;
  z-index: 999999; }
  .site-nav .menu-primary-container {
    width: 100%; }

.site-nav.active {
  transform: none; }

.site-nav.animatable {
  transition: all 0.15s;
  transition-timing-function: ease-in; }

.site-nav.active.animatable {
  transition: all 0.3s;
  transition-timing-function: ease-out; }

/*END OF MOBILE MENU*/
/*HEADER STYLES*/
.site-container {
  margin-top: 129px; }

.sticky-header {
  transition: all .4s ease-in-out;
  -webkit-transition: all .4s ease-in-out;
  -moz-transition: all .4s ease-in-out;
  z-index: 999;
  top: 0px;
  position: fixed;
  left: 0px;
  right: 0px; }
  .sticky-header > .columns > .row {
    display: flex;
    align-items: center; }

header {
  padding: 28px 0.5em !important;
  position: relative;
  transition: all .4s ease-in-out;
  -webkit-transition: all .4s ease-in-out;
  -moz-transition: all .4s ease-in-out;
  z-index: 9999;
  background: #fff;
  border-bottom: 3px solid #E31B23; }
  header .row {
    position: relative; }
  header .menu-primary-container {
    display: inline-block;
    text-align: right; }
  header #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link {
    height: auto;
    line-height: 1;
    transition: .5s ease all;
    font-size: 20px;
    padding-top: 0;
    padding-bottom: 0; }
    header #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link span.mega-indicator {
      display: none; }

.logo img {
  max-width: 260px;
  width: 100%; }

.shrink {
  padding: 0.75em 0.5em !important;
  background: #fff;
  transition: .5s ease all; }
  .shrink .logo {
    transition: .5s ease all; }
    .shrink .logo img {
      max-width: 215px;
      transition: all 0.3s; }
  .shrink .mainmenu {
    margin-top: .45em; }
  .shrink .contacts p a {
    font-size: 12px; }
  .shrink #hamburger.active {
    top: -25px; }

.container-scroll {
  position: absolute;
  bottom: 2em;
  left: 0;
  right: 0;
  z-index: 99;
  text-align: center; }
  .container-scroll i {
    font-size: 30px;
    color: #fff; }

.cog-image img {
  position: absolute;
  right: 0;
  bottom: 0;
  width: inherit; }

.main-banner {
  padding: 0px !important; }
  .main-banner h1 {
    margin-bottom: 30px; }
  .main-banner > .row .large-7:first-of-type {
    padding-top: 90px;
    padding-bottom: 90px;
    display: flex;
    flex-direction: column; }
  .main-banner > .row .large-7:last-of-type {
    padding-top: 40px; }
  .main-banner .btn {
    display: flex;
    align-items: center;
    width: inherit;
    gap: 5px; }
  .main-banner .button-wrapper:nth-child(2n) .btn {
    background: #001E46; }
    .main-banner .button-wrapper:nth-child(2n) .btn:hover:before {
      background: #E31B23; }

.cta-block .button-wrapper {
  flex-wrap: wrap;
  justify-content: center; }
.cta-block .btn {
  margin-right: 1em;
  padding: 20px 30px;
  font-size: 16px;
  gap: 15px;
  margin-top: 16px; }
  .cta-block .btn:hover, .cta-block .btn:focus, .cta-block .btn:active {
    background: #FFF;
    color: #001E46 !important; }
    .cta-block .btn:hover svg path, .cta-block .btn:focus svg path, .cta-block .btn:active svg path {
      stroke: #001E46; }
    .cta-block .btn:hover:before, .cta-block .btn:focus:before, .cta-block .btn:active:before {
      background: #FFF; }
.cta-block .btn:nth-child(2n) {
  background: #64C1C7; }

.widget-related-content-in-blocks > .row {
  display: flex;
  flex-wrap: wrap;
  gap: 1.875rem 0; }
.widget-related-content-in-blocks .border {
  padding: 20px;
  color: #001E46;
  display: flex;
  flex-direction: column; }
  .widget-related-content-in-blocks .border h3 {
    min-height: 60px; }
  .widget-related-content-in-blocks .border .button-wrapper {
    margin-top: auto; }
    .widget-related-content-in-blocks .border .button-wrapper .btn {
      margin-top: 16px; }
  .widget-related-content-in-blocks .border .content-wrapper {
    margin-top: auto;
    flex: 1;
    display: flex;
    flex-direction: column; }
  .widget-related-content-in-blocks .border p {
    color: #001E46; }

.three-block {
  background: rgba(100, 193, 199, 0.2);
  height: 100%; }

/*GENERIC STYLES*/
.jarallax {
  position: relative;
  z-index: 0; }

.jarallax > .jarallax-img {
  position: absolute;
  object-fit: cover;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1; }

.icon {
  max-height: 56px;
  margin: 0em auto 1em;
  display: block; }

.filters-button-group {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  display: none !important; }

section {
  padding: 1em 0; }

.grey-back {
  background: #eaeaea; }

.lightgrey-back {
  background: #f1f1f1; }

.blue-back {
  background: #64C1C7; }

.red-back {
  background: #E31B23; }
  .red-back h1, .red-back h2, .red-back h3, .red-back h4, .red-back h5, .red-back h6 {
    color: #FFF; }

.darkblue-back {
  background: #001E46; }

.lightblue-back {
  background: rgba(100, 193, 199, 0.1);
  border-radius: 10px; }

.coloured-block h1, .coloured-block h2, .coloured-block h3, .coloured-block h4, .coloured-block h5, .coloured-block h6, .coloured-block p, .coloured-block li, .coloured-block ul, .coloured-block ol, .coloured-block a, .coloured-block label {
  color: #fff !important; }

.xpad {
  padding: 1em; }

.xpad-tb {
  padding: 1em; }

.xpad-content {
  padding: 1em 1em; }

.np {
  padding: 0; }

.nplr {
  padding-left: 0px;
  padding-right: 0px; }

.breadcrumbs {
  padding: .5em 1em;
  margin-bottom: 0em; }
  .breadcrumbs p {
    margin-bottom: 0;
    font-size: 14px; }
  .breadcrumbs a {
    color: #64C1C7; }

.social li {
  display: inline-block;
  list-style: none;
  margin: 0px;
  text-align: center; }
  .social li a {
    display: inline-block;
    position: relative;
    width: 25px;
    height: 25px;
    border-radius: 50%;
    transition: .5s ease all; }
    .social li a i {
      color: #001E46;
      font-size: 20px;
      font-weight: 100;
      transition: all 0.1s ease-in-out;
      line-height: 1.8em; }
  .social li a:before, .social li a:after {
    display: none; }
  .social li a:hover {
    background: #fff;
    transition: .5s ease all; }
.social li:last-child {
  margin-right: 0px; }
  .social li:last-child a {
    margin-right: 0px; }

.spacer {
  padding: 2em 1em; }

.vacancies-box h2 {
  font-size: 25px; }

/*.team-member{
  position: relative;
  .cog-overlay{
    position: absolute;
    right: 0em;
    bottom: 0em;
    text-align: center;

    .cog{
      max-width: 170px;
    }
    p.name{
      position: absolute;
      bottom: 1em;
      color: #fff;
      margin: auto;
      left: 0;
      right: 0;
      text-align: center;
      font-weight: bold;
      font-size: 18px;
    }
  }
}*/
.image-mask {
  -webkit-mask-image: url(../images/cog-mask.png);
  mask-image: url(../images/cog-mask.png);
  mask-repeat: no-repeat;
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  aspect-ratio: 1000 / 1000; }

.shape2 {
  -webkit-mask-image: url(../images/main-cog-mask.png);
  mask-image: url(../images/main-cog-mask.png);
  mask-repeat: no-repeat;
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  aspect-ratio: 1000 / 1000;
  height: 100%; }

body:not(.home) .shape2 {
  -webkit-mask-image: url(../images/cog3.svg);
  mask-image: url(../images/cog3.svg);
  mask-repeat: no-repeat;
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  aspect-ratio: 600/600;
  height: 100%; }

.image-mask img {
  width: 100%;
  height: 100%;
  object-fit: cover; }

.home .main-banner > .row .large-7:first-of-type {
  max-width: 600px; }
.home .case_studies-slider .post .post-image .category {
  display: none; }
.home .cog-image {
  right: 130px;
  width: 50vw; }
.home .image-mask.shape2 {
  -webkit-mask-image: unset;
  mask-image: unset;
  mask-repeat: unset;
  -webkit-mask-size: unset;
  mask-size: unset; }
  .home .image-mask.shape2 video {
    width: auto;
    height: 100%;
    object-fit: cover; }

.team-member .text-box {
  padding: 1em; }
  .team-member .text-box h2 {
    font-size: 20px; }
  .team-member .text-box h3 {
    font-size: 16px; }
.team-member .read-more {
  font-size: 16px;
  text-align: right;
  margin: 15px 0 0 0;
  color: #E31B23; }

.reveal {
  border: 0px;
  max-width: 900px;
  width: 100%;
  padding: 2em; }

/*END OF GENERIC STYLES*/
/*HOMEPAGE STYLES*/
.case-studies {
  overflow: hidden; }

.cta {
  padding: 0;
  float: left;
  width: 100%; }
  .cta + .case-studies {
    padding-top: calc(105px + 2.5em); }
  .cta .btn {
    padding: 20px 30px;
    font-size: 16px; }
  .cta .row {
    position: relative; }
  .cta .white-bg {
    background: #FFF;
    padding: 48px 24px;
    border-radius: 8px;
    position: absolute;
    top: -105px;
    left: 0;
    width: 100%;
    text-align: center;
    z-index: 2; }

.home-slider h1, .home-slider h2 {
  font-size: 26px; }

.case-studies.banner .btn {
  min-width: unset;
  padding: 20px 30px;
  font-size: 16px; }

.banner {
  position: relative; }
  .banner .btn {
    min-width: 200px;
    font-size: 14px; }
  .banner .red-back {
    padding: 24px; }
    .banner .red-back h4 {
      margin-bottom: 1.5em; }

.text-container {
  max-width: 1200px;
  margin: 0 auto;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0; }

.banner-text, .text {
  margin: auto;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  position: relative; }

.overlay {
  background: rgba(0, 0, 0, 0.6);
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0; }

.full-width-banner-image {
  min-height: 350px;
  height: 100vh; }

.owl-theme .owl-nav {
  position: absolute;
  top: 45%;
  margin: 0;
  left: 0;
  right: 0; }

.owl-theme .owl-nav [class*=owl-]:hover {
  background: none; }

.owl-theme .owl-nav .owl-next {
  right: 0em;
  position: absolute;
  background: none;
  font-size: 30px; }

.owl-theme .owl-nav .owl-prev {
  left: 0em;
  position: absolute;
  background: none;
  font-size: 30px; }

.owl-dots {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0; }

.fa-star {
  color: #001E46; }

.checked {
  color: #64C1C7; }

.number {
  background: #E31B23;
  width: 143px;
  height: 143px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%; }
  .number p {
    font-size: 64px;
    line-height: 1;
    font-weight: 700;
    margin: 0; }

.case_studies-slider .grid-item .post-text {
  flex: 1;
  display: flex;
  flex-wrap: wrap; }
  .case_studies-slider .grid-item .post-text h5, .case_studies-slider .grid-item .post-text p {
    width: 100%; }
  .case_studies-slider .grid-item .post-text p.btn {
    width: auto; }
.case_studies-slider .grid-item div a {
  display: flex;
  flex-direction: column;
  height: 100%; }

.case_studies-slider .post, .case_studies .post {
  border-radius: 25px;
  margin-bottom: calc(.9375rem + .9375rem); }
  .case_studies-slider .post .post-image, .case_studies .post .post-image {
    position: relative;
    aspect-ratio: 370/264; }
    .case_studies-slider .post .post-image img, .case_studies .post .post-image img {
      width: 100%;
      height: 100%;
      object-fit: cover; }
    .case_studies-slider .post .post-image .overlay, .case_studies .post .post-image .overlay {
      background: #001E46;
      background: -webkit-linear-gradient(0deg, rgba(0, 30, 70, 0.51) 0%, rgba(255, 255, 255, 0) 50%);
      background: -moz-linear-gradient(0deg, rgba(0, 30, 70, 0.51) 0%, rgba(255, 255, 255, 0) 50%);
      background: linear-gradient(0deg, rgba(0, 30, 70, 0.51) 0%, rgba(255, 255, 255, 0) 50%);
      filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#001E46", endColorstr="#FFFFFF", GradientType=0); }
    .case_studies-slider .post .post-image .organisation, .case_studies .post .post-image .organisation {
      position: absolute;
      top: 18px;
      right: 18px;
      display: block;
      color: #64C1C7;
      font-size: 16px;
      padding: 5px 10px;
      border-radius: 100px;
      background: rgba(255, 255, 255, 0.9);
      font-weight: 500; }
    .case_studies-slider .post .post-image .category, .case_studies .post .post-image .category {
      color: #fff;
      position: absolute;
      bottom: 18px;
      left: 18px;
      margin: 0px;
      text-transform: uppercase;
      font-weight: bold;
      display: none; }
  .case_studies-slider .post .post-text, .case_studies .post .post-text {
    background: #fff;
    padding: 24px; }
    .case_studies-slider .post .post-text .flex-wrapper, .case_studies .post .post-text .flex-wrapper {
      margin-bottom: 20px; }
    .case_studies-slider .post .post-text p.desc,
    .case_studies-slider .post .post-text h5.desc, .case_studies .post .post-text p.desc,
    .case_studies .post .post-text h5.desc {
      min-height: 45px; }
    .case_studies-slider .post .post-text h5.desc, .case_studies .post .post-text h5.desc {
      margin-bottom: 1rem; }
    .case_studies-slider .post .post-text .stat-wrap, .case_studies .post .post-text .stat-wrap {
      margin-bottom: 30px; }
    .case_studies-slider .post .post-text h5, .case_studies .post .post-text h5 {
      font-size: 20px;
      font-weight: bold;
      margin: 0px; }
      .case_studies-slider .post .post-text h5 + p, .case_studies .post .post-text h5 + p {
        margin-top: 10px; }
    .case_studies-slider .post .post-text p, .case_studies .post .post-text p {
      font-size: 16px;
      color: #001E46; }
      .case_studies-slider .post .post-text p.btn, .case_studies .post .post-text p.btn {
        color: #FFF;
        min-width: unset;
        margin-top: auto; }

.case_studies .post-text {
  border: 1px solid #ddd;
  border-bottom-right-radius: 15px;
  border-bottom-left-radius: 15px; }

.logo-slider {
  margin-bottom: 2em; }
  .logo-slider .owl-stage {
    display: flex; }
    .logo-slider .owl-stage .owl-item {
      display: flex;
      align-items: center; }
  .logo-slider img {
    max-width: 130px;
    max-height: 60px;
    width: auto !important;
    margin: 0 auto; }

.owl-dots {
  bottom: -2em; }

.case-studies .owl-dots {
  bottom: -55px; }
.case-studies .xpad {
  padding-top: 5.5em; }

.owl-theme .owl-dots .owl-dot span {
  width: 24px;
  height: 24px;
  background: #bcbec0; }

.owl-theme .owl-dots .owl-dot.active span, .owl-theme .owl-dots .owl-dot:hover span {
  background: #001E46; }

.blocks .text-box {
  padding: 20px;
  height: 100%;
  display: flex;
  flex-direction: column; }
  .blocks .text-box p:last-of-type {
    margin-top: auto; }

.border {
  border-radius: 10px;
  padding: 12px; }
  .border h3 {
    font-size: 24px; }
  .border h4 {
    font-size: 20px;
    min-height: 60px; }
  .border p {
    color: #6D6E71;
    font-size: 16px; }
  .border .icon {
    margin: 0em 0em 28px; }

.intro p {
  max-width: 75%;
  margin: auto; }

.stat-wrap {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  align-items: flex-start; }

.stat-text {
  font-weight: 700;
  font-size: 20px;
  display: block;
  width: calc(100% - 39px); }

.stat {
  width: 29px;
  margin-top: 3px; }
  .stat img {
    display: block; }
  .stat.down {
    transform: rotate(180deg); }

.post-text.border {
  padding: 24px; }

.tag-cat-wrap {
  display: flex;
  gap: 10px; }

p.post-cat {
  display: flex;
  align-items: center;
  gap: 10px;
  font-weight: 500;
  color: #001E46 !important;
  margin-bottom: 1rem !important; }
  p.post-cat svg {
    width: 19px;
    height: 19px; }

.border .post-tag {
  font-size: 14px;
  display: block;
  border: 1px solid #64C1C7;
  color: #64C1C7;
  padding: 5px;
  border-radius: 4px;
  font-weight: 400;
  flex: 1;
  margin-bottom: 1rem; }

.insights {
  padding-bottom: 5.5em; }
  .insights .owl-stage {
    display: flex; }
    .insights .owl-stage .post {
      height: 100%; }
      .insights .owl-stage .post a, .insights .owl-stage .post .post-text {
        display: block;
        height: 100%; }
  .insights .owl-item p img {
    width: auto;
    display: unset; }

/*END OF HOMEPAGE STYLES*/
/*NEWS*/
.hide-checkbox {
  display: none !important; }

.filters-button-group {
  padding-bottom: 2em;
  margin-bottom: 2rem; }
  .filters-button-group p {
    display: inline-block;
    color: #001E46;
    margin-right: 1em;
    margin-bottom: 0; }
  .filters-button-group .filter {
    display: inline-block;
    margin-right: 5px; }
  .filters-button-group .filter label {
    color: #fff;
    margin: .25em 0em .25em 0em;
    text-transform: uppercase;
    padding: 5px 8px; }

.news-feed .post-text {
  text-align: left;
  padding: 1em; }
  .news-feed .post-text h6 {
    line-height: 1.2em;
    min-height: 63px; }
.news-feed p {
  color: #000;
  margin-bottom: 0px; }
.news-feed a {
  display: block;
  height: 100%; }
.news-feed .post-image {
  overflow: hidden; }
.news-feed .post {
  margin-bottom: 2em; }

.news-image .wp-post-image {
  margin-bottom: 1em; }

/*END OF NEWS */
/*LAYOUT PAGE*/
.accordion li {
  list-style: none;
  background: #fff;
  margin-bottom: 0px; }
  .accordion li .accordion-title {
    font-size: 16px;
    color: #001E46;
    font-weight: bold;
    border: 0px;
    border-top: 2px solid #001E46; }
  .accordion li .accordion-content {
    background: #fff;
    border: 0px; }
    .accordion li .accordion-content ul li {
      list-style: disc; }
    .accordion li .accordion-content ul {
      margin-bottom: 1em; }
    .accordion li .accordion-content ol li {
      list-style: decimal; }
.accordion .accordion-title:focus, .accordion .accordion-title:hover {
  background: #001E46;
  color: #fff; }
  .accordion .accordion-title:focus:before, .accordion .accordion-title:hover:before {
    color: #fff; }

:last-child > .accordion-content:last-child, :last-child:not(.is-active) > .accordion-title {
  border-bottom: 2px solid #001E46; }

.accordion-title:before {
  color: #001E46;
  font-size: 28px;
  top: 36%; }

/*END OF LAYOUT*/
/*CONTACT PAGE*/
#map {
  min-height: 300px; }

.details, .wpcf7-radio {
  font-size: 14px;
  color: #fff; }

.wpcf7-radio {
  margin-top: 1em;
  display: block; }
  .wpcf7-radio .wpcf7-list-item:first-child {
    margin-left: 0px; }

[type=color], [type=date], [type=datetime-local], [type=datetime], [type=email], [type=month], [type=number], [type=password], [type=search], [type=tel], [type=text], [type=time], [type=url], [type=week], textarea {
  box-shadow: none;
  border: 0px;
  color: #000;
  min-height: 45px;
  border-radius: 10px; }

[type=color]:focus, [type=date]:focus, [type=datetime-local]:focus, [type=datetime]:focus, [type=email]:focus, [type=month]:focus, [type=number]:focus, [type=password]:focus, [type=search]:focus, [type=tel]:focus, [type=text]:focus, [type=time]:focus, [type=url]:focus, [type=week]:focus, textarea:focus {
  box-shadow: none;
  border: 0px;
  color: #000;
  border-radius: 10px; }

textarea[rows] {
  max-height: 150px; }

input[type=submit] {
  background: #64C1C7;
  padding: 10px 15px;
  color: #fff;
  border-radius: 10px;
  transition: .5s ease all; }

input[type=submit]:hover, input[type=submit]:focus {
  background: #001E46;
  color: #fff;
  transition: .5s ease all; }

.wpcf7-spinner {
  position: absolute; }

::-webkit-input-placeholder {
  /* Chrome/Opera/Safari */
  color: #000 !important; }

::-moz-placeholder {
  /* Firefox 19+ */
  color: #000 !important; }

:-ms-input-placeholder {
  /* IE 10+ */
  color: #000 !important; }

:-moz-placeholder {
  /* Firefox 18- */
  color: #000 !important; }

input {
  -webkit-appearance: none;
  -moz-appearance: none;
  -ms-appearance: none;
  -o-appearance: none;
  appearance: none;
  background-color: #fff;
  border: 1px solid #64C1C7;
  cursor: pointer;
  outline: none; }

input[type="radio"], input[type="checkbox"] {
  margin: 0 auto;
  box-sizing: border-box;
  width: 19px;
  height: 19px;
  padding: 3px;
  border: 1px solid #fff;
  background: #64C1C7;
  position: relative;
  outline: none;
  display: inline-block;
  margin-right: 5px;
  margin-bottom: -3px; }

input[type="radio"]:checked:before, input[type="checkbox"]:checked:before {
  content: ' ';
  width: 7px;
  height: 14px;
  border-bottom: 3px solid #fff;
  border-right: 3px solid #fff;
  border-radius: 1px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  -webkit-font-smoothing: antialiased;
  position: absolute;
  top: 0px;
  left: 5px;
  outline: none;
  background: pink; }

/*END OF CONTACT PAGE*/
/*FOOTER*/
footer {
  padding: 2em 1em; }
  footer .medium-8.columns {
    padding-bottom: 1em; }
  footer .medium-3.columns p {
    display: flex;
    align-items: center;
    gap: 5px; }
    footer .medium-3.columns p:before {
      content: '';
      background: url(../images/pin.svg) left top no-repeat;
      dispay: block;
      width: 16px;
      height: 16px; }
  footer p {
    font-size: 13px;
    margin-bottom: 0;
    color: #001E46; }
    footer p a {
      color: #64C1C7; }
  footer .menu {
    margin: 0px; }
    footer .menu li {
      display: block; }
      footer .menu li a {
        color: #001E46;
        font-size: 16px;
        padding: 7px; }
  footer .footer-logo img {
    max-width: 265px;
    margin-bottom: 1.5em; }

.bottom-footer p, .bottom-footer a {
  color: #001E46; }

.phone, .calendar, .email, .address {
  margin: 1em;
  max-width: 70px;
  transition: .5s ease all; }

a:hover .phone, a:hover .calendar, a:hover .address, a:hover .email, a:focus .phone, a:focus .calendar, a:focus .address, a:focus .email {
  max-width: 75px;
  transition: .5s ease all; }

.team-content .social li a:hover {
  background: none; }
.team-content .social li img {
  max-width: 40px; }

.social {
  margin: 1em 0px 1em;
  transition: .5s ease all; }
  .social li {
    margin: 5px; }
    .social li a {
      transition: .5s ease all; }
    .social li img {
      max-width: 30px;
      transition: .5s ease all; }
  .social li a:hover img, .social li a:focus img {
    transform: rotate(20deg);
    transition: .5s ease all; }

footer .menu li:first-child a {
  font-size: 20px;
  font-weight: bold; }

/*END OF FOOTER*/
@media only screen and (min-width: 640px) {
  section {
    padding: 2em 0; }

  .top-header .contacts {
    text-align: right; }

  .home-slider h1, .home-slider h2 {
    font-size: 30px; }

  .hpad-r {
    padding-right: .5em; }

  .hpad-l {
    padding-left: .5em; }

  .xpad {
    padding: 2em; }

  .xpad-content {
    padding: 2em 1em; } }
@media only screen and (min-width: 1024px) {
  h1 {
    font-size: 46px; }

  h2 {
    font-size: 36px; }

  h3 {
    font-size: 30px; }

  h4 {
    font-size: 26px; }

  h5 {
    font-size: 22px; }

  h6 {
    font-size: 20px; }

  .main-banner h1 {
    font-size: 64px;
    line-height: 69px; }

  p, label, ul li, ol li {
    font-size: 16px; }

  .intro p, .intro label, .intro ul li, .intro ol li {
    font-size: 20px;
    font-weight: 300; }

  section {
    padding: 2.5em 0; }

  footer {
    padding: 2em 1em; }
    footer p {
      font-size: 14px;
      margin-bottom: 0;
      color: #001E46; }
      footer p a {
        color: #64C1C7; }
    footer .copy {
      text-align: right; }

  .spacer {
    padding: 3em 1em; }

  .border {
    padding: 12px; }

  .xpad {
    padding: 3em 2em; }
    .xpad > .row .xpad {
      padding: 2.1em 2em; } }
.our-solutions {
  padding-bottom: calc(3em + 84px); }
  .our-solutions + .banner {
    padding-top: 0; }
    .our-solutions + .banner > .row > .columns {
      margin-top: -84px; }
  .our-solutions p {
    font-size: 20px; }

.culture + .our-solutions {
  margin-top: -306px;
  padding-top: calc(306px); }
.culture .columns.blocks {
  display: flex;
  flex-wrap: wrap; }
.culture .block-inner {
  height: 100%; }
  .culture .block-inner .image-box {
    aspect-ratio: 302/237; }
    .culture .block-inner .image-box img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      border-radius: 15px 15px 0 0; }

.widget-testimonials {
  padding: 86px 0; }
  .widget-testimonials + .cta {
    padding-top: 107px; }
    .widget-testimonials + .cta .white-bg {
      border: 1px solid rgba(0, 0, 0, 0.03); }

.widget-approach {
  padding: 86px 0 0 0; }
  .widget-approach.approach-layout {
    text-align: center; }
    .widget-approach.approach-layout h3 {
      font-size: 48px;
      color: #001E46 !important; }
    .widget-approach.approach-layout p {
      font-size: 36px;
      color: #FFF;
      font-weight: 300; }
    .widget-approach.approach-layout p.mini-arrow {
      margin-top: 2rem; }
    .widget-approach.approach-layout .scroller:nth-of-type(1) h3 {
      color: #FFF !important; }
    .widget-approach.approach-layout .scroller:nth-of-type(1) p.mini-arrow path {
      fill: #64C1C7; }
  .widget-approach h2 {
    color: #64C1C7 !important; }

#scroller-wrapper {
  position: relative;
  padding-left: 0;
  padding-right: 0;
  padding-bottom: 0;
  padding-top: 0; }

#scroller-wrapper .scroller-stage {
  position: sticky;
  top: 0;
  overflow: hidden; }

#scroller-wrapper .scroller {
  width: 100%; }

.panelwrapper {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 0.9375rem; }

.scroller {
  background: #001E46;
  height: 100vh;
  display: flex;
  align-items: center;
  padding: 0;
  width: 100%;
  position: sticky;
  top: 0; }
  .scroller:nth-of-type(2) {
    background: #64C1C7; }
    .scroller:nth-of-type(2) svg path {
      fill: #001E46; }
  .scroller:nth-of-type(3) {
    background: #E31B23; }
    .scroller:nth-of-type(3) .number {
      background: #001E46; }
    .scroller:nth-of-type(3) svg path {
      fill: #001E46; }

.arrow svg {
  display: block; }

#scroller-wrapper .panelwrapper {
  display: flex;
  align-items: flex-start;
  gap: 45px; }

.home .main-banner .btn {
  min-width: 215px; }

@media screen and (min-width: 64em) {
  .sticky-header > .columns > .row {
    align-items: flex-end; }

  body:not(.home) .main-banner > .row {
    max-height: 800px !important;
    height: auto !important;
    min-height: 500px; }

  .main-banner > .row {
    display: flex;
    max-height: 1000px; }
  .main-banner .large-7 {
    position: relative;
    z-index: 2; }

  .cog-image {
    position: absolute;
    right: 0;
    width: 60vw;
    max-width: 1100px;
    z-index: 1; }
    .cog-image .image-mask {
      margin-top: 30px; }
    .cog-image img {
      position: absolute;
      right: 0;
      bottom: 0;
      width: inherit; }

  body:not(.home) .cog-image {
    left: 52vw !important;
    right: auto !important;
    max-width: 800px !important; }
    body:not(.home) .cog-image img {
      position: static;
      right: auto;
      bottom: auto; } }
.scroller-spacer {
  max-height: calc(100vh + 300px); }

.columns.subscribe .row {
  display: flex;
  justify-content: center; }
  .columns.subscribe .row .xpad-content p {
    margin: 0 auto; }
.columns.subscribe .border {
  padding: 0 24px 48px 24px;
  border: 0;
  max-width: 800px; }

.vacancies-box {
  padding: 24px;
  float: none; }
  .vacancies-box + .button-wrapper {
    display: flex;
    width: 100%;
    margin-top: 16px; }
    .vacancies-box + .button-wrapper .btn {
      width: 100%; }

@media screen and (max-width: 1024px) {
  .banner .red-back h4 {
    height: auto !important;
    min-height: unset; }

  .bottom-footer {
    display: none; }

  body:not(.home) .cog-image {
    transform: translate(0, 0); }

  .owl-theme .owl-dots .owl-dot span {
    width: 20px;
    height: 20px; }

  .single-vacancies .large-offset-1 {
    margin-top: 30px; }

  .widget-three-block-content .row .column {
    width: 100%; }
  .widget-three-block-content.two-cols .row .column {
    width: 100%; }

  .main-banner h1 {
    font-size: 38px; }

  span.larger {
    font-size: 16px;
    line-height: 22px; }

  .subscribe .red-back {
    border-radius: 0; }

  footer .columns.medium-8,
  footer .medium-4.footer-logo {
    float: none;
    width: 100%; }
    footer .columns.medium-8 .medium-3.columns,
    footer .medium-4.footer-logo .medium-3.columns {
      padding: 0;
      float: none;
      width: 100%; }
      footer .columns.medium-8 .medium-3.columns + .medium-3,
      footer .medium-4.footer-logo .medium-3.columns + .medium-3 {
        margin-top: 20px; }

  .insights {
    padding-bottom: 6em; }
    .insights .owl-dots {
      bottom: -3em; }
    .insights .columns .columns + .columns {
      margin-top: 16px; }

  .red-back {
    margin-top: 0 !important; }

  .subscribe.columns {
    padding: 0; }
    .subscribe.columns .wpcf7-spinner {
      display: none; }
    .subscribe.columns input[type=submit] {
      display: block;
      margin: 0 auto; }

  .wpcf7-form input[type=submit] {
    margin-top: 20px; }

  .coloured-block .columns.medium-8 + .columns.medium-4 {
    margin-top: 0; }

  .cta {
    padding: 0 20px; }
    .cta + .case-studies {
      padding-top: calc(160px + 2.5em); }

  .cta-block {
    padding: 1em !important; }
    .cta-block .btn + .btn {
      margin-top: 16px; }

  .widget-approach {
    padding: 54px 0 0 0; }
    .widget-approach #scroller-wrapper {
      padding-top: 3em; }

  .intro p {
    max-width: unset; }

  #scroller-wrapper .panelwrapper {
    gap: 20px; }

  .number {
    width: 77px;
    height: 77px; }
    .number p {
      font-size: 27px; }

  .panel.content h4 {
    font-size: 20px; }

  .our-solutions {
    padding-top: calc(3em) !important;
    margin-top: 0 !important; }

  .coloured-block .columns + .columns {
    margin-top: 20px; }

  .main-banner > .row {
    min-height: unset !important; }
    .main-banner > .row .large-7:first-of-type {
      padding: 40px 1.25rem 0 1.25rem; }
    .main-banner > .row h1 {
      margin-bottom: 0; }
      .main-banner > .row h1 + .banner-content {
        margin-top: 30px; }
    .main-banner > .row .cog-image {
      max-width: calc(100% - 40px);
      width: 100%;
      float: right;
      padding-top: 0; }

  header #mega-menu-wrap-primary {
    height: 100%;
    max-height: 100vh;
    overflow: auto; }
    header #mega-menu-wrap-primary #mega-menu-primary {
      height: 100%;
      justify-content: center; }
      header #mega-menu-wrap-primary #mega-menu-primary li.mega-menu-flyout ul.mega-sub-menu li.mega-menu-item a.mega-menu-link {
        padding: 10px 20px;
        font-size: 18px; }
        header #mega-menu-wrap-primary #mega-menu-primary li.mega-menu-flyout ul.mega-sub-menu li.mega-menu-item a.mega-menu-link:hover, header #mega-menu-wrap-primary #mega-menu-primary li.mega-menu-flyout ul.mega-sub-menu li.mega-menu-item a.mega-menu-link:active, header #mega-menu-wrap-primary #mega-menu-primary li.mega-menu-flyout ul.mega-sub-menu li.mega-menu-item a.mega-menu-link:focus {
          background-color: #001E46 !important; }
      header #mega-menu-wrap-primary #mega-menu-primary li.mega-menu-item.mega-current-menu-item a.mega-menu-link, header #mega-menu-wrap-primary #mega-menu-primary li.mega-menu-item.mega-toggle-on a.mega-menu-link {
        background-color: #001E46 !important; }
      header #mega-menu-wrap-primary #mega-menu-primary li.mega-menu-item a.mega-menu-link {
        padding: 20px;
        font-size: 20px;
        background-color: #001E46 !important; }
        header #mega-menu-wrap-primary #mega-menu-primary li.mega-menu-item a.mega-menu-link:hover, header #mega-menu-wrap-primary #mega-menu-primary li.mega-menu-item a.mega-menu-link:active, header #mega-menu-wrap-primary #mega-menu-primary li.mega-menu-item a.mega-menu-link:focus {
          background-color: #001E46 !important; }
        header #mega-menu-wrap-primary #mega-menu-primary li.mega-menu-item a.mega-menu-link span.mega-indicator {
          display: block; } }
@media screen and (max-width: 800px) {
  .main-banner > .row p {
    max-width: unset; }
    .main-banner > .row p:last-of-type {
      margin-bottom: 1rem; }
  .main-banner .large-7 > div {
    max-width: unset !important; } }
@media screen and (min-width: 1025px) {
  body:not(.home) .cog-image {
    transform: translate(0, -15%);
    width: 50vw; } }
@media screen and (min-width: 1025px) and (max-width: 1200px) {
  .cog-image {
    height: 120%; } }
@media screen and (min-width: 1025px) {
  #mega-menu-wrap-primary #mega-menu-primary[data-effect="fade_up"].mega-no-js li.mega-menu-item:hover > ul.mega-sub-menu, #mega-menu-wrap-primary #mega-menu-primary[data-effect="fade_up"].mega-no-js li.mega-menu-item:focus > ul.mega-sub-menu, #mega-menu-wrap-primary #mega-menu-primary[data-effect="fade_up"] li.mega-menu-item.mega-toggle-on > ul.mega-sub-menu, #mega-menu-wrap-primary #mega-menu-primary[data-effect="fade_up"] li.mega-menu-item.mega-menu-megamenu.mega-toggle-on ul.mega-sub-menu {
    transform: translate(0, 32px) !important; } }
.owl-item .column > div {
  border-radius: 10px;
  background: #FFF;
  height: 100%; }

.banner-content:empty {
  display: none; }

@media screen and (min-width: 1200px) and (max-width: 1680px) {
  .page-id-340 .cog-image {
    height: 120%; } }
.subscribe .columns.large-12 {
  display: flex;
  flex-wrap: wrap; }
  .subscribe .columns.large-12 .columns.medium-4 {
    width: 122px;
    padding-left: 0; }
  .subscribe .columns.large-12 .columns.medium-8 {
    width: calc(100% - 122px); }

@media screen and (min-width: 640px) and (max-width: 1024px) {
  .subscribe.columns input[type=submit] {
    margin-top: 0; } }
@media screen and (max-width: 639px) {
  .subscribe .columns.large-9 .columns.medium-4,
  .subscribe .columns.large-9 .columns.medium-4,
  .subscribe .columns.large-9 .columns.medium-8 {
    width: 100%; } }
.case_studies .grid-item > div {
  height: 100%; }
  .case_studies .grid-item > div a {
    display: flex;
    flex-direction: column;
    height: 100%; }
    .case_studies .grid-item > div a .post-text {
      flex: 1;
      display: flex;
      flex-wrap: wrap; }

@media screen and (min-width: 600px) {
  .case_studies-slider {
    padding: 0 60px; } }
@media screen and (max-width: 599px) {
  .case_studies-slider.owl-theme {
    display: flex !important;
    flex-direction: column; }
    .case_studies-slider.owl-theme .owl-stage-outer {
      order: 2; }
    .case_studies-slider.owl-theme .owl-nav {
      position: static;
      margin: 0;
      order: 1;
      display: flex;
      justify-content: center;
      margin-bottom: 20px; }
      .case_studies-slider.owl-theme .owl-nav .owl-prev,
      .case_studies-slider.owl-theme .owl-nav .owl-next {
        position: static; } }
.arrow-wrapper {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 45px;
  height: 45px;
  border-radius: 50%;
  background: #FFF; }

.arrow-nav {
  width: 30px;
  height: 30px; }

.owl-theme .owl-nav {
  top: 50%;
  margin-top: -22px; }

.columns p + ul {
  margin-top: 20px; }

.single-case_studies .widget-single-testimonial {
  border-bottom: 1px solid #f2f2f2; }
.single-case_studies .widget-full-width-text.darkblue-back .columns.text-center p:first-of-type {
  font-size: 16px; }

.addtoany_shortcode {
  margin-top: 20px; }
  .addtoany_shortcode .addtoany_list a {
    font-size: 16px;
    padding: 0;
    display: flex;
    gap: 5px;
    align-items: center;
    font-weight: 600; }
    .addtoany_shortcode .addtoany_list a:hover, .addtoany_shortcode .addtoany_list a:focus {
      color: #64C1C7; }
    .addtoany_shortcode .addtoany_list a:after {
      content: '';
      background: url(../images/share.png) center center no-repeat;
      background-size: 100%;
      width: 20px;
      height: 20px;
      display: block; }

/*# sourceMappingURL=style.css.map */
