/*
Theme Name: AG Child Theme
Template: AG
Theme URI: http://www.sanderswebworks.co.uk
Author: Alun Griffiths
Author URI: http://www.sanderswebworks.co.uk
Description: Project specific child theme
Version: 0.3.2
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: ag-project-theme
*/

:root {
    --black: #000000;
    --primary: #e11f26;
    --secondary: #e11f26;
    --light-grey: #f8f8f8;
    --cream: #f9f4f4;
    --font-heading: "Roboto", serif;
    --font-body: "Roboto", serif;
    --box-shadow: 0 0 6px 1px rgb(0 0 0 / 20%);
}


/* General */
body {
    font-family: var(--font-body);
    color: var(--black);
    line-height: 1.3;
}
h1, h2, h3, h4, h5, h6 {    
    font-family: var(--font-heading);
    font-weight: 600;
    color: var(--primary);
    text-transform: uppercase;
}
a {
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    color: var(--primary);
    text-decoration: underline;
}
a:hover, a:focus {
    text-decoration: none;
    color: var(--primary);
}
button:focus,
:focus {
    outline: none;
    box-shadow: none;
}
.small, small {
    font-size: .8em;
}
.lead {
    font-size: 1.125rem;
    font-weight: 400;
}

/* Button */
.btn,
.frm_style_formidable-style.with_frm_style .frm_compact .frm_dropzone.dz-clickable .dz-message, .frm_style_formidable-style.with_frm_style input[type=submit], .frm_style_formidable-style.with_frm_style .frm_submit input[type=button], .frm_style_formidable-style.with_frm_style .frm_submit button, .frm_form_submit_style, .frm_style_formidable-style.with_frm_style.frm_login_form input[type=submit] {
    border: 2px solid var(--primary);
    border-radius: 4rem;
    padding: .6rem 1.25rem;
    color: #fff;
    text-decoration: none !important;
    background: var(--primary);
    box-shadow: var(--box-shadow);
    margin-top: .75rem;
    text-transform: uppercase;
    font-weight: 500;
}
.btn:hover, .btn:focus,
.frm_style_formidable-style.with_frm_style input[type=submit]:hover, .frm_style_formidable-style.with_frm_style .frm_submit input[type=button]:hover, .frm_style_formidable-style.with_frm_style .frm_submit button:hover, .frm_style_formidable-style.with_frm_style.frm_login_form input[type=submit]:hover {
    text-decoration: none;
    background: #fff;
    color: var(--secondary);
    border-color: var(--secondary);
    box-shadow: none;
}
.btn + .btn {
    margin-left: 1.5rem;
}
.btn-outline {
    box-shadow: none;
    border: 1px solid var(--primary);
    background: none;
}
.btn-outline a,
.navbar .menu .menu-item.btn-outline a {
    color: var(--primary);
}
.btn.btn-white {
    background: #fff;
    color: #191919;
    border: 1px solid #fff;
    font-weight: bold;
}
.btn.btn-white span {
    color: var(--primary);
}
.btn.btn-white:hover {
    background-color: var(--secondary);
    color: #fff;
}
.btn.btn-white:hover span {
    color: #fff;
}
.btn-lg {
    padding: 0.65rem 1.5rem;
}
.shadow {    
    box-shadow: var(--box-shadow) !important;
}
.has-shadow {    
    box-shadow: var(--box-shadow) !important;
    z-index: 5;
    position: relative;
}
.font-largest {
    font-size: 4rem;
    font-family: var(--font-heading);
    font-weight: 600;
    text-transform: uppercase;
}

/* Tooltips */
.tooltip-inner {
    background-color: #fff;
    box-shadow: 0px 0px 4px black;
    opacity: 1 !important;
    border-radius: 0;
    color: var(--black);
    font-size: 1.1rem;
    font-weight: 600;
    padding: .25rem 1rem;
}
.tooltip.bs-tooltip-end .tooltip-arrow::before {
    border-right-color: #fff !important;
}
.tooltip.bs-tooltip-start .tooltip-arrow::before {
    border-left-color: #fff !important;
}
.tooltip.bs-tooltip-bottom .tooltip-arrow::before {
    border-bottom-color: #fff !important;
}
.tooltip.bs-tooltip-top .tooltip-arrow::before {
    border-top-color: #fff !important;
}

/* Helper classes */
.col-img {
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    min-height: 350px;
    overflow: hidden;
    position: relative;
}
.card img.aspect-ratio-3-1 {
    width: 100%;
    aspect-ratio: 3/1;
    object-fit: cover;
}
.black {
    color: var(--black);
}
.red {
    color: var(--primary);
}
.font-heading {
    font-family: var(--font-heading);
    font-weight: 500;
    text-transform: uppercase;
}
.z-5 {
    position: relative;
    z-index: 5;
}
ul.no-bullets,
ol.no-bullets {
    list-style: none;
    padding: 0;
    font-size: .9rem;
}
ul.no-bullets li,
ol.no-bullets li {
    margin-bottom: 0.5rem;
}
.inline-list {
    list-style: none;
    padding-left: 0;
    margin-bottom: 0;
}
.inline-list li {
    display: inline-block;
}
.inline-list li:not(:last-child):after {
    content: '|';
}
.inline-list li a {
    display: inline-block;
    padding: .5rem .25rem;
}
.inline-list > li:first-child a {
    padding-left: 0;
}
.inline-list > li:last-child a {
    padding-right: 0;
}
.black-list a {
    color: var(--black);
}
.black-list a .fa-angle-right {
    color: var(--primary);
    padding-left: 0.25rem
}
@media (min-width: 992px) {
    .col-img {
        min-height: 400px;
    }
}


/* Standard page */
.alignleft {
    float: left;
    margin-right: 20px;
    margin-bottom: 5px;
}
.alignright {
    float: right;
    margin-left: 20px;
    margin-bottom: 5px;
}
.aligncenter {
    display: block;
    margin: 10px auto;
    margin-bottom: 5px;
}

blockquote {
  border-left: .4rem solid var(--primary);
  margin: 1.5em 10px;
  padding: 0.5em 10px;
  quotes: "\201C""\201D""\2018""\2019";
}
blockquote:before {
  color: var(--primary);
  content: open-quote;
  font-size: 4em;
  line-height: 0.1em;
  margin-right: 0.25em;
  vertical-align: -0.4em;
}
blockquote p {
  display: inline;
}


/* Section */
section {
    padding: 2rem 0 4rem;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
}
.section-heading {
    background-color: #fff;
    box-shadow: 0 0 6px 1px rgb(0 0 0 / 20%);
    display: inline-block;
    text-transform: uppercase;
    padding: 0.5rem 1rem;
    z-index: 5;
}
.section-heading.overlap-heading {
    position: relative;
    top: -3rem;
    margin-bottom: -1rem;
}
.section-heading .title {
    font-size: 1.75rem;
    margin-bottom: 0;
    color: var(--black);
}
.section-heading .sub-title {
    font-size: 1.25rem;
    margin-bottom: 0; 
    font-weight: 600;   
}
.section-heading .title + .sub-title {
    margin-top: 1rem;
}
.section-heading-small {
    margin-bottom: 3rem;
}
.section-heading-small .title {
    color: var(--black);
    font-size: 1.5rem;
    margin-bottom: 0.75rem;
}
.section-heading-small .sub-title {
    font-size: 1.125rem;
}
.dark-overlay-section .section-heading-small * {
    color: #fff;
}
@media (min-width: 992px) {
    section {
        padding: 4rem 0 6rem;
    }
    .section-heading.overlap-heading {
        top: -5rem;
    }
    .section-heading .title {
        font-size: 2.75rem;
    }
}
/* Dark overlay section */
.dark-overlay-section {
    position: relative;
    color: #fff;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
}
.dark-overlay-section:after {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-color: rgba(0,0,0,0.8);
}
.dark-overlay-section > * {
    position: relative;
    z-index: 1;
}

/* Main and sidebar */
.main + .sidebar,
.sidebar + .main {
    padding-top: 5rem;
    padding-bottom: 5rem;
}
@media (min-width: 992px) {
    .main {
        padding-right: 5rem;
    }
    .main + .sidebar,
    .sidebar + .main {
        padding-left: 5rem;
    }
    .page-template-default .main + .sidebar,
    .page-template-default .sidebar + .main {
        padding-top: 0;
    }
}

/* Content area */
.content > *:first-child {
    margin-top: 0 !important;
}
.content h1,
.content h2 {
    font-size: 2rem;
}
.content h2 {
    margin-top: 2rem;
}
.content h3 {
    font-size: 1.5rem;
    margin-top: 1.75rem;
}
.content h4 {
    font-size: 1.4rem;
    margin-top: 1.6rem;
}
.content h5 {
    font-size: 1.3rem;
    margin-top: 1.4rem;
}
.content h6 {
    font-size: 1.2rem;
    margin-top: 1.2rem;
}
.content img,
.content video {
    max-width: 100%;
    margin-bottom: 1rem;
}
.content img,
.content video,
.content iframe {
    box-shadow: var(--box-shadow);
}
.content img,
.blog .content img,
.single-post .content img {
    height: auto;
}
figure {    
    box-shadow: var(--box-shadow);
    margin-bottom: 2rem !important;
}
figcaption {
    padding: 0 1rem 1rem;
    font-weight: 500;
}
/* .content iframe */
.content video {
    height: 250px !important;
}
.content ul {
    padding-left: 40px;
    margin-bottom: 1rem;
}
.content ul li {
    position: relative;
    list-style: none;
}
.content ul:not(.slick-dots) li:before {
    position: absolute;
    content: '';
    background: var(--primary);
    width: 5px;
    height: 5px;
    left: -17px;
    top: 8px;
    border-radius: 50%;
}
.content blockquote {
    font-style: italic;
}
.content iframe[src*="youtube"] {
    height: 280px;
    width: 100%;
}
@media (min-width: 768px) {    
    .content iframe[src*="youtube"] {
        height: 500px;
    }
}

/* Navigation */
.screen-reader-text {
    clip: rect(1px, 1px, 1px, 1px);
    position: absolute !important;
    height: 1px;
    width: 1px;
    overflow: hidden;
}
.nav-previous,
.nav-next {
    width: auto !important;
}
.nav-previous {
    margin-bottom: .5rem;
}
.nav-next {
    text-align: right;
}
.navigation.pagination {
    margin-top: 2rem;
    border-radius: 0;
}
.navigation.pagination a.page-numbers {
    color: var(--primary);
    padding: 0 .75rem;
}
.navigation.pagination a.page-numbers:hover {
    color: #2d2d2d;
}
span.page-numbers.current {
    display: inline-block;
    text-align: center;
}

/* Posts navigation and Post navigation */
nav.navigation {
    margin-top: 4rem;
    padding-top: 2rem;
    font-weight: 600;
}
nav.navigation a {
    text-decoration: none;
}
nav.navigation a:hover{
    color: var(--black);
    text-decoration: underline;
}
nav.navigation a.prev:before,
nav.navigation a.next:after,
nav.navigation .nav-previous a:before,
nav.navigation .nav-next a:after {
    font-family: var(--fa-style-family,"Font Awesome 6 Pro");
    font-weight: 900;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    line-height: 1;
}
nav.navigation a.prev:before,
nav.navigation .nav-previous a:before {
    content: '\f104';
    padding-right: 3px;
}
nav.navigation a.next:after,
nav.navigation .nav-next a:after {
    content: '\f105';
    padding-left: 3px;
}

/* Error 404 Page */
.error404 section {
    text-align: center;
}
.error404 h1 {
    text-transform: uppercase;
    font-size: 2.5rem;
    text-align: center;
}
.error404 h1 span {
    display: block;
    font-size: 5rem;
}
.error404 section .btn {
    margin-top: 1.5rem;
}
@media (min-width: 992px) {
    .error404 h1 {
        font-size: 5rem;
    }
    .error404 h1 span {
        font-size: 10rem;
    }
}



/* Card */
.card {
    border-radius: 0;
    box-shadow: var(--box-shadow);
    background-color: #fff;
    height: 100%;
    border: 0;
}
.card a {
    text-decoration: none;   
    color: var(--black); 
}
.card a:hover + .card-body a,
.card a:hover {
    text-decoration: underline;
    color: var(--primary);
}
.card .card-title a .fa {
    color: var(--primary);
}
.card .card-body {
    color: var(--black);
}
.card img {
    width: 100%;
    transition: all 0.3s ease;
    object-fit: cover;
    aspect-ratio: 1/1;
    box-shadow: none;
}
.card .card-title {
    margin-top: 0;
}
.card-footer {
    background-color: transparent;
    border: 0;
    padding-top: 0;
    padding-bottom: .8rem;
    border-radius: 0;
}
.card-footer:last-child {
    border-radius: 0;    
}
/* Whole card clickable */
a.card.whole-card-clickable {
    border: 3px solid transparent;
    text-decoration: none;
}
a.card.whole-card-clickable:hover {
    border-color: var(--primary);
}
a.card.whole-card-clickable .card-title {
    color: var(--black);
}
a.card.whole-card-clickable .fa {
    color: var(--primary);
}
a.card.whole-card-clickable img {
    margin: -3px -3px 0 -3px;
    width: calc(100% + 6px);
    max-width: calc(100% + 6px);
}
a.card.whole-card-clickable:hover img {
    margin: 0 0 3px 0;
    width: calc(100%);
}
/* Card Icon box */
.card.icon-box {
    text-align: center;
}
.card.icon-box.card-alt {
    text-align: left;
}
.card.icon-box img,
.card.icon-box .icon-fa {
    width: 65% !important;
    margin: 1.5rem auto 0 !important;
    display: block;
    box-shadow: var(--box-shadow);
    background-color: var(--primary);
}
.card.icon-box .icon-fa {
    font-size: 2rem;
    padding: 0.5rem;
    aspect-ratio: 1/1;
}
.card.icon-box .icon-fa:after {
    font-family: var(--fa-style-family,"Font Awesome 6 Pro");
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    line-height: 1;
    font-weight: 400;
    color: #fff;
}
.card.icon-box.card-alt img {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
}
.card.icon-box .card-title {
    text-transform: none;
    font-size: .85rem;
}
.card.icon-box .card-footer {
    font-size: .7rem;
    padding-top: 1rem;
    background-color: var(--primary);
    text-transform: uppercase;
    font-weight: 700;
}
.card.icon-box .card-footer a {
    color: #fff;
}
@media (min-width: 768px) {
    .card.icon-box .icon-fa {
        font-size: 3rem;
    }
}
@media (min-width: 1200px) {
    .card.icon-box .card-title {
        font-size: 1.125rem;
    }
    .page-template-sectors .card.icon-box .card-title {
        font-size: 1rem;
    }
    .card.icon-box .card-footer {
        font-size: 1rem;
    }
}
@media (min-width: 1400px) {
    .page-template-sectors .card.icon-box .card-title {
        font-size: 1.125rem;
    }
}
/* Card Alt */
.card-alt {
    flex-direction: row;
    margin-bottom: 1rem;
    height: initial;
}
.card-alt .left {
    flex: 0 0 auto;
    width: 50%;
}
.card-alt .right {
    flex: 0 0 auto;
    width: 50%;
}
.card-alt .left.smaller {
    flex: 0 0 auto;
    width: 20%;
}
.card-alt.icon-box .left.smaller {
    flex: 0 0 auto;
    width: 25%;
    padding-left: 1rem;
}
.card-alt .left.smaller + .right {
    flex: 0 0 auto;
    width: 80%;
}
.card-alt.icon-box .left.smaller + .right {
    flex: 0 0 auto;
    width: 75%;
    padding: 1rem;
}
.card-alt img {
    max-width: 100%;
    object-fit: cover;
    height: 100%;
    aspect-ratio: 1/1;
}
.card-alt .left.smaller img {
    aspect-ratio: auto;
}
a.card.card-alt.whole-card-clickable img {
    margin: -3px 0 -3px -3px;
    width: 100%;
    height: calc(100% + 6px);
}
a.card.card-alt.whole-card-clickable.icon-box img {
    width: 100% !important;
    height: auto !important;
    margin-right: 0 !important;
}
a.card.card-alt.whole-card-clickable:hover img {
    margin: 0 3px 0 0;
    width: 100%;
    height: calc(100%);
}
.card-alt .card-body {
    padding: 1.5rem;
}
.card-alt .card-body .card-title {
    color: var(--black);
    font-size: 1.5rem;
    margin-bottom: 1rem;
}
.card-alt li a {
    color: var(--primary);
}
.card-alt .card-body li .fa {
    color: var(--black);
}
.single-case_studies .card.icon-box .card-text {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    font-size: .85rem;
}
@media (min-width: 992px) {
    .card-alt {
        padding-bottom: 0;
    }
}

/* Navbar */
.navbar-nav {
    font-weight: 500;
}
.navbar {
    position: relative;
    z-index: 1;
}
.navbar-brand img {
    width: 150px;
    height: auto;
}
.navbar-toggler {
    color: rgba(0,0,0,.5);
    border-color: rgba(0,0,0,.1);
}
.navbar .navbar-toggler {
    border: 0;
    background-color: var(--primary);
    color: #fff;
    padding: 0.5rem 0.75rem;
    font-size: 1.75rem;
}
#navbarNav {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.navbar .menu .menu-item {
    position: relative;
}

.navbar-dark .navbar-nav .nav-link {
    color: #fff;
}
.navbar-dark .navbar-nav .nav-link.active, .navbar-dark .navbar-nav .show>.nav-link {
    color: var(--primary);
}
.navbar .menu .menu-item a {
    padding-left: 1rem;
    padding-right: 1rem;
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
    text-decoration: none;
    color: var(--black);
}
.navbar .menu > .menu-item.current-menu-item > a,
.navbar .menu > .menu-item.current-menu-ancestor > a,
.single-case_studies .navbar .menu > .menu-item#menu-item-280 > a,
.single-jobs .navbar .menu > .menu-item#menu-item-691 > a,
.single-team_members .navbar .menu > .menu-item#menu-item-279 > a,
.single-post .navbar .menu > .menu-item#menu-item-278 > a {
    color: var(--primary);
}
.navbar .menu .menu-item [class*=fa] {
    color: var(--primary);
}
.navbar .menu .menu-item.btn {
    padding: 0;
    margin-top: .5rem;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
.navbar .menu .menu-item.btn a {
    padding: .4rem .85rem;
}
.navbar .menu .menu-item.btn a:hover,
.navbar .menu .menu-item.btn a:focus {
    color: inherit;
}
.dropdown-menu {
    margin: 0;
    border-radius: 0;
    border: none;
    padding-left: 0.5rem;
}
.dropdown-toggle::after {
    border: none;
    margin: 0;
}
.dropdown-item:focus,
.dropdown-item:hover {
    color: initial;
    background-color: initial;
}
li.menu-item-has-children:hover > .dropdown-menu {
    display: block;
}
.dropdown-item {
    padding: 0.4rem 1rem;
}
.sub-menu > li.menu-item:hover,
.sub-menu > li.menu-item.current-menu-item {
    background-color: #f9f4f4;
}
@media (min-width: 992px) {
    .navbar-expand-lg {
        padding-top: 0;
        padding-bottom: 0;
    }
    .navbar-expand-lg > * {
        padding-left: 1.75rem;
        padding-right: 1.75rem;
    }
    .navbar-brand img {
        width: 250px;
    }
    .navbar .navbar-brand img {
        margin-bottom: -51px;
    }
    .navbar .menu .menu-item.btn {
        margin-top: 0;
        margin-left: 1rem;
    }
    .navbar .menu > .menu-item:hover {
        box-shadow: 0 5px 6px 1px rgb(0 0 0 / 20%);
    }
    .navbar.navbar-expand-lg .menu .menu-item a {
        padding-top: 1.5rem;
        padding-bottom: 1.5rem;
    }    
    .navbar .menu > .menu-item.current-menu-item > a,
    .navbar .menu > .menu-item.current-menu-ancestor > a {
        color: var(--black);
    }
    .navbar .menu > .menu-item.current-menu-item > a:after,
    .navbar .menu > .menu-item.current-menu-ancestor > a:after,
    .single-case_studies .navbar .menu > .menu-item#menu-item-280 > a:after,
    .single-jobs .navbar .menu > .menu-item#menu-item-691 > a:after,
    .single-team_members .navbar .menu > .menu-item#menu-item-279 > a:after,
    .single-post .navbar .menu > .menu-item#menu-item-278 > a:after {
        content: '';
        height: 2px;
        width: 100%;
        display: block;
        top: 3px;
        position: relative;
        background-color: var(--primary);
    }
    .dropdown-menu {
        box-shadow: 0 5px 6px 1px rgb(0 0 0 / 20%);
        padding-left: 0;
        padding-top: 0;
        padding-bottom: 0;
    }
    ul.dropdown-menu > li > ul.dropdown-menu {
        left: 100%;
        top: 0;
    }
    .navbar.navbar-expand-lg .menu .dropdown-menu .menu-item a {
        padding-top: 0.5rem;
        padding-bottom: 0.5rem;
    }
    .navbar.navbar-expand-lg .menu .dropdown-menu .menu-item a:hover {
        background-color: var(--cream);
    }
    .navbar .menu-item.border-top {
        border-top: 0 !important;
    }
}


/* .site-footer */
.site-footer {
    font-size: 0.85rem;
    position: relative;
    z-index: 1;
    background-color: #fff;
    z-index: 99999;
}
.site-footer > .top {
    padding-top: 2.5rem;
}
.site-footer > .top .col-12 {
    margin-bottom: 1rem;
}
.site-footer * {
}
.site-footer h3 {
    font-size: 1rem;
    position: relative;
    padding-bottom: .75rem;
    margin-bottom: 1.25rem;
}
.site-footer h3:after {
    content: '';
    background-color: var(--primary);
    height: 2px;
    width: 70px;
    position: absolute;
    bottom: 0;
    left: 0;
}
.site-footer a {
    text-decoration: underline;
}
.site-footer a:hover {
    text-decoration: none;
}
.site-footer a, .site-footer a * {
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
.site-footer a:hover, .site-footer a:hover * {
    color: var(--primary);
}
.site-footer > .top a {
    text-decoration: none;
}
.site-footer .navbar-brand img {
    width: 300px;
}
.site-footer img.accredition-logo {
    width: 110px;
}
/* Menu */
.site-footer ul.menu {
    list-style: none;
    padding: 0;
    margin: 0;
}
.site-footer ul.menu .current-menu-item a {
}
.site-footer > .top .menu {
    display: block;
}
.site-footer > .top .menu a {
    position: relative;
    padding-left: 1rem;
    padding: .25rem 0;
    display: inline-block;
}
/* Latest Posts */
ul.latestPosts {
    list-style: none;
    padding: 0;
}
ul.latestPosts li.post-item > * {
    display: inline-block;
    vertical-align: top;
}
ul.latestPosts li.post-item > .left {
    width: 2.5rem;
    color: #fff;
}
ul.latestPosts .date {
    background: var(--primary);
    border-radius: 5px;
    display: block;
    text-align: center;
    padding: .4rem;
}
ul.latestPosts .date > * {
    display: block;
}
ul.latestPosts .date .day {
    font-size: 1.25rem;
}
ul.latestPosts .date .month {
    font-size: 0.8125rem;
}
ul.latestPosts li.post-item {
    margin-bottom: 1.5rem;
}
ul.latestPosts li.post-item > .right {
    width: calc(100% - 2.75rem);
    padding-left: .6rem;
}
ul.latestPosts li.post-item > .right .post-title {
    font-weight: bold;
    display: inline-block;
    margin-bottom: .3rem;
}
ul.latestPosts li.post-item > .right .post-title a {
    text-decoration: none;
}
ul.latestPosts li.post-item > .right > *:last-child {
    margin-bottom: 0;
}
ul.latestPosts li.post-item > .right .read-more {
    text-decoration: underline;
}
/* Features slider */
.slick-slider.features-slider {
    margin: 0 2.5rem;
}
.slick-slider.features-slider .card {
    margin: 0 0.75rem;
}
.slick-slider.features-slider h3 {
    font-size: 1.125rem;
}
.slick-slider.features-slider .slick-slide {
    margin-bottom: 1.5rem;
}
@media (min-width: 992px) {
    .features-section {
        background-attachment: fixed;
    }
    .slick-slider.features-slider .card {
        margin-left: 1.5rem;
        margin-right: 1.5rem;
    }
    .slick-slider.features-slider h3 {
        font-size: 1.4rem;
    }
}
/* Social Media */
.site-footer .socialMedia a {
    font-size: 1.5rem;
    width: 3.25rem;
    height: 3.25rem;
    line-height: 3rem;
}
.site-footer .socialMedia h3 {
    margin-bottom: 0;
}
.site-footer .socialMedia h3:after {
    content: none;
}
.socialMedia a {
    font-size: 1.125rem;
    display: inline-block;
    border: 2px solid var(--primary);
    border-radius: 50%;
    width: 2.25rem;
    height: 2.25rem;
    line-height: 2rem;
    margin: 0 .2rem .2rem;
    text-align: center;
    background-color: var(--primary);
    color: #fff;
}
.socialMedia a:hover,
.socialMedia a:focus {
    background-color: transparent;
    color: var(--primary);
}
/* Latest Jobs */
ul.latestJobs {
    list-style: none;
    padding: 0;
}
ul.latestJobs > li.job-item {
    display: block;
    margin-bottom: 1.25rem;
}
ul.latestJobs > li.job-item:last-child {
    margin-bottom: 0;
}
ul.latestJobs > li.job-item > a {
    display: block;
}
ul.latestJobs > li.job-item .top, ul.latestJobs > li.job-item .bottom {
    display: block;
}
ul.latestJobs > li.job-item .top {
    margin-bottom: .3rem;
font-weight: bold;
}
ul.latestJobs > li.job-item .bottom .left {
    margin-right: 1rem;
}
ul.latestJobs > li.job-item .bottom .fa {
    color: var(--primary);
    padding-right: .25rem;
}
.latestPosts-split .btnWrapper {
    text-align: center;
    margin-top: 3.5rem;
}



.site-footer > .bottom {
    padding-top: 1rem;
    padding-bottom: 1rem;
    position: relative;
    border-top: 10px solid var(--primary);
    background-image: url('img/footer-bg.jpg');
    background-position: center;
    background-size: cover;
}
.site-footer > .bottom p {
    margin-bottom: .5rem;
}
.site-footer > .bottom a,
.site-footer > .bottom li:after {
    color: #fff;
}
@media (min-width: 768px) {
    .site-footer > .bottom {
        padding-top: 2rem;
        padding-bottom: 2rem;
    }
    .site-footer > .bottom p {
        margin-bottom: 0;
    }
}
@media (min-width: 992px) {
    .site-footer > * {
        padding-left: 1rem;
        padding-right: 1rem;
    }
}

/* Search */
.searchform {
    margin-top: 2rem;
}
.searchform > div {
    position: relative;
}
.searchform input[type="text"] {
    border-radius: 20px;
    border: 0;
    padding: 4px 10px;
    display: block;
    width: 100%;
    width: calc(100% - 2rem);
    margin: 0 1rem;
}
.searchform #searchsubmit {
    position: absolute;
    left: 0;
    top: 0;
    z-index: -1;
    display: none;
}
@media (min-width: 992px) {
    .searchform {
        margin-top: .5rem;
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%;
        position: relative;
        width: 100%;
        padding-right: 15px;
        padding-left: 15px;
    }
    .searchform input[type="text"] {
        font-size: .8rem;
        width: 100%;
        margin-left: 0;
        margin-right: 0;
    }
}

/* Sidebar */
.sidebar {
}
.sidebar .sidebox + .sidebox {
    margin-top: 4rem;
}
.sidebox {
}
.sidebox .title {
    font-size: 1.25rem;
}
.sidebox a {
    text-decoration: none;
}
.sidebox a:hover,
.sidebox a:focus {
    text-decoration: underline;
}
.sidebox ul {
    padding-left: 1.25rem;
    margin: 0;
}
.sidebox ul li {
    margin-bottom: .25rem;
}
.sidebox ul li a {
    color: var(--black);
}
.sidebox ul li a:hover,
.sidebox ul li a:focus {
    color: var(--primary)
}
.sidebar .text-box .title {
    font-size: 1.5em;
    margin-bottom: 1em;
}
.sidebox .card .card-title {
    font-size: 1rem;
}
.sidebox .card.card-alt .card-title {
    margin-bottom: .5rem;
}
.sidebox .job-listings {
    background-color: transparent;
    padding-left: 0;
}
.sidebox .job-listings li {
    margin-bottom: 1rem;
}
.sidebox .job-listings p {
    margin-bottom: .5rem;
}
.sidebox .job-listings a:hover {
    text-decoration: none;
}
@media (min-width: 768px) {    
    .sidebar .sidebox + .sidebox {
        margin-top: 5rem;
    }
}

/* Facet WP */
.facetwp-facet-keyword .facetwp-input-wrap {
    display: block;
}
.facetwp-facet input.facetwp-search,
.facetwp-facet input.facetwp-location {
    min-width: 0 !important;
}
.facetwp-facet {
    margin-bottom: 0 !important;
}

/* Table */
table {
    margin-bottom: 1rem;
}
th, td {
    border: 1px solid #ddd;
    padding: .5rem;
}

/* Form */
.form-control:focus {
    border-color: gray;
    outline: 0;
    -webkit-box-shadow: none;
    box-shadow: none;
}
.frm_style_formidable-style.with_frm_style p.description, .frm_style_formidable-style.with_frm_style div.description, .frm_style_formidable-style.with_frm_style div.frm_description, .frm_style_formidable-style.with_frm_style .frm-show-form > div.frm_description, .frm_style_formidable-style.with_frm_style .frm_error {
    font-family: var(--font-heading);
}
.frm_style_formidable-style.with_frm_style label.frm_primary_label, .frm_style_formidable-style.with_frm_style.frm_login_form label {
    font-family: var(--font-heading);
    font-weight: 600;
    font-size: .825rem;
    margin-bottom: 0.15rem;
    color: var(--black);
}
.frm_style_formidable-style.with_frm_style input[type=text], .frm_style_formidable-style.with_frm_style input[type=password], .frm_style_formidable-style.with_frm_style input[type=email], .frm_style_formidable-style.with_frm_style input[type=number], .frm_style_formidable-style.with_frm_style input[type=url], .frm_style_formidable-style.with_frm_style input[type=tel], .frm_style_formidable-style.with_frm_style input[type=file], .frm_style_formidable-style.with_frm_style input[type=search], .frm_style_formidable-style.with_frm_style select,
.frm_style_formidable-style.with_frm_style input[type=text], .frm_style_formidable-style.with_frm_style input[type=password], .frm_style_formidable-style.with_frm_style input[type=email], .frm_style_formidable-style.with_frm_style input[type=number], .frm_style_formidable-style.with_frm_style input[type=url], .frm_style_formidable-style.with_frm_style input[type=tel], .frm_style_formidable-style.with_frm_style input[type=phone], .frm_style_formidable-style.with_frm_style input[type=search], .frm_style_formidable-style.with_frm_style select, .frm_style_formidable-style.with_frm_style textarea, .frm_form_fields_style, .frm_style_formidable-style.with_frm_style .frm_scroll_box .frm_opt_container, .frm_form_fields_active_style, .frm_form_fields_error_style, .frm_style_formidable-style.with_frm_style .chosen-container-multi .chosen-choices, .frm_style_formidable-style.with_frm_style .chosen-container-single .chosen-single {
    border-radius: 0;
    box-shadow: none;
}
.frm_style_formidable-style.with_frm_style .form-field input:not([type=file]):focus, .frm_style_formidable-style.with_frm_style select:focus, .frm_style_formidable-style.with_frm_style textarea:focus, .frm_style_formidable-style.with_frm_style .frm_focus_field input[type=text], .frm_style_formidable-style.with_frm_style .frm_focus_field input[type=password], .frm_style_formidable-style.with_frm_style .frm_focus_field input[type=email], .frm_style_formidable-style.with_frm_style .frm_focus_field input[type=number], .frm_style_formidable-style.with_frm_style .frm_focus_field input[type=url], .frm_style_formidable-style.with_frm_style .frm_focus_field input[type=tel], .frm_style_formidable-style.with_frm_style .frm_focus_field input[type=search], .frm_form_fields_active_style, .frm_style_formidable-style.with_frm_style .chosen-container-single.chosen-container-active .chosen-single, .frm_style_formidable-style.with_frm_style .chosen-container-active .chosen-choices {
    background-color: #ffffff;
    border-color: var(--black);
    box-shadow: none;
}
.frm-star-group input + label:before, .frm-star-group .star-rating:before,
.frm-star-group:not(.frm-star-hovered) input[type=radio]:checked + label:before, .frm-star-group input + label:hover:before, .frm-star-group:hover input + label:hover:before, .frm-star-group .star-rating-on:before, .frm-star-group .star-rating-hover:before {
    color: var(--primary);
}

/* Bullet Points */
.custom-li ul li {
    position: relative;
    list-style: none;
}
.custom-li ul li:before {
    background: #f9b707;
    width: 6px;
    height: 6px;
    left: -18px;
    top: 9px;
    position: absolute;
    border-radius: 50%;
}
.custom-li ul li:before {
    content: '';
}


/* Page Header */
.page-title {
    position: relative;
    color: #fff;
    margin-bottom: 0;
    padding: 0;
}
.page-title .media-container {
    position: relative;
    overflow: hidden;
    background-position: center;
    background-size: cover;
    aspect-ratio: 4/1;
}
.page-title .media-container.placeholder-banner-media-container {
    aspect-ratio: 12/1;
}
.page-title .media-container.moving-image-media-container {
    aspect-ratio: auto;
}
.page-title .media-container video,
.page-title .media-container .slick-slider .slick-track img {
    width: 100%;
    aspect-ratio: 3/1;
    object-fit: cover;
    margin-bottom: -8px;
    position: relative;
}
.home .page-title .content-container {
    width: 100%;
    position: absolute;
    z-index: 500;
    left: 0;
    right: 0;
}
.page-title h1 {
    text-transform: uppercase;
    font-size: 2rem;
    margin-top: -26px;
    color: var(--black);
    width: calc(100% - 5rem);
}
.home .page-title h1 {
    font-size: 2.5rem;
}
.page-title h1 > span {
    background-color: #fff;
    padding-left: 1rem;
    padding-right: 1rem;
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
    position: relative;
}
.page-title h1 > span:first-child {
    position: relative;
    z-index: 3;
}
.page-title h1.multi-line > span:first-child:before {
    content: '';
    height: 7px;
    width: 100%;
    background-color: #fff;
    display: block;
    position: absolute;
    left: 0;
    right: 0;
    bottom: -7px;
}
.page-title h1 > span:last-child:after {
    font-family: var(--fa-style-family,"Font Awesome 6 Pro");
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    line-height: 1;
    font-weight: 400;
    background-color: var(--primary);
    color: #fff;
    margin-top: -0.5rem;
    box-shadow: 0 0 6px 1px rgb(0 0 0 / 20%) !important;
    position: absolute;
    top: 8px;
    bottom: 0;
    left: 100%;
    line-height: 2.5;
    padding-left: 1rem;
    padding-right: 1rem;
    font-size: 80%;
    height: 100%;
    width: 3.25rem;
    width: calc(3.25rem - 1px);
}
.home .page-title h1 > span:last-child:after {
    width: 4.75rem;
    line-height: 2;
}
.page-title .content-container .smaller {
    font-size: .8em;
}
@media (min-width: 768px) { 
    .page-title h1 {
        font-size: 3.5rem;
    }
    .home .page-title h1 {
        font-size: 3rem;
    }
    .page-title h1 > span:last-child:after {
        line-height: 1.8;
        width: 5.25rem;
        width: calc(5.25rem - 1px);
    }
}
@media (min-width: 992px) {
    .page-title h1 {
        margin-top: -32px;
        width: 100%;
    }
    .home .page-title h1 {
        font-size: 5rem;
    }    
    .home .page-title h1 > span:last-child:after {
        width: 6.5rem;
    }
}
@media (min-width: 2200px) {
    .page-title .media-container video {
        aspect-ratio: 4/1;
    }
}

.slick-slider-hero .slider-item img {
    width: 100%;
    transform: scale(1);
    animation-delay: 0.5s;
}
.slick-slider-hero .slider-item[tabindex="-1"] img {
    transform: scale(1);
    animation-play-state: paused;
}
.slick-slider-hero .slider-item[tabindex="0"] img {
    animation: ken-burns-in 6s 1 ease-in-out forwards;
    animation-play-state: running;
}
/* The animation: from 1 scale to 1.1 */
@-webkit-keyframes ken-burns-in {
    0% {
        transform: scale(1);
    }
    to {
        transform: scale(1.1);
    }
}
@keyframes ken-burns-in {
    0% {
        transform: scale(1);
    }
    to {
        transform: scale(1.1);
    }
}


/* Jobs */
.filters-wrapper {
  margin-bottom: 1.5rem;
}
.toggleFilters {
  border: 1px solid #e3e3e3;
  padding: .75rem;
  margin-bottom: -1px;
  cursor: pointer;
}
.toggleFilters:after {
  content: '';
  font-family: var(--fa-style-family,"Font Awesome 6 Pro");
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  line-height: 1;
  font-size: 1.5rem;
  padding: .1rem;
  color: var(--primary);
  float: right;
}
.toggleFilters[aria-expanded="true"]:after {
  content: '\f106';
}
.toggleFilters[aria-expanded="false"]:after {
  content: '\f107';
}
.toggleFilters h3 {
  margin: 0;
  padding: 0;
  font-size: 1.25rem;
  display: inline-block;
}
.toggleFilters h3:before {
  content: none;
}
@media (min-width: 768px) {
  .toggleFilters {
    display: none;
  }
  #collapseFilters {
    display: block!important;
  }
}
.jobs-listing .filters {
    padding: 1.5rem 1.25rem;
    background-color: var(--light-grey);
}
.filters .filter + .filter {
    margin-top: 1.1rem;
}
.filters .filter label {
    display: block;
}
.filters .filter input,
.filters .filter select {
    padding: .5rem;    
    font-size: .875rem;
}
.facetwp-search, .facetwp-dropdown {
    width: 100%;
    border: 1px solid #b1b1b1;
}
.job-listings {
  list-style: none;
  margin: 0;
  padding: 0;
  background: white;
  font-size: 14px;
}
.job-listings li {
  margin: 0;
  box-shadow: var(--box-shadow);
  margin-bottom: 1.252em;
}
.job-listings a {
  text-decoration: none;
  background: white;
  padding: 1.252em 0.936em;
  display: block;
  box-shadow: none;
}
.job-listings a:hover,
.job-listings a:focus {
  background: #eee;
}
.job-listings a:hover h3,
.job-listings a:focus h3 {
}
.job-listings h3 {
  padding: 0;
  margin: 0 0 15px 0;
  font-size: 16px;
  font-weight:700;
}
.job-listings p {
  color: #333;
}
.job-listings p em {
  float: right;
  background: #fff;
  padding: 5px 10px;
  font-style: normal;
  margin-top: -0.312em;
}
.job-listings span {
}
.job-listings span.last {
  border-right: none;
}
.job-listings .apply_bottom {
  width: 50%;
  float: right;
  margin-top: 30px;
}
.page-numbers {
    padding: 0 0.5rem;
}
@media (min-width: 768px) {
  .job-listings .right p {
    text-align: right;
  }
  .job-listings .right p i {
      float: right;
      margin-left: 5px;
      margin-top: 2px;
  }
}
@media (min-width: 768px) {
    .jobs-listing .filters {
        box-shadow: 3.41px 3.657px 9px 1px rgba(0, 0, 0, 0.37);
    }
    .jobs {
        padding: 0 1.75rem;
    }
}

/* Single Job */
.top-link {
    padding-top: .75rem;
}
.single-jobs .sidebar {
    margin-bottom: 2rem;
}
table.details {
    border-collapse: collapse;
    border-spacing: 0;
    font-size: 100%;
    width: 100%;
    table-layout: fixed;
    font-size: 14px;
}
table.details td {
    padding: 10px 0px;
    vertical-align: top;
    display: table-cell;
    text-align: left;
    border: 0;
}
table.details td {
    word-wrap: break-word;
    line-height: 160%;
}
table.details td i {
    vertical-align: baseline !important;
}
table.details .label {
    color: var(--primary);
    font-weight: 600;
}
.sidebar .details .label i {
    vertical-align: inherit;
    margin-right: 5px;
}
.btn-apply {
    margin-top: 30px;
    display: block;
    text-align: left;
    margin-bottom: 10px;
}
.btn-apply [class*="fa-"] {
    float: right;
    padding-top: 4px;
}

/* Archive */
/*=========================================
Post Item
=========================================*/
.listings .post-item {
    padding: 2rem 1.5rem;
    background-color: var(--light-grey);
    border: 1px solid rgb(169 169 169 / 13%);
    margin-bottom: 1rem;
}
.listings .post-item > * {
    display: inline-block;
    vertical-align: top;
}
.listings .post-item .right {
    width: 80%;
    width: calc(100% - 5rem);
    padding-left: 1.5rem;
}
.listings .title a {
    text-decoration: none;
}
.calender {
    width: 4rem;
    background: var(--primary);
    color: #fff;
    text-align: center;
    border-radius: 6px;
    padding: .25rem .25rem .5rem;
}
.calender .day {
    font-size: 1.75rem;
}
.calender .year {
    font-size: .75rem;
}


.single-post .fa-calendar-alt,
.single-post .fa-calender {
    color: var(--secondary);
}
.single-post .post-content {
    border-bottom: 1px solid #f0f0f0;
    padding-bottom: 2.5rem;
    margin-bottom: 3rem;
}
.comment-navigation .nav-previous,
.posts-navigation .nav-previous,
.post-navigation .nav-previous {
    float: left;
    width: 50%;
}
.comment-navigation .nav-next,
.posts-navigation .nav-next,
.post-navigation .nav-next {
    float: right;
    text-align: right;
    width: 50%;
}

.blog .posts-navigation {
    margin-top: 2rem;
    width: 100%;
}

/* Single post */
.single .section-heading-small {
    border-bottom: 2px solid var(--primary);
    padding-bottom: 2rem;
}
.single .post-item {
    background-image: url(img/bg-cream.png);
    background-size: cover;
    background-position: center right;
    padding: 0;
    margin-top: 2rem;
    background-attachment: fixed;
}
.single .post-item .main {
    padding-bottom: 6rem;
    background-color: #fff;
    position: relative;
}
.single .post-item .main:before,
.single .post-item .main:after {
    background-color: #fff;
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;    
}
.single .post-item .main:before {
    left: -100%;
    right: 100%;
}
.single .post-item .main:after {
    left: 100%;
    right: -100%;
}
@media (min-width: 992px) {
    .single .post-item .main:after {
        content: none;
    }
}

/* Icon and Text */
.textAndIcon {
    margin-top: 1.25rem;
}
.textAndIcon > * {
    display: inline-block;
    vertical-align: top;
}
.textAndIcon .textAndIcon-icon {
    width: 1.25rem;
    font-size: .9rem;
    padding-top: .05rem;
}
.textAndIcon .textAndIcon-text {
    width: calc(100% - 1.75rem);
}

/* Text box */
.text-box {
    background-color: #fff;
    position: relative;
    padding: 2rem;
}
.text-box .title {
    color: var(--black);
    font-size: 1.125em;
    text-transform: uppercase;
}
.text-box .author {
    font-weight: 600;
    text-align: right;
    margin-bottom: 0;
}
.text-box a:not(.btn) {
    color: var(--black);
    text-decoration: none;
}
.text-box a:not(.btn):hover {
    color: var(--primary);
}

/* With angles */
.with-angles {
    position: relative;
}
.with-angles:before,
.with-angles:after {
    content: '';
    width: 17px;
    height: 15px;
    display: block;
    position: absolute;
}
.with-angles:before {
    border-right: 3px solid black;
    border-top: 3px solid black;
    border-radius: 0 3px 0 0;
    right: 0.75rem;
    top: 0.75rem;
}
.with-angles:after {
    border-left: 3px solid black;
    border-bottom: 3px solid black;
    border-radius: 0 0 0 3px;
    left: 0.75rem;
    bottom: 0.75rem;
}

/* Home intro */
.home-intro {
    background-attachment: fixed;
    padding-top: 0;
    padding-bottom: 0;
}
.home-intro .left {
}
.home-intro .right {
    padding: 2rem;
}
.home-intro .text-box {
    max-width: 400px;
    margin-left: auto;
    margin-right: auto;
    font-size: 1.125rem;
}
.home-intro .text-box + .text-box {
    margin-top: 2rem;
}
.home-intro .text-box.bottom-left {
    font-weight: 600;
    font-family: var(--font-heading);
    margin-left: 0;
    margin-right: 0;
    margin-top: 250px;
}
@media (min-width: 992px) {
    .home-intro .right {
        padding: 6rem;
    }
    .home-intro .text-box {
        padding: 3rem 2rem;
    }
    .home-intro .text-box + .text-box {
        margin-top: 3rem;
    }
}
@media (min-width: 1200px) {
    .home-intro .text-box.bottom-left {
        max-width: 500px;
    }
}

/* Full width content */
.full-width-content {
    text-align: center;
    padding-top: 6rem;
    padding-bottom: 6rem;
    font-size: 1.5rem;
}
@media (min-width: 768px) {
    .full-width-content {
        font-size: 3rem;
    }
}

/* Our sectors */
.our-sectors {
    background-attachment: fixed;
}
.our-sectors .card .left {
    background-color: var(--primary);
    text-align: center;
}
.our-sectors .card .decorative-text {
    writing-mode: vertical-rl;
    padding: .75rem 1rem 0rem;
    text-transform: uppercase;
    color: #fff;
    font-size: 1.75rem;
    margin: 0 auto;
    min-height: 330px;
}
.our-sectors .card ul {
    font-size: .9rem;
}
@media (min-width: 992px) {
    .our-sectors .card {
        height: 100%;
    }
}

/* Awards */
.award-item {
    background-color: #fff;
    display: flex !important;
    align-items: center;
    padding: 1rem;
    text-align: center;
    text-decoration: none;
    vertical-align: top;
    font-family: var(--font-heading);
    font-weight: 600;
}
.awards .section-heading {
    color: var(--black);
}
.awards .section-heading .sub-title {
    margin-top: 0.25rem;
}
.col-lg-8 > .award-item {
    margin: 1.5rem 2rem;
}
.award-item img {
    max-height: 60px;
    margin-left: auto;
    margin-right: auto;
    max-width: 100%;
}
.award-item img[src*=".svg"] {
    height: 60px;
}
.col-lg-8 > .award-item img {
    max-height: 80px;
}
@media (min-width: 992px) {
    .awards {
        background-attachment: fixed;
    }
    .awards .section-heading {
    }
}

/* Split section */
.split {
    padding-top: 0;
    padding-bottom: 0;
}
.split .left,
.split .right {
    padding: 2rem;
}
.split .dark-overlay-section .title {
    color: #fff;
}
@media (min-width: 992px) {
    .split .left,
    .split .right {        
        padding: 4rem 6rem;
    }
}
@media (min-width: 1800px) {
    .split .left {
        padding: 4rem 8rem 4rem 19rem;
    }
}
/* Latest news */
.latest-news-slider {
    background-color: #fff;
}
.latest-news-slider .section-heading {
    box-shadow: none;
    background-color: transparent;
    padding: 0;
    margin-bottom: 2.5rem;
}
.latest-news-slider .slick-slider {
    margin: 0 2.5rem;
}
.latest-news-slider .slick-slider .card {
    margin: 0.5rem .75rem 2rem;
}
.latest-news-slider .card .card-title {
    font-size: 1rem;
}
/* Latest roles */
.home .latest-roles {
    padding-bottom: 6rem;
}
.latest-roles {
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
}
.latest-roles .section-heading {
    box-shadow: none;
    background-color: transparent;
    padding: 0;
    margin-bottom: 2.5rem;
}
.latest-roles h3 {
    color: var(--black);
    text-transform: none;
}
.latest-roles .title {
    display: none;
}
.home .latest-roles .title {
    text-transform: uppercase;
    display: block;
}
.latest-roles .btn {
    display: none;
}
.home .latest-roles .btn {
    display: inline-block;
}
@media (min-width: 992px) {
    .home .latest-roles {
        padding-bottom: 4rem;
    }
}
@media (min-width: 1200px) {
    .latest-roles h3 {
        font-size: 1.25rem;
    }
    .home .latest-roles h3 {
        font-size: 1.75rem;
    }
}

/* Social section */
.social-section {
    font-size: 1.5rem;
}
.crt-widget {
    font-size: 16px;
}
@media (min-width: 768px) {
    .social-section {
        font-size: 3rem;
    }
}

/* Slick slider */
.slick-track {
    display: flex !important;
}
.slick-slide {
    height: inherit !important;
}
.slick-prev, .slick-next,
.slick-prev:hover, .slick-prev:focus, .slick-next:hover, .slick-next:focus{
    background: var(--primary);
    border-radius: 50%;
    height: 1.75rem;
    width: 1.75rem;
    box-shadow: 0 0 3px 0 rgb(0 0 0 / 50%);
}
.slick-prev:hover, .slick-prev:focus, .slick-next:hover, .slick-next:focus {
    box-shadow: none;
}
.slick-prev {
    margin-left: -2.75rem;
}
.slick-next {
    margin-right: -2.75rem;
}
.slick-prev.slick-disabled:before, .slick-next.slick-disabled:before {
    opacity: .75;
}
.slick-dots {
    bottom: -0.75rem;
    padding-left: 0 !important;
}
.slick-dots li button {
    background: #dadada;
}

/* Red grid */
.red-grid-section {
    background-image: url(img/bg-cream.png);
    background-position: center top;
}
.red-grid-item .card-title {
    display: flex;
    align-items: center;
}
.red-grid-item .card-title .number {
    border: 2px solid var(--primary);
    width: 1.825rem;
    height: 1.825rem;
    text-align: center;
    border-radius: 50%;
    margin-right: 0.5rem;
    line-height: 1.3;
}
.red-grid-item .card-title .title {
    font-size: 1rem;
    color: var(--black);
    width: calc(100% - 2.25rem);
}
.red-grid-item .card-title > * {
    flex-shrink: 0;
    width: 100%;
    max-width: 100%;
}
.card.red-grid-item .card-body {
    padding-top: 1.75rem;
    padding-bottom: 1.75rem;
}
.card-red-bg {
    position: relative;
    height: 160px;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    padding: 1.5rem 1rem;
    color: #fff;
    text-transform: uppercase;
    font-weight: 600;
    font-size: 1.125rem;
    display: flex;
    align-items: center;
}
.card-red-bg:before {
    content: '';
    background-color: var(--primary);
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    opacity: .8;
}
.card-red-bg > * {
    position: relative;
    z-index: 2;
}
.card-red-bg p {
    margin-bottom: 0;
}
.red-grid-item .card-footer {
    padding-top: 1rem;
    font-size: .9375rem;
}
.red-grid-item .card-footer > *:last-child {
    margin-bottom: 0;
}
@media (min-width: 768px) { 
}
@media (min-width: 992px) { 
    .card-red-bg {
        height: 210px;
    }
}
@media (min-width: 1200px) { 
    .card-red-bg {
        font-size: 1.3rem;
    }
}

/* Timeline */
.timeline:not(.timeline--horizontal):before {
    background-color: var(--black);
    width: 2px;
}
.timeline--mobile:before {
    left: 8px!important;
}
.timeline--horizontal {
    overflow: visible;
}
.timeline--horizontal .timeline-divider {
    background-color: var(--black);
    height: 3px;
}
.timeline-nav-button {
    background: none;
    
    border: 2px solid var(--primary);
    width: 2rem;
    height: 2rem;
    display: inline-block;
    text-align: center;
    line-height: 2.75rem;
    
    text-indent: 0;
    padding: 0;
    background-color: var(--primary);
    border-radius: 50%;
    box-shadow: var(--box-shadow);
    color: #fff;
}
.timeline-nav-button:hover,
.timeline-nav-button:focus {
    box-shadow: none;
    background-color: transparent;
    color: var(--primary);
}
.timeline-nav-button--prev {
    left: -2rem;
}
.timeline-nav-button--next {
    right: -2rem;
}
.timeline-nav-button--prev:before,
.timeline-nav-button--next:before {
    background: none;
    font-family: 'Font Awesome\ 5 Pro';
    font-size: 1rem;
    font-weight: 900;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    line-height: 1rem;
    width: initial;
}
.timeline-nav-button--prev:before {
    content: '\f104';
}
.timeline-nav-button--next:before {
    content: '\f105';
}
.timeline-nav-button:disabled {
    opacity: 0;
}
.timeline__item:after {
    background: var(--primary);  
    border: 0;
    height: 14px;
    width: 14px;
}
.timeline--horizontal .timeline__item .timeline__content__wrap {
    padding-top: 1rem;
    height: 100%;
}
.timeline__content {
    border: none;
    color: #2d2d2d;
    margin: 0 auto;
    padding: 1.5rem;
    border-radius: 0;
    box-shadow: 0 0 7px 0 rgb(191 191 191 / 50%);
    height: 100%;
    margin-right: 0.5rem;
}
.timeline__content h1,
.timeline__content h2,
.timeline__content h3,
.timeline__content h4,
.timeline__content h5,
.timeline__content h6 {
    text-transform: uppercase;
    color: var(--black);
    margin-bottom: 1rem;
    margin-top: 1.25rem;
}
.timeline__content p {
    line-height: 1.2;
}
.timeline--horizontal .timeline__item .timeline__content:before {
    border-left: 22px solid transparent;
    border-right: 22px solid transparent;
    border-top: 22px solid #eaeaea;
    left: 50%;
    right: auto;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    top: 100%;
}
.timeline--horizontal .timeline__item .timeline__content:after {
    border-left: 20px solid transparent;
    border-right: 20px solid transparent;
    border-top: 20px solid #fff;
}
.timeline--mobile .timeline__item .timeline__content:before {
    border-bottom: 12px solid transparent;
    border-right: 12px solid #eaeaea;
    border-left: none;
    border-top: 12px solid transparent;
}
.timeline--mobile .timeline__item .timeline__content:after {
    border-bottom: 10px solid transparent;
    border-right: 10px solid #fff;
    border-left: none;
    border-top: 10px solid transparent;
}
/* Jump Animation */
.timeline-nav-button--next {
    animation: jump 4s infinite;
}
@-webkit-keyframes pulse {
    80% {
        margin-right: 0;
    }
    85% {
        margin-right: -5px;
    }
    90% {
        margin-right: 0;
    }
    95% {
        margin-right: -5px;
    }
    100% {
        margin-right: 0;
    }
}
@keyframes jump {
    80% {
        margin-right: 0;
    }
    85% {
        margin-right: -5px;
    }
    90% {
        margin-right: 0;
    }
    95% {
        margin-right: -5px;
    }
    100% {
        margin-right: 0;
    }
}
@media only screen and (min-width: 992px) {
    .timeline--horizontal {
        margin-bottom: -15%;
    }
    .timeline__content {
        width: 95%;
        margin-right: 0.5rem;
    }
}

/* Team grid */
.team-grid > .row > [class*=col] {
    margin-bottom: 2rem;
}
.team-grid .card .socialMedia a {
    font-size: 1.5rem;
    width: 2.75rem;
    height: 2.75rem;
    line-height: 2.5rem;
}
.team-grid .card a img {
    transition: all 0.05s ease;
}
.team-grid .card a:hover img {
    border: 3px solid var(--primary);
}
.team-grid .card a:hover + .card-body .card-title a {
    text-decoration: none;
    color: var(--primary);
}
.team-grid .card a:hover + .card-body .socialMedia a {
    color: #fff;
}
@media (max-width: 767px) {
    .row-cols-3 .card .card-body {
        padding: .5rem;
        font-size: ;
    }
    .row-cols-3 .card.icon-box .card-title {
        font-size: .75rem;
    }
}
@media (min-width: 768px) {  
    .team-grid > .row {
        --bs-gutter-x: 3rem;
    }
    .team-grid > .row > * {
        margin-bottom: 3rem;
    }
}
@media (min-width: 1200px) {  
    .team-grid > .row {
        --bs-gutter-x: 6rem;
    }
    .team-grid > .row > [class*=col] {
        margin-bottom: 4rem;
    }
}

/* Team member profile */
.team-member-profile .text {
    margin-top: 3rem;
}
.team-member-profile .text .meta-data {
    padding: 1.5rem 0;
}
.team-member-profile .image {
    position: relative;
}
.team-member-profile .image img {
    width: 100%;
}
.team-member-profile .image .socialMedia {
    position: absolute;
    right: 1rem;
    bottom: 1rem;
}
.team-member-profile .image .socialMedia  a {
    font-size: 1.75rem;
    width: 3.25rem;
    height: 3.25rem;
    line-height: 3rem;
}
@media (min-width: 768px) {
    .team-member-profile .text {
        padding-right: 1rem;
        margin-top: 0;
    }
    .team-member-profile .title {
        font-size: 2.125rem;
    }
    .team-member-profile .image .socialMedia {
        right: 2rem;
        bottom: 2rem;
    }
}
@media (min-width: 992px) {
    .team-member-profile .text {
        padding-right: 4rem;
    }
    .team-member-profile .job-role {
        font-size: 2.25rem;
        margin-bottom: .75rem;
    }
}
@media (min-width: 1200px) {
    .team-member-profile .text {
        padding-right: 6rem;
    }
}

/* Meta data */
dl.meta-data > * {
    display: inline-block;
}
dl.meta-data dt {
    color: var(--primary);
}

/* Map */
.map-section {
    padding-top: 0;
    padding-bottom: 0;
}
.map-section .section-heading {
    top: -1rem;
}
#map {
    height: 100%;
    height: 500px;
}

/* Image slider */
.slick-slider.image-slider {
    margin-top: 2rem;
    margin-bottom: 2rem;
}
.slick-slider.image-slider .slider-item {
    margin: 0.5rem 0.75rem 2rem;
    box-shadow: var(--box-shadow);
}
.single-case_studies .slick-slider.image-slider .slider-item img {
    aspect-ratio: 1/1;
    object-fit: cover;
    box-shadow: none;
    width: 100%;
    max-height: 100%;
}
.slick-slider.image-slider .slick-dots {
    bottom: -2rem;
}
@media (min-width: 992px) {
    .slick-slider.image-slider {
        margin-top: 3rem;
        margin-bottom: 3rem;
    }
}

/* Number slick dots */
.number-slick-dots {

}
.number-slick-dots ul {
    list-style: none;
    counter-reset: my-awesome-counter;
}
.number-slick-dots ul li {
    counter-increment: my-awesome-counter;
}
.number-slick-dots ul li::before {
    content: counter(my-awesome-counter);
    color: var(--primary);
    font-weight: 600;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    line-height: 1.75rem;
    z-index: 5;
}
.number-slick-dots ul li.slick-active::before {
    color: #fff;
}
.number-slick-dots .slick-dots li button {
    opacity: 1;
    width: 1.75rem;
    height: 1.75rem;
    background-color: #fff;
    border: 2px solid var(--primary);
}
.number-slick-dots .slick-dots li.slick-active button {
    background-color: var(--primary);
}


/* Background colour */
.bg-colour-white {
    background-color: #fff;
}
.bg-colour-cream {
    background-color: var(--cream);
}

/* Split - Text and Media */
.split-text-and-media {
    padding: 3rem 0;
}
.split-text-and-media.has-pattern:before {
    background-image: url(img/pattern-1.png);
    background-size: 65%;
    background-position: center right;
}
.split-text-and-media .text {
    padding-bottom: 2rem;
}
.split-text-and-media .media {
}
.split-text-and-media .text .title {
    margin-bottom: 1.25rem;
}
.split-text-and-media .media img {
    width: 100%;
    height: auto;
}
.split-text-and-media .media iframe {
    width: 100%;
    height: 100%;
    min-height: 250px;
}
.split-text-and-media img,
.split-text-and-media video,
.split-text-and-media iframe {
    box-shadow: var(--box-shadow);
}
@media (min-width: 768px) {
    .split-text-and-media .text {
        padding-bottom: 0;
    }
    .split-text-and-media:nth-child(odd) .text {
        order: 12;
    }
    .split-text-and-media:nth-child(odd) .media {
        order: 1;
    }
    .split-text-and-media:nth-child(even) .text {
    }
    .split-text-and-media:nth-child(even) .media {
    }
}
@media (min-width: 992px) {
    .split-text-and-media {
        padding: 5rem 0;
    }
    .split-text-and-media:nth-child(odd) .text {
        padding-left: 2rem;
    }
    .split-text-and-media:nth-child(odd) .media {
    }
    .split-text-and-media:nth-child(even) .text {
        padding-right: 2rem;
    }
    .split-text-and-media:nth-child(even) .media {
    }
}
@media (min-width: 1200px) {
    .split-text-and-media:nth-child(odd) .text {
        padding-left: 4rem;
    }
    .split-text-and-media:nth-child(odd) .media {
    }
    .split-text-and-media:nth-child(even) .text {
        padding-right: 4rem;
    }
    .split-text-and-media:nth-child(even) .media {
    }
    .split-text-and-media .text .title {
        font-size: 2rem;
    }
}

/* Full width YWSIWYG */
.full-width-wysiwyg.has-pattern:before {
    background-image: url(img/pattern-2.png);
}
.full-width-wysiwyg .title {
    margin-bottom: 1.25rem;
}
@media (min-width: 1200px) {
    .full-width-wysiwyg .title {
        font-size: 2rem;
    }
}

/* Has pattern */
.has-pattern {
    position: relative;
}
.has-pattern:before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}
.has-pattern > * {
    position: relative;
    z-index: 5;
}

/* Awards page */
.page-template-awards .page-title,
.page-template-awards .page-title .content-container {
    background-color: #f9f4f4;
}
.page-template-awards .awards {
    background-position: center top;
    background-attachment: initial;
}

/* Sector page */
.page-template-sector.page-parent .page-title h1 > span:last-child:after {
    content: none;
}