a,
abbr,
acronym,
address,
area,
b,
bdo,
big,
blockquote,
body,
button,
caption,
cite,
code,
col,
colgroup,
dd,
del,
dfn,
div,
dl,
dt,
em,
fieldset,
form,
h1,
h2,
h3,
h4,
h5,
h6,
hr,
html,
i,
images,
ins,
kbd,
label,
legend,
li,
map,
object,
ol,
p,
param,
pre,
q,
samp,
small,
span,
strong,
sub,
sup,
table,
tbody,
td,
textarea,
tfoot,
th,
thead,
tr,
tt,
ul,
var {
    margin: 0;
    padding: 0;
    vertical-align: baseline
}

:focus {
    outline: 0
}

a,
a:visited {
    color: #86bc25
}

abbr,
acronym,
dfn {
    border-bottom: 1px dotted;
    cursor: help
}

blockquote {
    background: #eee;
    border-left: 2px solid #ccc;
    margin: 0 0 1em
}

blockquote p {
    margin: .5em
}

code,
pre {
    font-size: 1em
}

del {
    text-decoration: line-through
}

dfn {
    font-style: italic;
    font-weight: bold
}

dt {
    font-weight: bold
}

dd {
    margin: 0 0 1em 10px
}

fieldset {
    border: 0
}

fieldset p {
    margin: 0 0 5px
}

img {
    border: 0;
    vertical-align: bottom
}

ins {
    text-decoration: none
}

hr {
    margin: 0 0 .5em
}

p {
    margin: 0 0 1em
}

ul,
ol {
    list-style: none;
    margin: 0 0 1em
}

textarea {
    font: 1em Arial;
    overflow: auto
}

tt {
    display: block;
    margin: .5em 0;
    padding: .5em 1em
}

th {
    background: #eee;
    border: solid #ccc;
    border-width: 1px 0 0 1px;
    padding: 3px
}

td {
    border: solid #ccc;
    border-width: 1px 0 0 1px;
    padding: 3px
}

table {
    border: solid #ccc;
    border-width: 0 1px 1px 0
}

ol {
    list-style: decimal;
    margin-left: 20px
}

@font-face {
    font-family: "DM Sans";
    src: url("../../assets/fonts/DMSans-SemiBold.woff2") format("woff2"), url("../../assets/fonts/DMSans-SemiBold.woff") format("woff");
    font-weight: 600;
    font-style: normal;
    font-display: swap
}

@font-face {
    font-family: "DM Sans";
    src: url("../../assets/fonts/DMSans-Regular.woff2") format("woff2"), url("../../assets/fonts/DMSans-Regular.woff") format("woff");
    font-weight: normal;
    font-style: normal;
    font-display: swap
}

@font-face {
    font-family: "DM Sans";
    src: url("../../assets/fonts/DMSans-Bold.woff2") format("woff2"), url("../../assets/fonts/DMSans-Bold.woff") format("woff");
    font-weight: bold;
    font-style: normal;
    font-display: swap
}

@font-face {
    font-family: "DM Sans";
    src: url("../../assets/fonts/DMSans24pt-Light.woff2") format("woff2"), url("../../assets/fonts/DMSans24pt-Light.woff") format("woff");
    font-weight: 300;
    font-style: normal;
    font-display: swap
}

.acf-block-preview .faq-content .text-wrapper.full-width,
#main .faq-content .text-wrapper.full-width {
    width: 100%;
    max-width: 1100px;
    padding-left: 280px
}

.acf-block-preview .faq-content h3,
#main .faq-content h3 {
    padding-left: 0px !important;
    font-size: 34px !important;
    line-height: 36px !important;
    font-weight: 300;
    margin: 0 0 25px !important;
}

.acf-block-preview .faq-content ul li,
#main .faq-content ul li {
    font-size: initial;
    line-height: initial;
}

.acf-block-preview .faq-content .text-wrapper.full-width .btn,
#main .faq-content .text-wrapper.full-width .btn {
    max-width: 540px
}

.acf-block-preview .faq-content .text-wrapper .contact-columns,
#main .faq-content .text-wrapper .contact-columns {
    padding-bottom: 0
}

.acf-block-preview .faq-content .text-wrapper .contact-columns h3,
#main .faq-content .text-wrapper .contact-columns h3 {
    padding-left: 0
}

.acf-block-preview .faq-content .text-wrapper .contact-columns .columns-hold,
#main .faq-content .text-wrapper .contact-columns .columns-hold {
    max-width: 1000px
}

.acf-block-preview .faq-content .text-wrapper .contact-columns .col,
#main .faq-content .text-wrapper .contact-columns .col {
    max-width: 48%
}

.logos .logos-hold .el img {
    max-width: 160px;
    height: 120px;
    width: auto;
    object-fit: contain
}

.acf-block-preview .faq-content .l-col .text-wrapper,
#main .faq-content .l-col .text-wrapper {
    padding-left: 0
}

.acf-block-preview .faq-content .l-col,
#main .faq-content .l-col {
    padding-left: 180px
}

.acf-block-preview .faq-content .r-col,
#main .faq-content .r-col {
    padding-right: 180px
}

.acf-block-preview .faq-content .l-col h2,
.acf-block-preview .faq-content .r-col h2,
#main .faq-content .l-col h2,
#main .faq-content .r-col h2 {
    font-size: 38px !important;
    line-height: 40px !important;
    margin-bottom: 30px !important
}

.acf-block-preview .faq-content .l-col,
.acf-block-preview .faq-content .r-col,
#main .faq-content .l-col,
#main .faq-content .r-col {
    width: 35%
}

.acf-block-preview .faq-content .img-wrapper.r-col img,
#main .faq-content .img-wrapper.r-col img {
    margin-bottom: 30px;
    position: relative
}

.acf-block-preview .faq-content .img-wrapper.r-col img:after,
#main .faq-content .img-wrapper.r-col img:after {
    content: "";
    width: 250px;
    height: calc(100% - 100px);
    background: #86bc25;
    position: absolute;
    top: 0;
    right: -600px;
    opacity: 0;
    transition: ease .7s all
}

.acf-block-preview .faq-content .img-wrapper.r-col:after,
#main .faq-content .img-wrapper.r-col:after {
    display: none
}

.acf-block-preview .faq-content h4,
#main .faq-content h4 {
    font-size: 20px;
    line-height: 28px;
    margin: 0 0 15px;
    font-weight: 600
}

.acf-block-preview .faq-content .r-col p,
#main .faq-content .r-col p {
    font-size: 20px !important;
    line-height: 28px !important
}

.acf-block-preview .faq-content ul,
#main .faq-content ul {
    font-size: 20px
}

.acf-block-preview .faq-content p strong,
#main .faq-content p strong {
    font-weight: 600
}

.page-id-20 .services .wrap {
    max-width: 100%
}

.page-id-20 .services a.faq-head.active .acc-title,
.page-id-20 .services a.faq-head.active span.num {
    color: #3d4548
}

@media only screen and (max-width: 1224px) {

    .acf-block-preview .faq-content .text-wrapper.full-width,
    #main .faq-content .text-wrapper.full-width {
        padding-left: 170px;
        max-width: none
    }
}

@media only screen and (max-width: 767px) {

    .acf-block-preview .faq-content .text-wrapper .contact-columns .col,
    #main .faq-content .text-wrapper .contact-columns .col {
        max-width: 100%
    }

    .acf-block-preview .faq-content .text-wrapper.full-width,
    #main .faq-content .text-wrapper.full-width {
        padding-left: 40px;
        box-sizing: border-box
    }

    .logos .logos-hold .el img {
        max-height: 80 !important
    }
}

body {
    font-family: "DM Sans", sans-serif;
    background: #fff;
    color: #3d4548
}

body.nav-active {
    overflow: hidden
}

#page {
    width: 100%;
    overflow: hidden;
    padding-top: 96px
}

.content-wrapper {
    max-width: 1790px;
    width: 100%;
    padding: 0 60px;
    box-sizing: border-box;
    margin: 0 auto
}

#branding {
    background: #3d4548;
    height: 96px;
    width: 100%;
    align-items: center;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 200;
    transition: ease 350ms all
}

#branding .top-bar {
    width: 100%;
    background: #3d4548;
    color: #fff;
    padding: 14px 0;
    font-size: 16px;
    transition: ease 350ms all
}

#branding .top-bar p {
    margin: 0
}

#branding .top-bar p a {
    color: #fff
}

#branding .top-bar p a:hover {
    text-decoration: none
}

#branding #logo,
#branding #logo-sticky {
    position: relative;
    z-index: 100;
    width: 190px;
    transition: ease 350ms all
}

#branding #logo-sticky {
    opacity: 0;
    visibility: hidden;
    position: absolute;
    left: 60px;
    top: 23px;
    transition: ease 350ms all
}

#branding .content-wrapper {
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative
}

#branding .content-wrapper .nav-hold {
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center
}

#branding .content-wrapper .nav-hold .controls {
    width: 215px;
    display: flex;
    justify-content: space-between;
    align-items: center
}

#branding ul#main-nav {
    position: fixed;
    right: -1320px;
    top: 0;
    height: 100vh;
    max-height: 100%;
    overflow: auto;
    width: 1320px;
    background: #3d4548;
    z-index: 15;
    font-size: 48px;
    line-height: 56px;
    padding: 150px 80px 0 145px;
    box-sizing: border-box;
    transition: ease 350ms all;
    counter-reset: li-counter;
    opacity: 0
}

#branding ul#main-nav>li {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between
}

#branding ul#main-nav>li>a {
    display: block;
    width: 100%;
    box-sizing: border-box
}

#branding ul#main-nav li {
    border-bottom: 2px solid #fff;
    justify-content: space-between;
    align-items: flex-start;
    counter-increment: li-counter;
    position: relative;
    opacity: 0;
    transform: translateY(10px);
    transition: opacity .4s ease, transform .4s ease
}

#branding ul#main-nav li a {
    color: #fff;
    text-decoration: none;
    display: block;
    padding: 15px 0 20px 55px;
    transition: ease 350ms all;
    box-sizing: border-box
}

#branding ul#main-nav li a:hover {
    color: #86bc25
}

#branding ul#main-nav li .left-col,
#branding ul#main-nav li .right-col {
    width: 47.5%;
    padding: 0;
    box-sizing: border-box;
    height: 0;
    visibility: hidden;
    opacity: 0;
    transition: ease 350ms all
}

#branding ul#main-nav li .left-col.active-menu,
#branding ul#main-nav li .right-col.active-menu {
    padding: 30px 0 15px 60px;
    height: auto;
    visibility: visible;
    opacity: 1
}

#branding ul#main-nav li .left-col.active-menu ul,
#branding ul#main-nav li .right-col.active-menu ul {
    height: auto;
    visibility: visible;
    opacity: 1
}

#branding ul#main-nav li .left-col.active-menu ul li.plus,
#branding ul#main-nav li .right-col.active-menu ul li.plus {
    margin-bottom: 0
}

#branding ul#main-nav li .left-col>ul>li>a,
#branding ul#main-nav li .right-col>ul>li>a {
    font-weight: 700
}

#branding ul#main-nav li .left-col>ul>li>a[href="#"],
#branding ul#main-nav li .right-col>ul>li>a[href="#"] {
    pointer-events: none
}

#branding ul#main-nav li .left-col>ul>li>a[href="#"]:hover,
#branding ul#main-nav li .right-col>ul>li>a[href="#"]:hover {
    color: #fff
}

#branding ul#main-nav li .left-col>ul>li>a[href="#"]+ul,
#branding ul#main-nav li .right-col>ul>li>a[href="#"]+ul {
    padding-top: 0
}

#branding ul#main-nav li .left-col li,
#branding ul#main-nav li .right-col li {
    margin-bottom: 15px
}

#branding ul#main-nav li .right-col li {
    margin-bottom: 8px;
}

#branding ul#main-nav li .left-col ul,
#branding ul#main-nav li .right-col ul {
    transition: all .5s ease-in-out;
    height: 0;
    font-size: 24px;
    opacity: 0;
    visibility: hidden;
    position: static;
    width: 100%;
    line-height: normal;
    margin: 0;
    padding: 0
}

#branding ul#main-nav li .left-col ul li,
#branding ul#main-nav li .right-col ul li {
    border: none;
    padding: 0 0 5px;
    display: block;
    vertical-align: top;
    opacity: 1;
    transform: translateY(0);
    counter-increment: none
}

#branding ul#main-nav li .left-col ul li:first-child,
#branding ul#main-nav li .right-col ul li:first-child {
    border: none;
    padding-top: 0
}

#branding ul#main-nav li .left-col ul li a,
#branding ul#main-nav li .right-col ul li a {
    margin: 0;
    padding: 0;
    display: inline-block;
    vertical-align: top;
    position: relative
}

#branding ul#main-nav li .left-col ul li:before,
#branding ul#main-nav li .right-col ul li:before {
    display: none
}

#branding ul#main-nav li .left-col ul li:after,
#branding ul#main-nav li .right-col ul li:after {
    position: relative
}

#branding ul#main-nav li .left-col ul li ul,
#branding ul#main-nav li .right-col ul li ul {
    display: block;
    padding: 20px 0 15px;
    height: auto;
    visibility: visible;
    opacity: 1;
    font-size: 18px;
    transform: translate(0, 0)
}

#branding ul#main-nav li .left-col ul li ul li,
#branding ul#main-nav li .right-col ul li ul li {
    margin: 0 0 15px;
    border: none;
    padding-top: 0
}

#branding ul#main-nav li .left-col ul li ul li ul,
#branding ul#main-nav li .right-col ul li ul li ul {
    font-size: 18px;
    padding: 0
}

#branding ul#main-nav li .left-col ul li ul li ul li,
#branding ul#main-nav li .right-col ul li ul li ul li {
    position: relative;
    padding: 0 0 0 25px;
    margin: 0
}

#branding ul#main-nav li .left-col ul li ul li ul li:after,
#branding ul#main-nav li .right-col ul li ul li ul li:after {
    content: "";
    position: absolute;
    left: 3px;
    top: 11px;
    width: 9px;
    height: 1px;
    background: #fff
}

#branding ul#main-nav li .left-col ul li ul li ul li:before,
#branding ul#main-nav li .right-col ul li ul li ul li:before {
    content: "";
    display: block;
    position: absolute;
    left: 7px;
    top: 7px;
    width: 1px;
    height: 9px;
    background: #fff
}

#branding ul#main-nav li .left-col ul li ul li:last-child,
#branding ul#main-nav li .right-col ul li ul li:last-child {
    border: none
}

#branding ul#main-nav li .left-col ul.active-menu,
#branding ul#main-nav li .right-col ul.active-menu {
    display: flex;
    height: auto;
    flex-wrap: wrap;
    padding: 30px 0 15px 60px;
    opacity: 1;
    visibility: visible
}

#branding ul#main-nav li .left-col ul.active-menu li,
#branding ul#main-nav li .right-col ul.active-menu li {
    width: 47.5%
}

#branding ul#main-nav li .left-col ul.active-menu li ul,
#branding ul#main-nav li .right-col ul.active-menu li ul {
    width: 100%
}

#branding ul#main-nav li .left-col ul.active-menu li ul li,
#branding ul#main-nav li .right-col ul.active-menu li ul li {
    width: 100%
}

#branding ul#main-nav li .left-col ul.active-menu li a,
#branding ul#main-nav li .right-col ul.active-menu li a {
    width: 100%
}

#branding ul#main-nav li .left-col ul.active-menu>li>a,
#branding ul#main-nav li .right-col ul.active-menu>li>a {
    font-weight: 700
}

#branding ul#main-nav li:last-child {
    border: none
}

#branding ul#main-nav li:hover {
    color: #86bc25
}

#branding ul#main-nav li:hover:before {
    color: #86bc25
}

#branding ul#main-nav.active {
    right: 0;
    opacity: 1
}

#branding ul#main-nav.active>li {
    opacity: 1;
    transform: translateY(0)
}

#branding ul#main-nav li:before {
    content: "0" counter(li-counter);
    position: absolute;
    left: 0;
    top: 6px;
    font-size: 20px;
    color: #fff
}

#branding nav {
    display: flex;
    align-items: center
}

#branding a.menu-btn {
    font-size: 20px;
    color: #fff;
    position: relative;
    text-decoration: none;
    width: 100px;
    letter-spacing: -1px;
    display: flex;
    align-items: center;
    vertical-align: top;
    z-index: 20;
    height: 48px;
    letter-spacing: .5px
}

#branding a.menu-btn span {
    height: 2px;
    width: 32px;
    background: #fff;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translate(0, -50%);
    transition: ease 350ms all
}

#branding a.menu-btn span:before {
    content: "";
    width: 32px;
    height: 2px;
    position: absolute;
    top: -10px;
    right: 0;
    background: #fff;
    transition: ease 350ms all
}

#branding a.menu-btn span:after {
    content: "";
    width: 32px;
    height: 2px;
    position: absolute;
    bottom: -10px;
    right: 0;
    background: #fff;
    transition: ease 350ms all
}

#branding a.menu-btn.active span {
    height: 0
}

#branding a.menu-btn.active span:before {
    opacity: 1;
    transform: rotate(45deg);
    top: 0px
}

#branding a.menu-btn.active span:after {
    opacity: 1;
    transform: rotate(-45deg);
    bottom: -2px
}

#branding a.menu-btn em {
    font-style: normal;
    display: inline-block;
    vertical-align: top
}

#branding a.user-menu {
    display: inline-block;
    vertical-align: top;
    margin-left: 20px;
    padding: 30px 35px;
    transition: ease 350ms all;
    position: relative;
    z-index: 20;
    width: 95px;
    height: 95px;
    box-sizing: border-box
}

#branding a.user-menu svg {
    fill: #fff;
    width: 26px;
    height: auto;
    position: relative;
    top: 3px
}

#branding a.user-menu svg.x-icon {
    width: 25px;
    height: auto;
    display: none
}

#branding a.user-menu.active,
#branding a.user-menu:hover {
    background: #86bc25
}

#branding a.user-menu.active svg.u-icon {
    display: none
}

#branding a.user-menu.active svg.x-icon {
    display: block
}

#branding ul#user-nav {
    position: absolute;
    right: 60px;
    top: 95px;
    background: #86bc25;
    padding: 40px;
    transition: ease 350ms all;
    opacity: 0;
    visibility: hidden
}

#branding ul#user-nav.active {
    opacity: 1;
    visibility: visible
}

#branding ul#user-nav li {
    margin: 0 0 15px
}

#branding ul#user-nav li:last-child {
    margin-bottom: 0
}

#branding ul#user-nav a {
    color: #fff;
    text-decoration: none;
    display: inline-block;
    padding-right: 30px
}

#branding ul#user-nav a.external {
    background: url(../../assets/img/ex-link.svg) no-repeat 100% 0;
    background-size: auto;
    background-size: 20px auto
}

#branding ul#user-nav a:hover {
    text-decoration: underline
}

#branding ul#user-nav a:focus-visible {
    border: 1px solid #fff
}

#branding.fixed-active {
    background: #3d4548 !important
}

#branding.fixed-active .top-bar {
    margin-top: -49px
}

#branding.fixed-active #logo {
    opacity: 0;
    visibility: hidden
}

#branding.fixed-active #logo-sticky {
    opacity: 1;
    visibility: visible
}

#branding ul#main-nav.active>li:nth-child(1) {
    transition-delay: 0s
}

#branding ul#main-nav.active>li:nth-child(2) {
    transition-delay: 0.15s
}

#branding ul#main-nav.active>li:nth-child(3) {
    transition-delay: 0.3s
}

#branding ul#main-nav.active>li:nth-child(4) {
    transition-delay: 0.45s
}

#branding ul#main-nav.active>li:nth-child(5) {
    transition-delay: 0.6s
}

#branding ul#main-nav.active>li:nth-child(6) {
    transition-delay: 0.75s
}

#branding ul#main-nav.active>li:nth-child(7) {
    transition-delay: 0.9s
}

#branding ul#main-nav.active>li:nth-child(8) {
    transition-delay: 1.05s
}

#branding ul#main-nav.active>li:nth-child(9) {
    transition-delay: 1.2s
}

#branding ul#main-nav.active>li:nth-child(10) {
    transition-delay: 1.35s
}

#branding ul#main-nav.active>li:nth-child(11) {
    transition-delay: 1.5s
}

#branding ul#main-nav.active>li:nth-child(12) {
    transition-delay: 1.65s
}

#branding ul#main-nav.active>li:nth-child(13) {
    transition-delay: 1.8s
}

#branding ul#main-nav.active>li:nth-child(14) {
    transition-delay: 1.95s
}

#branding ul#main-nav.active>li:nth-child(15) {
    transition-delay: 2.1s
}

#branding ul#main-nav.active>li:nth-child(16) {
    transition-delay: 2.25s
}

#branding ul#main-nav.active>li:nth-child(17) {
    transition-delay: 2.4s
}

#branding ul#main-nav.active>li:nth-child(18) {
    transition-delay: 2.55s
}

#branding ul#main-nav.active>li:nth-child(19) {
    transition-delay: 2.7s
}

#branding ul#main-nav.active>li:nth-child(20) {
    transition-delay: 2.85s
}

.rank-math-breadcrumb {
    font-size: 20px;
    text-transform: uppercase;
    letter-spacing: 1px;
    padding: 35px 0 0
}

.rank-math-breadcrumb span,
.rank-math-breadcrumb a {
    font-size: 13px
}

.rank-math-breadcrumb a:first-of-type {
    font-size: 0;
    width: 20px;
    height: 20px;
    background: url(../../assets/img/home.svg) no-repeat 50% 0;
    display: inline-block;
    vertical-align: top;
    background-size: 100% auto;
    text-decoration: none;
    position: relative;
    top: -1px
}

.rank-math-breadcrumb a:first-of-type:hover {
    text-decoration: none
}

.rank-math-breadcrumb>p {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-wrap: wrap
}

.rank-math-breadcrumb a {
    color: #3d4548;
    text-decoration: none
}

.rank-math-breadcrumb a:hover {
    text-decoration: underline
}

.rank-math-breadcrumb span.separator {
    margin: -4px 12px 0
}

.testimonials-hold {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 60px
}

.testimonials-hold .testimonial {
    width: 630px;
    background: #86bc25;
    margin: 0 30px 90px 0;
    box-sizing: border-box;
    padding: 30px 30px 40px;
    position: relative
}

.testimonials-hold .testimonial:after {
    position: absolute;
    content: "";
    bottom: -28px;
    right: 0;
    background: url(../../assets/img/t-angle.png) no-repeat 0 0;
    width: 29px;
    height: 29px
}

.testimonials-hold .testimonial:nth-child(2n) {
    margin-right: 0
}

.testimonials-hold .testimonial p {
    font-size: 40px;
    line-height: 46px;
    color: #fff
}

.testimonials-hold .testimonial span.pos {
    display: block;
    font-size: 20px;
    line-height: 28px;
    text-transform: uppercase
}

.testimonials-hold .testimonial .q {
    color: #fff;
    font-size: 24px;
    line-height: 130%;
    margin: 0 0 20px
}

.testimonials-hold .testimonial .d {
    font-size: 20px;
    color: #000;
    line-height: 120%
}

.testimonials-hold .testimonial .cat {
    font-size: 20px;
    color: #000;
    line-height: 120%;
    text-transform: uppercase;
    margin-bottom: 20px
}

#main h1.wp-block-heading,
#main h1.editor-post-title,
.editor-styles-wrapper h1.wp-block-heading,
.editor-styles-wrapper h1.editor-post-title {
    font-size: 110px;
    font-weight: normal;
    line-height: 110%;
    margin-bottom: 45px !important
}

#main h2.wp-block-heading,
.editor-styles-wrapper h2.wp-block-heading {
    font-size: 76px !important;
    font-weight: normal !important;
    line-height: 110% !important;
    margin-bottom: 45px !important
}

#main h3.wp-block-heading,
.editor-styles-wrapper h3.wp-block-heading {
    font-size: 48px !important;
    font-weight: normal !important;
    line-height: 110% !important;
    margin-bottom: 45px !important
}

#main h4.wp-block-heading,
.editor-styles-wrapper h4.wp-block-heading {
    font-size: 32px !important;
    font-weight: normal !important;
    line-height: 110% !important;
    margin-bottom: 30px !important
}

#main h5.wp-block-heading,
.editor-styles-wrapper h5.wp-block-heading {
    font-size: 20px !important;
    font-weight: normal !important;
    line-height: 110% !important;
    margin-bottom: 20px !important
}

#main h6.wp-block-heading,
.editor-styles-wrapper h6.wp-block-heading {
    font-size: 18px !important;
    font-weight: normal !important;
    line-height: 110% !important;
    margin-bottom: 20px !important;
    text-transform: uppercase;
    letter-spacing: 1px
}

#main blockquote,
.editor-styles-wrapper blockquote {
    background: none;
    border: none;
    font-size: 40px;
    padding-left: 40px;
    color: #86bc25
}

#main blockquote p,
.editor-styles-wrapper blockquote p {
    font-size: 40px;
    line-height: 110% !important;
    text-align: left;
    margin: 0 !important
}

#main cite,
.editor-styles-wrapper cite {
    font-size: 26px;
    text-align: left
}

.wp-block-columns {
    margin-bottom: 45px
}

.wp-block-columns .def-block {
    padding-left: 0;
    padding-right: 0
}

.wp-block:not(.wp-block-acf-resources) {
    max-width: 1790px;
    width: 100%;
    padding: 0 60px;
    box-sizing: border-box;
    margin: 0 auto 45px !important
}

.wp-block:not(.wp-block-acf-resources) h2 {
    font-size: 76px !important;
    font-weight: normal !important;
    line-height: 110% !important;
    margin-bottom: 45px !important
}

.wp-block:not(.wp-block-acf-resources) h3 {
    font-size: 48px !important;
    font-weight: normal !important;
    line-height: 110% !important;
    margin-bottom: 45px !important
}

.wp-block:not(.wp-block-acf-resources) h4 {
    font-size: 32px !important;
    font-weight: normal !important;
    line-height: 110% !important;
    margin-bottom: 30px !important
}

.wp-block:not(.wp-block-acf-resources) h5 {
    font-size: 20px !important;
    font-weight: normal !important;
    line-height: 110% !important;
    margin-bottom: 30px !important
}

.wp-block:not(.wp-block-acf-resources) h6 {
    font-size: 18px !important;
    font-weight: normal !important;
    line-height: 110% !important;
    margin-bottom: 20px !important;
    text-transform: uppercase;
    letter-spacing: 1px
}

.wp-block:not(.wp-block-acf-resources).wp-block-columns {
    margin-bottom: 45px !important
}

.wp-block:not(.wp-block-acf-resources).wp-block-columns .wp-block-column {
    padding-left: 0;
    padding-right: 0
}

.slides {
    width: 100%;
    min-height: 850px;
    height: calc(100vh - 250px);
    z-index: 15
}

.slides .slide {
    width: 100%;
    height: 100%
}

.slides .slide .slide-holder {
    width: 100%;
    height: 100%;
    position: relative
}

.slides .slide .slide-holder .content-wrapper {
    position: relative;
    height: 100%;
    z-index: 20
}

.slides .slide .slide-holder .content-wrapper .nav {
    font-size: 20px;
    color: #fff;
    width: 200px;
    text-align: right;
    position: absolute;
    bottom: 90px;
    right: 0
}

.slides .slide .slide-holder .content-wrapper .nav a.next svg {
    width: 34px;
    fill: #fff;
    position: relative;
    top: 14px
}

.slides .slide .slide-holder .content-wrapper .text-wrapper {
    max-width: 1600px;
    position: absolute;
    bottom: 0;
    padding: 0;
    left: 60px
}

.slides .slide .slide-holder .content-wrapper .text-wrapper .desc {
    max-width: 560px;
    margin: 0 0 0 260px;
    padding-bottom: 75px;
    position: relative
}

.slides .slide .slide-holder .content-wrapper .text-wrapper .desc:before {
    width: 254px;
    height: 100%;
    content: "";
    background: #86bc25;
    position: absolute;
    left: -60px;
    bottom: 0;
    opacity: 1;
    transition: ease 1s all
}

.slides .slide .slide-holder .content-wrapper .text-wrapper a.btn {
    color: #fff;
    font-size: 20px;
    display: flex;
    justify-content: space-between;
    width: 100%;
    text-decoration: none;
    transition: ease 350ms all
}

.slides .slide .slide-holder .content-wrapper .text-wrapper a.btn svg {
    width: 32px
}

.slides .slide .slide-holder .content-wrapper .text-wrapper a.btn:hover {
    color: #86bc25
}

.slides .slide .slide-holder .content-wrapper .text-wrapper a.btn:hover svg {
    fill: #86bc25
}

.slides .slide .slide-holder span.overlay {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: rgba(0, 0, 0, .2)
}

.slides .slide .slide-holder h2 {
    color: #fff;
    font-size: 76px;
    line-height: 100%;
    margin: 0 0 50px;
    letter-spacing: -1px;
    font-weight: normal;
    transform: translate(200px, 0);
    opacity: 0;
    transition: ease 1s all;
    max-width: 1172px
}

.slides .slide .slide-holder p {
    font-size: 18px;
    line-height: 21px;
    position: relative;
    color: #fff;
    top: 200px;
    opacity: 0;
    transition: ease 1s all
}

.slides .slide.cycle-slide-active .desc:before {
    left: -334px !important;
    opacity: 1 !important
}

.slides .slide.cycle-slide-active h2 {
    transform: translate(0, 0) !important;
    opacity: 1 !important
}

.slides .slide.cycle-slide-active p {
    top: 0 !important;
    opacity: 1 !important
}

.slides .ticker {
    display: inline-block;
    vertical-align: top
}

.slides .ticker div {
    display: inline-block;
    vertical-align: top
}

.slides .btns {
    padding-top: 25px;
    position: relative
}

.slides .btns .main-text {
    font-size: 20px;
    color: #fff;
    cursor: pointer;
    position: relative;
    box-sizing: border-box;
    padding-right: 45px
}

.slides .btns .main-text svg.btn-arrow {
    position: absolute;
    right: 0;
    top: 0;
    width: 32px
}

.slides .btns ul {
    color: #000;
    font-size: 20px;
    background: #fff;
    border-radius: 4px;
    line-height: normal;
    box-sizing: border-box;
    padding: 0;
    transform: translate(0, 60px);
    opacity: 0;
    visibility: hidden;
    transition: ease 350ms all;
    position: absolute;
    bottom: 45px;
    max-height: 300px;
    overflow: auto;
    left: 0
}

.slides .btns ul li {
    margin-bottom: 0px
}

.slides .btns ul li:last-child {
    margin-bottom: 0
}

.slides .btns ul a {
    color: #000;
    text-decoration: none;
    display: block;
    padding: 15px
}

.slides .btns ul a:hover {
    background: #86bc25;
    color: #fff
}

.slides .btns ul.active {
    transform: translate(0, 20px);
    opacity: 1;
    visibility: visible
}

.locations-map {
    width: 100%;
    background: #3d4548;
    color: #fff
}

.locations-map p.section-name {
    color: #fff
}

.locations-map>* {
    color: #fff
}

.locations-map .columns {
    display: flex;
    justify-content: space-between;
    padding-bottom: 145px
}

.locations-map .columns .left-col {
    max-width: 455px;
    width: 100%;
    padding-left: 150px;
    padding-right: 45px
}

.locations-map .columns .right-col {
    margin-top: -65px
}

#main .gm-style-iw-d,
.acf-block-preview .gm-style-iw-d {
    margin-top: -23px
}

#main .gm-style-iw-d h3,
#main .gm-style-iw-d h2,
#main .gm-style-iw-d h1,
.acf-block-preview .gm-style-iw-d h3,
.acf-block-preview .gm-style-iw-d h2,
.acf-block-preview .gm-style-iw-d h1 {
    color: #3d4548;
    margin: 0 0 15px !important;
    font-size: 20px !important;
    line-height: 24px !important
}

#main .gm-style-iw-d p,
#main .gm-style-iw-d ul,
#main .gm-style-iw-d ol,
.acf-block-preview .gm-style-iw-d p,
.acf-block-preview .gm-style-iw-d ul,
.acf-block-preview .gm-style-iw-d ol {
    font-size: 18px;
    line-height: 21px;
    margin: 0;
    color: #3d4548
}

#main button.gm-ui-hover-effect,
.acf-block-preview button.gm-ui-hover-effect {
    margin-right: -14px
}

#main .pins,
.acf-block-preview .pins {
    width: 100%;
    position: relative
}

#main .pins img.map-img,
.acf-block-preview .pins img.map-img {
    width: 100%;
    height: auto
}

#main .pins .pin .circle,
.acf-block-preview .pins .pin .circle {
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background: #aeaba9;
    border: 1px solid #fff;
    display: block;
    cursor: pointer
}

#main .pins .pin .msg-box,
.acf-block-preview .pins .pin .msg-box {
    font-size: 18px;
    color: #3d4548;
    background: #fff;
    border-radius: 12px;
    box-sizing: border-box;
    padding: 25px;
    min-width: 420px;
    position: absolute;
    bottom: 25px;
    right: -45px;
    opacity: 0;
    visibility: hidden;
    transition: ease 350ms all;
    z-index: 101
}

#main .pins .pin .msg-box:after,
.acf-block-preview .pins .pin .msg-box:after {
    width: 25px;
    height: 25px;
    background: #fff;
    content: "";
    transform: rotate(45deg);
    position: absolute;
    bottom: -11px;
    right: 40px
}

#main .pins .pin .msg-box h3,
#main .pins .pin .msg-box h2,
#main .pins .pin .msg-box h1,
.acf-block-preview .pins .pin .msg-box h3,
.acf-block-preview .pins .pin .msg-box h2,
.acf-block-preview .pins .pin .msg-box h1 {
    color: #3d4548;
    margin: 0 0 15px !important;
    font-size: 20px !important;
    line-height: 24px !important;
    font-weight: 600
}

#main .pins .pin .msg-box p,
#main .pins .pin .msg-box ul,
#main .pins .pin .msg-box ol,
.acf-block-preview .pins .pin .msg-box p,
.acf-block-preview .pins .pin .msg-box ul,
.acf-block-preview .pins .pin .msg-box ol {
    font-size: 18px;
    line-height: 21px;
    margin: 0
}

#main .pins .pin .msg-box.active,
.acf-block-preview .pins .pin .msg-box.active {
    opacity: 1;
    visibility: visible
}

#main .pins .pin.active,
.acf-block-preview .pins .pin.active {
    z-index: 20 !important
}

#main .pins .pin.active .circle,
.acf-block-preview .pins .pin.active .circle {
    background: #86bc25
}

#main .pins .pin.active .msg-box,
.acf-block-preview .pins .pin.active .msg-box {
    opacity: 1;
    visibility: visible
}

#main .columns .mobile-pin-placer,
.acf-block-preview .columns .mobile-pin-placer {
    background: #fff;
    border-radius: 12px;
    box-sizing: border-box;
    padding: 20px;
    opacity: 0;
    visibility: hidden;
    color: #3d4548
}

#main .columns .mobile-pin-placer h2,
#main .columns .mobile-pin-placer h3,
.acf-block-preview .columns .mobile-pin-placer h2,
.acf-block-preview .columns .mobile-pin-placer h3 {
    font-size: 20px !important;
    margin-bottom: 20px !important;
    line-height: normal !important
}

#main .columns .mobile-pin-placer p,
#main .columns .mobile-pin-placer ol,
#main .columns .mobile-pin-placer ul,
.acf-block-preview .columns .mobile-pin-placer p,
.acf-block-preview .columns .mobile-pin-placer ol,
.acf-block-preview .columns .mobile-pin-placer ul {
    font-size: 16px !important;
    margin: 0 0 15px !important
}

.locations-map p.section-name {
    color: #fff !important
}

#main .columns .mobile-pin-placer {
    display: none
}

.location-item.active .mobile-pin-placer.active {
    display: block !important;
    margin-top: 12px !important
}

.locations-accordion {
    margin: 0;
    border-top: 1px solid #fff
}

.locations-accordion .location-item.active {
    background: #4c575a
}

.locations-accordion .accordion-group {
    border-bottom: 1px solid #ccc
}

.accordion-title {
    cursor: pointer;
    font-weight: 400;
    padding: 10px;
    font-size: 24px;
    position: relative
}

.accordion-title .btn-arrow {
    position: absolute;
    right: 10px;
    top: 10px;
    height: 30px;
    width: auto
}

.accordion-title.open .btn-arrow {
    transform: rotate(180deg)
}

.accordion-content {
    display: none;
    padding: 0
}

.accordion-content ul {
    margin: 0;
    font-size: 17px
}

#main .accordion-content ul li {
    padding: 12px;
    margin: 0;
    border-bottom: 1px solid #888
}

#main .accordion-content ul li:last-child {
    border: none
}

#main .accordion-content ul li:before {
    display: none
}

.location-item {
    cursor: pointer;
    margin-bottom: 8px
}

#main .leaflet-popup-content h2,
#main .leaflet-popup-content h3 {
    font-size: 20px !important;
    margin-bottom: 20px !important;
    line-height: normal !important
}

#main .leaflet-popup-content p,
#main .leaflet-popup-content ol,
#main .leaflet-popup-content ul {
    font-size: 16px !important;
    margin: 0 0 15px !important
}

.cluster {
    position: absolute;
    width: 18px;
    height: 18px;
    background: #aeaba9;
    color: #fff;
    font-weight: bold;
    font-size: 10px;
    border-radius: 50%;
    text-align: center;
    line-height: 18px;
    cursor: pointer;
    z-index: 1;
    border: 1px solid #fff;
    transform: translate(-50%, -50%)
}

.pin._clustered {
    z-index: 50;
    transition: all .2s ease
}

#real-map {
    width: 820px;
    height: 470px;
    background-color: #3d4548;
    z-index: 10
}

#real-map:focus-visible {
    border: none
}

.grey {
    background: #f3f3f3 !important
}

.acf-block-preview p.section-name,
#main p.section-name,
.intro p.section-name,
.statistics p.section-name {
    font-size: 13px !important;
    line-height: 21px !important;
    color: #3d4548;
    text-transform: uppercase;
    padding-top: 60px;
    margin: 0 0 60px !important;
    letter-spacing: 2px;
    font-weight: 700 !important
}

#main .intro p.section-name {
    font-size: 13px !important;
    line-height: 21px !important;
    color: #3d4548;
    text-transform: uppercase;
    padding-top: 60px;
    margin: 0 0 60px !important;
    letter-spacing: 2px;
    font-weight: 700 !important
}

#main h2,
#main h3,
.editor-styles-wrapper h2,
.editor-styles-wrapper h3,
.services h2,
.services h3,
.acf-block-preview h2,
.acf-block-preview h3 {
    font-size: 76px !important;
    line-height: 72px !important;
    margin: 0 0 70px !important;
    font-weight: normal;
    max-width: 1190px
}

#main h2,
.editor-styles-wrapper h2,
.services h2,
.acf-block-preview h2 {
    line-height: 76px !important
}

#main .blog-list,
.editor-styles-wrapper .blog-list,
.services .blog-list,
.acf-block-preview .blog-list {
    display: flex;
    flex-wrap: wrap;
    margin: 0 0 30px -15px
}

#main .blog-list .news-item,
.editor-styles-wrapper .blog-list .news-item,
.services .blog-list .news-item,
.acf-block-preview .blog-list .news-item {
    margin-bottom: 50px
}

@media all and (min-width: 981px) {

    #main .blog-list .news-item:nth-child(3n),
    .editor-styles-wrapper .blog-list .news-item:nth-child(3n),
    .services .blog-list .news-item:nth-child(3n),
    .acf-block-preview .blog-list .news-item:nth-child(3n) {
        margin-right: 0
    }
}

#main .intro,
.acf-block-preview .intro {
    width: 100%;
    padding-bottom: 100px;
    position: relative
}

#main .intro h2,
.acf-block-preview .intro h2 {
    font-size: 95px;
    line-height: 90px;
    margin: 0 0 85px;
    font-weight: normal;
    max-width: 1374px
}

#main .intro p,
.acf-block-preview .intro p {
    font-size: 20px !important;
    line-height: 28px !important;
    margin: 0 0 20px
}

#main .intro .text-wrapper,
.acf-block-preview .intro .text-wrapper {
    padding: 0 0 0 180px;
    max-width: 510px
}

#main .intro .text-wrapper h3,
#main .intro .text-wrapper h2,
.acf-block-preview .intro .text-wrapper h3,
.acf-block-preview .intro .text-wrapper h2 {
    font-size: 40px !important;
    line-height: 46px !important;
    max-width: 100%
}

#main .intro a.btn,
.acf-block-preview .intro a.btn {
    font-size: 22px;
    color: #86bc25;
    display: flex;
    width: 100%;
    justify-content: space-between;
    line-height: 28px;
    border-bottom: 1px solid #86bc25;
    text-decoration: none;
    padding: 0 0 7px;
    margin-top: 25px;
    transition: ease 350ms all
}

#main .intro a.btn svg,
.acf-block-preview .intro a.btn svg {
    fill: #86bc25;
    width: 40px;
    height: auto
}

#main .intro a.btn:hover,
.acf-block-preview .intro a.btn:hover {
    color: #000;
    border-color: #000
}

#main .intro a.btn:hover svg,
.acf-block-preview .intro a.btn:hover svg {
    fill: #000
}

#main .intro .holder,
.acf-block-preview .intro .holder {
    display: flex;
    justify-content: space-between
}

#main .intro .holder .img-wrapper,
.acf-block-preview .intro .holder .img-wrapper {
    max-width: 49%;
    width: 100%;
    position: relative;
    max-height: 60vh
}

#main .intro .holder .img-wrapper a.play,
.acf-block-preview .intro .holder .img-wrapper a.play {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 106px;
    transition: ease 350ms all
}

#main .intro .holder .img-wrapper a.play svg,
.acf-block-preview .intro .holder .img-wrapper a.play svg {
    width: 100%;
    height: auto
}

#main .intro .holder .img-wrapper a.play:hover,
.acf-block-preview .intro .holder .img-wrapper a.play:hover {
    transform: translate(-50%, -50%) scale(1.2)
}

#main .intro .holder .img-wrapper img,
.acf-block-preview .intro .holder .img-wrapper img {
    max-width: 100%;
    height: 100%;
    object-fit: cover
}

#main .intro .holder .img-wrapper:after,
.acf-block-preview .intro .holder .img-wrapper:after {
    content: "";
    width: 250px;
    height: 455px;
    background: #86bc25;
    position: absolute;
    top: -260px;
    right: -60px
}

#main .intro.dark-grey,
.acf-block-preview .intro.dark-grey {
    background: #3d4548;
    margin-bottom: 180px
}

#main .intro.dark-grey>*,
.acf-block-preview .intro.dark-grey>* {
    color: #fff !important
}

#main .intro.dark-grey .services .holder,
.acf-block-preview .intro.dark-grey .services .holder {
    padding: 40px 0
}

#main .intro.dark-grey .text-wrapper,
.acf-block-preview .intro.dark-grey .text-wrapper {
    max-width: 510px
}

#main .intro.dark-grey .img-wrapper,
.acf-block-preview .intro.dark-grey .img-wrapper {
    margin-top: -250px
}

#main .intro.dark-grey .img-wrapper:after,
.acf-block-preview .intro.dark-grey .img-wrapper:after {
    top: 0
}

#main .intro.dark-grey p.section-name,
.acf-block-preview .intro.dark-grey p.section-name {
    color: #fff
}

#main .intro.dark-grey a.btn:hover,
.acf-block-preview .intro.dark-grey a.btn:hover {
    color: #fff;
    border-color: #fff
}

#main .intro.dark-grey a.btn:hover svg,
.acf-block-preview .intro.dark-grey a.btn:hover svg {
    fill: #fff
}

#main .intro.dark-grey.left .img-wrapper,
.acf-block-preview .intro.dark-grey.left .img-wrapper {
    margin-top: 0
}

#main .intro.no-img .img-wrapper,
.acf-block-preview .intro.no-img .img-wrapper {
    display: none
}

#main .intro.no-img .text-wrapper,
.acf-block-preview .intro.no-img .text-wrapper {
    max-width: 990px
}

#main .intro.thin .img-wrapper:after,
.acf-block-preview .intro.thin .img-wrapper:after {
    right: -60px;
    width: 60px;
    top: 0;
    height: 80%
}

#main .intro.thin .text-wrapper h3,
.acf-block-preview .intro.thin .text-wrapper h3 {
    margin-bottom: 40px !important
}

#main .intro.thin p,
#main .intro.thin ul,
#main .intro.thin ol,
.acf-block-preview .intro.thin p,
.acf-block-preview .intro.thin ul,
.acf-block-preview .intro.thin ol {
    font-size: 20px !important;
    line-height: 26px !important
}

#main .intro.left .img-wrapper,
.acf-block-preview .intro.left .img-wrapper {
    order: 1;
    margin-left: 0;
    margin-right: 60px
}

#main .intro.left .img-wrapper:after,
.acf-block-preview .intro.left .img-wrapper:after {
    right: auto;
    left: -60px
}

#main .intro.left .text-wrapper,
.acf-block-preview .intro.left .text-wrapper {
    order: 2;
    padding: 0 180px 0 0 !important
}

#main .intro.grey,
.acf-block-preview .intro.grey {
    padding-top: 20px
}

#main .intro.dark-grey,
.acf-block-preview .intro.dark-grey {
    margin-bottom: 0
}

#main .intro.thin .text-wrapper ul,
.acf-block-preview .intro.thin .text-wrapper ul {
    font-size: 16px !important
}

#main .intro.default.left .img-wrapper:after,
.acf-block-preview .intro.default .text-wrapper {
    top: 0
}

#main .dark-grey ul li:before,
.wp-block-post-content .dark-grey ul li:before {
    background: #fff !important
}

#main .intro.dark-grey .section-wrapper>h2,
.acf-block-preview .intro.dark-grey .section-wrapper>h2,
#main .intro.dark-grey .section-wrapper>h3,
.acf-block-preview .intro.dark-grey .section-wrapper>h3 {
    max-width: 49%
}

.single-case-studies #main .intro .holder .img-wrapper:after {
    top: 0;
    height: 70%
}

.wp-block-separator {
    border-top: 1px solid #3d4548;
    margin-bottom: 100px
}

.numbers {
    width: 100%;
    padding-bottom: 40px
}

.numbers .numbers-holder .content-wrapper {
    display: flex;
    justify-content: space-between;
    align-items: center
}

.numbers .numbers-slider {
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap
}

.numbers .numbers-slider .number {
    width: 410px;
    height: 410px;
    margin: 0 15px;
    border: 1px solid #3d4548;
    padding: 35px;
    box-sizing: border-box;
    position: relative
}

.numbers .numbers-slider .number .img-wrapper {
    height: 79px;
    width: 100%;
    margin: 10px 0 35px;
    text-align: left
}

.numbers .numbers-slider .number p {
    font-size: 96px !important;
    line-height: normal !important;
    margin: 0
}

.numbers .numbers-slider .number span.bot-value {
    font-size: 20px;
    line-height: 24px;
    position: absolute;
    bottom: 35px;
    left: 35px;
    max-width: calc(100% - 70px)
}

.numbers .numbers-slider .number span.bot-value span.desc {
    font-size: 16px;
    line-height: 26px;
    display: block;
    padding-top: 15px
}

.numbers .numbers-slider .number img {
    max-height: 100%;
    width: auto
}

.numbers .numbers-slider .number.no-num span.bot-value {
    font-size: 32px;
    line-height: 36px
}

.numbers .numbers-slider a {
    color: #3d4548;
    text-decoration: none
}

.numbers h3 {
    font-size: 60px !important;
    line-height: 55px !important
}

.numbers h2,
.numbers h3 {
    max-width: 1240px !important
}

.numbers.simple span.bot-value {
    font-size: 40px !important;
    line-height: 46px !important
}

.numbers.no-slide .numbers-slider {
    max-width: 1790px;
    width: 100%;
    margin: 0 auto
}

.numbers.no-slide .numbers-slider .number {
    width: 17.5%;
    margin-bottom: 30px;
    height: auto;
    min-height: 410px
}

.numbers.no-slide span.bot-value {
    font-size: 30px !important;
    line-height: 36px !important;
    position: static !important
}

.numbers.no-slide.simple span.bot-value {
    font-size: 20px !important;
    line-height: 26px !important
}

.page-slider {
    height: 75vh;
    overflow: hidden
}

.page-slider .slide {
    width: 100%;
    height: 100%
}

.page-slider p.section-name,
.page-slider h2,
.page-slider h3,
.page-slider p {
    color: #fff !important
}

.page-slider h2,
.page-slider h3 {
    margin: 0 0 65px !important;
    opacity: 0;
    transform: translate(200px, 0);
    transition: ease 1s all
}

.page-slider span.overlay {
    position: absolute;
    top: 0;
    left: 0;
    background: rgba(0, 0, 0, .2);
    width: 100%;
    height: 100%
}

.page-slider .content-wrapper {
    position: relative;
    z-index: 20;
    height: 100%
}

.page-slider .text-wrapper {
    width: 100%;
    position: relative
}

.page-slider .text-wrapper:after {
    position: absolute;
    width: 200px;
    height: 200px;
    content: "";
    background: #86bc25;
    bottom: 220px;
    right: -500px;
    transition: ease 1s all;
    opacity: 0
}

.page-slider .text-hold {
    bottom: 75px;
    left: 60px;
    position: absolute;
    max-width: calc(100% - 235px) !important;
    padding-left: 0 !important
}

.page-slider .text-hold p {
    font-size: 20px !important;
    margin: 0 0 45px !important
}

.page-slider .text-hold a {
    font-size: 22px !important;
    min-width: 520px;
    display: inline-block;
    vertical-align: top;
    color: #fff;
    position: relative;
    text-decoration: none;
    border-bottom: 1px solid #fff;
    padding-bottom: 20px;
    transition: ease 350ms all
}

.page-slider .text-hold a svg {
    position: absolute;
    right: 0;
    top: 0;
    transition: ease 350ms all;
    width: 34px
}

.page-slider .text-hold a:hover {
    border-color: #86bc25;
    color: #86bc25
}

.page-slider .text-hold a:hover svg {
    fill: #86bc25
}

.page-slider .slide-holder {
    width: 100%;
    height: 100%
}

.page-slider .slider-nav {
    right: 0;
    bottom: 75px;
    position: absolute;
    z-index: 20;
    font-size: 20px
}

.page-slider .slider-nav a {
    color: #fff;
    margin: 0 0 0 12px;
    position: relative;
    top: 2px
}

.page-slider .slider-nav a svg {
    fill: #fff;
    width: 34px;
    height: auto
}

.page-slider .slider-nav .nav {
    display: flex;
    align-items: center;
    color: #fff
}

.page-slider .slide.cycle-slide-active .text-wrapper:after {
    bottom: 220px;
    right: 0;
    opacity: 1
}

.page-slider .slide.cycle-slide-active h2,
.page-slider .slide.cycle-slide-active h3 {
    opacity: 1;
    transform: translate(0, 0)
}

.slider-nav {
    width: 145px;
    margin-top: 20px
}

.slider-nav .slick-arrow {
    margin: 0 16px;
    width: 35px;
    cursor: pointer;
    display: inline-block;
    transition: ease 350ms all
}

.slider-nav .slick-arrow:hover svg {
    fill: #86bc25
}

.slider-nav .slick-arrow:first-child svg {
    transform: scale(-1, -1)
}

.slider-nav svg {
    fill: #3d4548;
    width: 35px;
    transition: ease 350ms all
}

section.services,
div.services {
    overflow: hidden;
    padding-bottom: 0
}

section.services ul.linked,
div.services ul.linked {
    padding-top: 30px;
    font-size: 22px;
    line-height: 26px
}

section.services ul.linked li:before,
div.services ul.linked li:before {
    display: none
}

section.services ul.linked li,
div.services ul.linked li {
    background: url(../../assets/img/green-arrow.svg) no-repeat 0 -2px;
    background-size: 32px auto;
    padding: 0 0 0 40px !important;
    margin: 0 0 12px !important
}

section.services ul.linked li a,
div.services ul.linked li a {
    text-decoration: none
}

section.services ul.linked li a:hover,
div.services ul.linked li a:hover {
    text-decoration: underline
}

section.services h3,
div.services h3 {
    padding-left: 180px
}

section.services .faq,
div.services .faq {
    border-bottom: 1px solid #3d4548;
    margin-bottom: 170px
}

section.services .text-wrapper,
div.services .text-wrapper {
    padding: 0 0 0 180px;
    max-width: 510px;
    font-size: 20px;
    line-height: 28px
}

section.services .text-wrapper p,
div.services .text-wrapper p {
    font-size: 20px !important;
    line-height: 28px !important
}

section.services p.acc-title,
div.services p.acc-title {
    font-size: 48px !important;
    line-height: 45px !important;
    margin: 0 !important
}

section.services .faq-item,
div.services .faq-item {
    border-top: 1px solid #3d4548
}

section.services a.btn,
div.services a.btn {
    font-size: 22px;
    color: #86bc25;
    display: flex;
    width: 100%;
    justify-content: space-between;
    line-height: 22px;
    border-bottom: 1px solid #86bc25;
    text-decoration: none;
    padding: 0 0 5px;
    margin-top: 60px
}

section.services a.btn svg,
div.services a.btn svg {
    fill: #86bc25;
    width: 34px;
    height: auto
}

section.services a.btn:hover,
div.services a.btn:hover {
    color: #000;
    border-color: #000
}

section.services a.btn:hover svg,
div.services a.btn:hover svg {
    fill: #000
}

section.services .faq-content,
div.services .faq-content {
    display: none
}

section.services .holder,
div.services .holder {
    display: flex;
    justify-content: space-between;
    padding: 45px 0;
    align-items: flex-start
}

section.services .holder .img-wrapper,
div.services .holder .img-wrapper {
    max-width: 820px;
    width: 100%;
    position: relative;
    margin-bottom: 45px
}

section.services .holder .img-wrapper a.play,
div.services .holder .img-wrapper a.play {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 106px
}

section.services .holder .img-wrapper a.play svg,
div.services .holder .img-wrapper a.play svg {
    width: 100%;
    height: auto
}

section.services .holder .img-wrapper img,
div.services .holder .img-wrapper img {
    max-width: 100%;
    height: auto
}

section.services .holder .img-wrapper:after,
div.services .holder .img-wrapper:after {
    content: "";
    width: 250px;
    height: calc(100% - 100px);
    background: #86bc25;
    position: absolute;
    top: 0;
    right: -600px;
    opacity: 0;
    transition: ease .7s all
}

section.services .faq-content.active .img-wrapper:after,
div.services .faq-content.active .img-wrapper:after {
    opacity: 1;
    right: -60px
}

section.services a.faq-head,
div.services a.faq-head {
    display: block;
    position: relative;
    padding: 30px 0 30px 180px;
    font-size: 60px;
    color: #3d4548;
    text-decoration: none
}

section.services a.faq-head p,
div.services a.faq-head p {
    margin: 0
}

section.services a.faq-head span.num,
div.services a.faq-head span.num {
    font-size: 20px;
    color: #3d4548;
    position: absolute;
    left: 0;
    top: 38px;
    transition: ease 350ms all
}

section.services a.faq-head .acc-title,
div.services a.faq-head .acc-title {
    transition: ease 350ms all
}

section.services a.faq-head:hover .acc-title,
section.services a.faq-head.active .acc-title,
div.services a.faq-head:hover .acc-title,
div.services a.faq-head.active .acc-title {
    color: #86bc25
}

section.services a.faq-head:hover span.num,
section.services a.faq-head.active span.num,
div.services a.faq-head:hover span.num,
div.services a.faq-head.active span.num {
    color: #86bc25
}

section.services .wrap,
div.services .wrap {
    padding: 0
}

section.services .faq-desc,
div.services .faq-desc {
    max-width: unset;
    margin: 0 0 85px
}

section.services .faq-desc p,
div.services .faq-desc p {
    margin: 0 0 25px !important;
    font-size: 20px !important;
    line-height: 28px !important
}

a.cta-btn {
    display: block;
    width: 1290px;
    margin: 0 auto 100px;
    font-size: 48px;
    color: #3d4548;
    text-decoration: none;
    padding: 48px 20px;
    box-sizing: border-box;
    text-align: center;
    position: relative;
    border: 1px solid #3d4548;
    border-radius: 150px;
    transition: ease 350ms all
}

a.cta-btn svg {
    fill: #3d4548;
    width: 52px;
    height: auto;
    position: relative;
    top: 14px
}

a.cta-btn:hover {
    background: #3d4548;
    color: #fff
}

a.cta-btn:hover svg {
    fill: #fff
}

a.cta-btn:focus-visible {
    background: #3d4548;
    color: #fff
}

#main .news-section,
.acf-block-preview .news-section {
    margin: 0 0 60px
}

#main .news-section .heading,
.acf-block-preview .news-section .heading {
    padding: 0 0 0 192px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 85px
}

#main .news-section .heading .slider-nav,
.acf-block-preview .news-section .heading .slider-nav {
    margin-top: 0
}

#main .news-section h3,
#main .news-section h2,
.acf-block-preview .news-section h3,
.acf-block-preview .news-section h2 {
    margin-bottom: 0 !important
}

#main .news-section .news-carousel,
.acf-block-preview .news-section .news-carousel {
    display: flex;
    justify-content: center
}

#main .news-section .slick-track,
.acf-block-preview .news-section .slick-track {
    display: flex
}

#main .news-item,
.acf-block-preview .news-item {
    text-decoration: none;
    color: #3d4548;
    max-width: 410px;
    width: 100%;
    display: block;
    margin: 0 13px;
    height: auto;
    border: 1px solid #3d4548;
    transition: ease 500ms all
}

#main .news-item .meta,
.acf-block-preview .news-item .meta {
    padding: 38px;
    box-sizing: border-box
}

#main .news-item .meta h3,
.acf-block-preview .news-item .meta h3 {
    font-size: 22px !important;
    line-height: 26px !important;
    font-weight: normal;
    margin: 0 0 20px !important
}

#main .news-item .meta p,
.acf-block-preview .news-item .meta p {
    font-size: 18px;
    line-height: 24px;
    margin: 0
}

#main .news-item .meta span.date,
.acf-block-preview .news-item .meta span.date {
    display: block;
    margin: 0;
    font-size: 16px;
    line-height: 24px;
    padding-bottom: 15px
}

#main .news-item img,
.acf-block-preview .news-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: ease 500ms all
}

#main .news-item:hover img,
#main .news-item:focus-visible img,
.acf-block-preview .news-item:hover img,
.acf-block-preview .news-item:focus-visible img {
    transform: scale(1.2)
}

#main .news-item .img-wrapper,
.acf-block-preview .news-item .img-wrapper {
    width: 100%;
    height: 320px;
    overflow: hidden
}

#main .news-item:focus-visible h3,
.acf-block-preview .news-item:focus-visible h3 {
    border: 1px solid #86bc25
}

.num-prefix-hold {
    position: relative
}

.num-prefix-hold span.num-prefix {
    font-size: 20px;
    color: #3d4548;
    position: absolute;
    left: 0;
    top: -16px
}

.two-cols.with-prefix {
    margin: 0 !important;
    padding-top: 100px !important;
    padding-bottom: 100px !important
}

.two-cols.with-prefix p.sub-title {
    font-size: 42px !important;
    max-width: 50% !important;
    line-height: 100% !important;
    margin-bottom: 80px !important
}

.two-cols.with-prefix .wrap {
    margin: 0 0 0 130px
}

.active-prefix .num-prefix-hold {
    padding-left: 50px
}

.statistics-holder {
    padding-bottom: 55px
}

.statistics-holder .hold {
    padding: 0 192px
}

.statistics-holder h3 {
    font-size: 76px;
    line-height: 72px;
    font-weight: normal;
    margin: 0 0 45px
}

.statistics-holder .wrap {
    width: 100%;
    padding: 0;
    margin: 0;
    max-width: 100%
}

.statistics-holder .wrap .row {
    margin-bottom: 60px
}

.statistics-holder .wrap .row>p {
    font-size: 22px
}

.statistics-holder .wrap table {
    width: 100%;
    border-collapse: collapse;
    border: none
}

.statistics-holder .wrap table th {
    text-align: left;
    background: none;
    border: none;
    border-bottom: 1px solid #86bc25;
    font-size: 22px;
    font-weight: normal;
    color: #86bc25;
    padding-bottom: 10px
}

.statistics-holder .wrap table td {
    text-align: left;
    background: none;
    border: none;
    width: 33%;
    font-size: 22px;
    border-bottom: 1px solid #86bc25;
    padding: 10px 0
}

.statistics-holder .el {
    width: 190px;
    margin: 0 26px 25px 0
}

.statistics-holder .el span {
    font-size: 25px;
    line-height: 30px;
    display: block;
    margin: 0 0 20px
}

.statistics-holder .el em {
    font-size: 16px;
    font-style: normal;
    display: block
}

.statistics-holder .el:last-child {
    margin-right: 0
}

.statistics-holder .desc {
    width: 100%;
    font-size: 14px;
    line-height: normal
}

.statistics-holder .desc p {
    font-size: 14px
}

.logos {
    width: 100%
}

.logos h3 {
    max-width: 1395px;
    margin: 0 0 80px
}

.logos .logos-hold {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: flex-start;
    border: solid #3d4548;
    border-width: 1px 0 0 1px;
    margin: 0 0 50px
}

.logos .logos-hold .el {
    width: 20%;
    border: solid #3d4548;
    border-width: 0 1px 1px 0;
    height: 172px;
    display: flex;
    justify-content: center;
    align-items: center;
    box-sizing: border-box
}

.logos .logos-hold .el img {
    max-width: 170px;
    height: auto;
    max-height: 90px;
    width: auto
}

.logos .logos-hold .el .link-el {
    text-align: center;
    width: 100%
}

.logos.quater .el {
    width: 25%
}

.logos.half .el {
    width: 50%
}

@media all and (min-width: 981px) {
    .logos.third .el {
        width: 33.3%
    }

    .logos.third .el:nth-child(3n) {
        width: 33.4%
    }

    .logos.small .el {
        width: 16.66%
    }

    .logos.small .el:nth-child(6n) {
        width: 16.69%
    }
}

.error404 .wrap {
    padding-top: 50px;
    padding-bottom: 60px
}

.wrap {
    padding: 230px 60px 30px;
    max-width: 1300px;
    width: 100%;
    margin-left: auto;
    margin-right: auto
}

h1.entry-title {
    font-size: 76px;
    line-height: 72px;
    font-weight: normal;
    margin: 0 0 80px
}

#main .wrap.def-block,
.wrap.def-block {
    padding-top: 0
}

#main .wrap.def-block h3,
.wrap.def-block h3 {
    font-size: 60px;
    line-height: 55px;
    margin: 0 0 32px
}

#main .wrap.def-block p,
.wrap.def-block p {
    font-size: 20px;
    line-height: 28px
}

.blog-nav {
    margin: 0 0 80px;
    text-align: center;
    font-size: 40px;
    color: #3d4548
}

.blog-nav a {
    color: #3d4548;
    text-decoration: none
}

.blog-nav a:hover svg {
    fill: #86bc25
}

.blog-nav svg {
    width: 36px;
    position: relative;
    top: 5px
}

.blog-nav svg.prev {
    transform: scale(-1, -1)
}

.blog-nav .disabled {
    display: none
}

.wp-block-pullquote {
    box-sizing: border-box;
    margin: 0 0 1em;
    overflow-wrap: break-word;
    padding: 2em 0;
    text-align: center
}

#branding ul#main-nav>.left-col li.menu-item-has-children>ul.sub-menu>li:not(.menu-item-has-children),
#branding ul#main-nav>.right-col li.menu-item-has-children>ul.sub-menu>li:not(.menu-item-has-children) {
    margin-bottom: 15px
}

#branding ul#main-nav li .right-col ul li ul li {
    margin: 0 0 0px
}

#branding ul#main-nav li .right-col ul li ul {
    padding: 20px 0 5px
}

#main .intro a.btn:first-of-type,
.acf-block-preview .intro a.btn:first-of-type {
    margin-top: 50px
}

#site-footer {
    width: 100%;
    background: #3d4548;
    padding: 80px 0;
    color: #fff
}

#site-footer .bot-text {
    padding: 140px 0 0 178px;
    display: flex;
    justify-content: space-between
}

#site-footer .bot-text ul {
    font-size: 13px;
    display: flex;
    justify-content: space-between;
    align-items: flex-end
}

#site-footer .bot-text ul li {
    margin: 0 0 0 30px
}

#site-footer .bot-text ul a {
    color: #fff;
    text-decoration: none
}

#site-footer .bot-text ul a:hover {
    text-decoration: underline
}

#site-footer p {
    color: #fff
}

#site-footer .left-col {
    max-width: 600px
}

#site-footer .left-col p {
    font-size: 17px;
    letter-spacing: .5px;
    font-weight: 300
}

#site-footer .left-col p.copy {
    font-size: 13px;
    padding-top: 70px;
    font-weight: 400
}

#site-footer .left-col .wrap-text {
    display: flex;
    justify-content: flex-start;
    align-items: center
}

#site-footer .left-col .wrap-text img {
    margin: -20px 20px 0 0
}

#site-footer .right-col {
    max-width: 600px;
    display: flex;
    justify-content: flex-end;
    flex-wrap: wrap
}

#site-footer .right-col .social {
    display: flex;
    justify-content: flex-end;
    width: 100%
}

#site-footer .right-col .social a {
    color: #fff;
    text-decoration: none;
    display: flex;
    align-items: center;
    margin: 0 0 0 20px
}

#site-footer .right-col .social a svg {
    fill: #fff;
    height: 30px;
    width: auto
}

#site-footer .right-col .social a.youtube {
    position: relative;
    top: 4px
}

#site-footer a.footer-logo {
    color: #fff;
    text-transform: uppercase;
    font-size: 13px !important;
    letter-spacing: 2px !important;
    font-weight: 600 !important;
    text-decoration: none
}

#site-footer a.footer-logo:hover {
    text-decoration: underline
}

#site-footer .contact-columns .item {
    display: flex;
    align-items: center;
    margin: 0 0 20px;
    font-size: 18px
}

#site-footer .contact-columns .item .icon-placer {
    width: 40px;
    display: flex;
    align-items: center
}

#site-footer .contact-columns .item address {
    font-style: normal
}

#site-footer .contact-columns .item a {
    color: #fff;
    text-decoration: none
}

#site-footer .contact-columns .item a:hover {
    color: #86bc25
}

#site-footer .contact-columns .item svg {
    height: 25px;
    width: auto
}

#main .testimonials-block,
.acf-block-preview .testimonials-block {
    display: flex;
    justify-content: center
}

#main .testimonials-block .el,
.acf-block-preview .testimonials-block .el {
    width: 31%;
    margin: 0 1%;
    border: 1px solid #3d4548;
    padding: 50px;
    box-sizing: border-box;
    background: #fff
}

#main .testimonials-block .el .hold,
.acf-block-preview .testimonials-block .el .hold {
    display: flex;
    justify-content: space-between;
    align-items: stretch
}

#main .testimonials-block .el .hold img,
.acf-block-preview .testimonials-block .el .hold img {
    min-width: 350px;
    min-height: 350px;
    max-height: 350px;
    object-fit: cover;
    margin: 0 0 0 60px
}

#main .testimonials-block .el .hold .q,
.acf-block-preview .testimonials-block .el .hold .q {
    font-size: 28px;
    line-height: 120%;
    margin: 0 0 20px
}

#main .testimonials-block .el .hold .d,
.acf-block-preview .testimonials-block .el .hold .d {
    font-size: 16px;
    line-height: 120%
}

#main .testimonials-block .el .hold img.size-t-logo,
.acf-block-preview .testimonials-block .el .hold img.size-t-logo {
    min-width: 0;
    min-height: 0;
    max-height: none;
    margin-left: 0
}

#main .testimonials-block .el.logo-added .text-wrapper,
.acf-block-preview .testimonials-block .el.logo-added .text-wrapper {
    position: relative;
    padding-bottom: 120px
}

#main .testimonials-block .el.logo-added .text-wrapper img.size-t-logo,
.acf-block-preview .testimonials-block .el.logo-added .text-wrapper img.size-t-logo {
    max-width: 155px;
    height: auto;
    position: absolute;
    bottom: 0;
    left: 0
}

#main .testimonials-block.active .el,
.acf-block-preview .testimonials-block.active .el {
    max-width: 1290px;
    margin: 0 15px
}

#main .testimonials-block.active .slick-track,
.acf-block-preview .testimonials-block.active .slick-track {
    display: flex
}

#main .testimonials-block.active .slick-track .slick-slide,
.acf-block-preview .testimonials-block.active .slick-track .slick-slide {
    height: auto
}

#main .testimonials-block .cat,
.acf-block-preview .testimonials-block .cat {
    text-transform: uppercase;
    margin: 0 0 25px;
    letter-spacing: 1px;
    font-weight: 500
}

#main .testimonials-block.static,
.acf-block-preview .testimonials-block.static {
    width: 100%;
    display: block
}

#main .testimonials-block.static .el,
.acf-block-preview .testimonials-block.static .el {
    width: 100%;
    margin-bottom: 45px
}

#main .testimonials-block.static .el .text-wrapper,
.acf-block-preview .testimonials-block.static .el .text-wrapper {
    position: relative
}

#main .testimonials-block.static .el .size-t-logo,
.acf-block-preview .testimonials-block.static .el .size-t-logo {
    min-width: 0;
    min-height: 0;
    width: auto;
    max-height: 100px;
    object-fit: contain;
    margin: 0;
    position: absolute;
    bottom: 0;
    left: 0
}

#main .testimonials-block.static .el.logo-added .text-wrapper,
.acf-block-preview .testimonials-block.static .el.logo-added .text-wrapper {
    padding-bottom: 120px
}

#main .testimonials-block.static .el:first-child,
.acf-block-preview .testimonials-block.static .el:first-child {
    opacity: 1 !important;
    transform: translateZ(0) !important
}

#main .testimonials-wrap .wrap,
.acf-block-preview .testimonials-wrap .wrap {
    margin-bottom: 0;
    align-items: center
}

#main .wp-block-embed.is-type-video.is-provider-youtube .wp-block-embed__wrapper,
#main .wp-block-embed.is-type-video.is-provider-vimeo .wp-block-embed__wrapper,
.acf-block-preview .wp-block-embed.is-type-video.is-provider-youtube .wp-block-embed__wrapper,
.acf-block-preview .wp-block-embed.is-type-video.is-provider-vimeo .wp-block-embed__wrapper {
    position: relative;
    width: 100%;
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden
}

#main .wp-block-embed.is-type-video.is-provider-youtube .wp-block-embed__wrapper iframe,
#main .wp-block-embed.is-type-video.is-provider-vimeo .wp-block-embed__wrapper iframe,
.acf-block-preview .wp-block-embed.is-type-video.is-provider-youtube .wp-block-embed__wrapper iframe,
.acf-block-preview .wp-block-embed.is-type-video.is-provider-vimeo .wp-block-embed__wrapper iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0
}

.slick-slider {
    position: relative;
    display: block;
    box-sizing: border-box;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-touch-callout: none;
    -khtml-user-select: none;
    -ms-touch-action: pan-y;
    touch-action: pan-y;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0)
}

.slick-list {
    position: relative;
    display: block;
    overflow: hidden;
    margin: 0;
    padding: 0
}

.slick-list:focus {
    outline: none
}

.slick-list.dragging {
    cursor: pointer;
    cursor: hand
}

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

.slick-track {
    position: relative;
    top: 0;
    left: 0;
    display: block;
    margin-left: auto;
    margin-right: auto
}

.slick-track:before,
.slick-track:after {
    display: table;
    content: ""
}

.slick-track:after {
    clear: both
}

.slick-loading .slick-track {
    visibility: hidden
}

.slick-slide {
    display: none;
    float: left;
    height: 100%;
    min-height: 1px
}

[dir=rtl] .slick-slide {
    float: right
}

.slick-slide img {
    display: block
}

.slick-slide.slick-loading img {
    display: none
}

.slick-slide.dragging img {
    pointer-events: none
}

.slick-initialized .slick-slide {
    display: block
}

.slick-loading .slick-slide {
    visibility: hidden
}

.slick-vertical .slick-slide {
    display: block;
    height: auto;
    border: 1px solid rgba(0, 0, 0, 0)
}

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

.with-banner #branding {
    position: fixed;
    top: 0;
    left: 0;
    background: none;
    z-index: 200
}

.with-banner #page {
    padding-top: 0
}

#customize-controls.wrap {
    box-sizing: border-box;
    position: fixed;
    min-width: 300px;
    max-width: 600px;
    width: 18%;
    height: 100%;
    top: 0;
    bottom: 0;
    left: 0;
    padding: 0;
    margin: 0;
    margin-top: 0px;
    margin-left: 0px;
    z-index: 10
}

html :where(.wp-block) {
    max-width: 90%
}

.page.with-banner:not(.home) .banner,
.post-type-archive-testimonials .banner {
    width: 100%;
    height: 85vh;
    min-height: 760px;
    position: relative;
    overflow: hidden
}

.page.with-banner:not(.home) .banner .text-wrapper,
.post-type-archive-testimonials .banner .text-wrapper {
    position: absolute;
    width: 100%;
    left: 0;
    bottom: 0;
    text-align: center;
    z-index: 10
}

.page.with-banner:not(.home) .banner .text-wrapper h1,
.post-type-archive-testimonials .banner .text-wrapper h1 {
    font-size: 120px;
    line-height: 116px;
    min-height: 220px;
    color: #fff;
    font-weight: normal;
    margin: 0 0 30px;
    letter-spacing: -2px;
    max-width: 1100px;
    text-align: left;
    transition: ease 1s all
}

.page.with-banner:not(.home) .banner .text-wrapper p:not(.sub-title),
.post-type-archive-testimonials .banner .text-wrapper p:not(.sub-title) {
    max-width: 530px;
    color: #fff;
    font-size: 20px;
    line-height: 28px;
    margin: 0 0 0 184px;
    text-align: left;
    position: relative;
    top: 100px;
    transition: ease 1s all;
    opacity: 0
}

.page.with-banner:not(.home) .banner .text-wrapper p:not(.sub-title):before,
.post-type-archive-testimonials .banner .text-wrapper p:not(.sub-title):before {
    width: 190px;
    background: #86bc25;
    position: absolute;
    top: 200%;
    left: -240px;
    height: calc(100% + 50px);
    content: "";
    transition: ease 1s all;
    opacity: 0
}

.page.with-banner:not(.home) .banner .text-wrapper p.sub-title,
.post-type-archive-testimonials .banner .text-wrapper p.sub-title {
    text-align: left;
    text-transform: uppercase;
    letter-spacing: 2px;
    color: #fff;
    font-size: 13px;
    margin: 0 0 15px
}

.page.with-banner:not(.home) .banner .bot-arrow,
.post-type-archive-testimonials .banner .bot-arrow {
    display: inline-block;
    vertical-align: top;
    position: relative;
    top: -25px;
    animation: arrowBounce 1.2s ease-in-out infinite
}

.page.with-banner:not(.home) .banner:before,
.post-type-archive-testimonials .banner:before {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: rgba(0, 0, 0, .2);
    z-index: 5;
    content: ""
}

.page.with-banner:not(.home) .banner.loaded .text-wrapper p,
.post-type-archive-testimonials .banner.loaded .text-wrapper p {
    opacity: 1;
    top: 0
}

.page.with-banner:not(.home) .banner.loaded .text-wrapper p:before,
.post-type-archive-testimonials .banner.loaded .text-wrapper p:before {
    top: 0;
    opacity: 1
}

.page.with-banner:not(.home) .banner.loaded.with-decoration:after,
.post-type-archive-testimonials .banner.loaded.with-decoration:after {
    opacity: 1;
    right: 0
}

.page.with-banner:not(.home) .banner.with-decoration:after,
.post-type-archive-testimonials .banner.with-decoration:after {
    position: absolute;
    bottom: -25%;
    right: -500px;
    width: 250px;
    height: 816px;
    background: #86bc25;
    content: "";
    z-index: 10;
    opacity: 0;
    transition: ease 1s all
}

.page.with-banner:not(.home) .banner.with-decoration,
.post-type-archive-testimonials .banner.with-decoration {
    overflow: visible !important
}

.page.with-banner:not(.home) .entry-content,
.post-type-archive-testimonials .entry-content {
    padding-top: 120px
}

#main .contact-columns,
.acf-block-preview .contact-columns {
    padding-bottom: 100px
}

#main .contact-columns .wrap,
.acf-block-preview .contact-columns .wrap {
    padding: 0
}

#main .contact-columns .columns-hold,
.acf-block-preview .contact-columns .columns-hold {
    display: flex;
    max-width: 900px;
    justify-content: space-between
}

#main .contact-columns .columns-hold h3,
.acf-block-preview .contact-columns .columns-hold h3 {
    font-size: 32px !important;
    line-height: 120% !important;
    margin: 0 0 32px !important;
    letter-spacing: 0
}

#main .contact-columns .columns-hold .item,
.acf-block-preview .contact-columns .columns-hold .item {
    display: flex;
    align-items: center;
    margin: 0 0 15px
}

#main .contact-columns .columns-hold .item svg,
.acf-block-preview .contact-columns .columns-hold .item svg {
    height: 25px;
    width: auto;
    margin: 0 20px 0 0
}

#main .contact-columns .columns-hold .item a,
.acf-block-preview .contact-columns .columns-hold .item a {
    color: #3d4548;
    text-decoration: none
}

#main .contact-columns .columns-hold .item a:hover,
.acf-block-preview .contact-columns .columns-hold .item a:hover {
    color: #86bc25
}

#main .contact-columns .columns-hold .col,
.acf-block-preview .contact-columns .columns-hold .col {
    margin: 0 0 100px;
    max-width: 420px
}

#main .contact-columns .columns-hold .col:first-child,
.acf-block-preview .contact-columns .columns-hold .col:first-child {
    margin-right: 20px
}

#main .contact-placer .wrap,
.acf-block-preview .contact-placer .wrap {
    padding: 0;
    padding-top: 65px;
    padding-bottom: 150px
}

#main .contact-placer .wrap .gform_wrapper,
.acf-block-preview .contact-placer .wrap .gform_wrapper {
    max-width: 900px
}

#main h2.gform_submission_error,
.acf-block-preview h2.gform_submission_error {
    font-size: 48px !important;
    line-height: 120% !important;
    margin-bottom: 0 !important
}

.feed-code {
    padding-bottom: 20px
}

.feed-code.fullwidth {
    padding-left: 10px;
    padding-right: 10px
}

.gform_wrapper input[type=text],
.gform_wrapper input[type=email],
.gform_wrapper input[type=tel] {
    height: 62px;
    width: 100%;
    box-sizing: border-box;
    border: 1px solid #3d4548;
    padding: 0 20px !important;
    background: none;
    font-family: "DM Sans", sans-serif;
    font-size: 18px !important
}

.gform_wrapper input[type=text]::placeholder,
.gform_wrapper input[type=email]::placeholder,
.gform_wrapper input[type=tel]::placeholder {
    opacity: 1;
    color: #3d4548
}

.gform_wrapper textarea {
    border: 1px solid #3d4548;
    width: 100%;
    font-size: 18px !important;
    height: 254px;
    border: 1px solid #3d4548;
    box-sizing: border-box;
    padding: 20px !important;
    resize: none;
    background: none;
    font-family: "DM Sans", sans-serif
}

.gform_wrapper textarea::placeholder {
    opacity: 1;
    color: #3d4548
}

.gform_wrapper .ginput_container_select {
    border: 1px solid #3d4548;
    background: url(../../assets/img/g-arrow.svg) no-repeat 98% 50%;
    background-size: auto 28px
}

.gform_wrapper select {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    font-size: 18px !important;
    color: #3d4548;
    height: 62px;
    border: none;
    background: none;
    padding: 0 20px !important
}

.gform_wrapper input[type=submit] {
    background: none;
    border: none;
    font-size: 22px;
    color: #86bc25;
    background: url(../../assets/img/green-arrow.svg) no-repeat 100% 1px;
    border-bottom: 1px solid #86bc25;
    display: block;
    width: 50%;
    text-align: left;
    padding: 0 0 15px;
    font-family: "DM Sans", sans-serif
}

.gform_wrapper .gform_footer {
    padding: 40px 0 !important
}

.single-services .banner,
.single-post .banner {
    width: 100%;
    height: 85vh;
    min-height: 760px;
    position: relative
}

.single-services .banner .text-wrapper,
.single-post .banner .text-wrapper {
    position: absolute;
    width: 100%;
    left: 0;
    bottom: 150px;
    text-align: center;
    z-index: 10
}

.single-services .banner .text-wrapper h1,
.single-post .banner .text-wrapper h1 {
    font-size: 76px;
    line-height: 72px;
    color: #fff;
    font-weight: normal;
    margin: 0;
    letter-spacing: -2px;
    max-width: 1100px;
    text-align: left;
    opacity: 1;
    transform: translate(0, 0);
    transition: ease 1s all
}

.single-services .banner .text-wrapper p.sub-title,
.single-post .banner .text-wrapper p.sub-title {
    position: relative;
    color: #fff;
    text-align: left;
    text-transform: uppercase;
    letter-spacing: 2px;
    font-size: 18px;
    margin: 0 0 25px;
    transform: translate(-100px, 0);
    opacity: 0;
    transition: ease 1s all
}

.single-services .banner .bot-arrow,
.single-post .banner .bot-arrow {
    display: inline-block;
    vertical-align: top;
    position: relative;
    top: 125px;
    animation: arrowBounce 1.2s ease-in-out infinite
}

.single-services .banner:before,
.single-post .banner:before {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: rgba(0, 0, 0, .2);
    z-index: 5;
    content: ""
}

.single-services .banner:after,
.single-post .banner:after {
    position: absolute;
    bottom: -150px;
    right: -500px;
    width: 250px;
    height: 816px;
    background: #86bc25;
    content: "";
    z-index: 10;
    opacity: 0;
    transition: ease 1s all
}

.single-services .banner.loaded:after,
.single-post .banner.loaded:after {
    right: 0;
    opacity: 1
}

.single-services .banner.loaded .text-wrapper h1,
.single-post .banner.loaded .text-wrapper h1 {
    opacity: 1;
    transform: translate(0, 0)
}

.single-services .banner.loaded .text-wrapper p.sub-title,
.single-post .banner.loaded .text-wrapper p.sub-title {
    opacity: 1;
    transform: translate(0, 0)
}

.single-services .entry-content,
.single-post .entry-content {
    padding-top: 120px;
    padding-bottom: 50px
}

.single-services .two-cols,
.single-post .two-cols {
    margin-bottom: 175px
}

.single-post .entry-content .content-wrapper p {
    margin-bottom: 50px !important;
    line-height: 28px !important
}

.single-case-studies .banner {
    width: 100%;
    height: 85vh;
    min-height: 760px;
    position: relative
}

.single-case-studies .banner .text-wrapper {
    position: absolute;
    width: 100%;
    left: 0;
    bottom: 220px;
    text-align: center;
    z-index: 10
}

.single-case-studies .banner .text-wrapper h1 {
    font-size: 76px;
    line-height: 72px;
    color: #fff;
    font-weight: normal;
    margin: 0 0 30px;
    letter-spacing: -2px;
    max-width: 1100px;
    text-align: left;
    transition: ease 1s all;
    opacity: 1;
    transform: translate(0, 0)
}

.single-case-studies .banner .text-wrapper p {
    text-align: left;
    color: #fff;
    font-size: 20px;
    line-height: 28px;
    opacity: 0;
    transition: ease 1s all
}

.single-case-studies .banner .text-wrapper:after {
    width: 250px;
    height: 100%;
    content: "";
    background: #86bc25;
    position: absolute;
    right: -200px;
    opacity: 0;
    transition: ease 1s all;
    top: 0
}

.single-case-studies .banner:before {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: rgba(0, 0, 0, .2);
    z-index: 5;
    content: ""
}

.single-case-studies .banner.loaded .text-wrapper h1 {
    opacity: 1;
    transform: translate(0, 0)
}

.single-case-studies .banner.loaded .text-wrapper p {
    opacity: 1
}

.single-case-studies .banner.loaded .text-wrapper:after {
    opacity: 1;
    right: 0
}

.single-case-studies .entry-content {
    padding-top: 120px
}

.single-case-studies .entry-content .intro .holder .img-wrapper:after {
    top: 0;
    height: 70%
}

.single-case-studies .entry-content .intro {
    margin-bottom: 100px
}

.single-case-studies .entry-content .intro .holder .text-wrapper {
    max-width: 480px
}

.single-case-studies .entry-content .intro .holder .text-wrapper h3 {
    margin-bottom: 35px !important;
    letter-spacing: -1px !important
}

.single-case-studies .entry-content .intro .holder .text-wrapper p {
    margin-bottom: 50px !important
}

.single-case-studies .entry-content .intro .holder .text-wrapper ul {
    font-size: 22px;
    line-height: 28px
}

.acf-block-preview .team-list {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap
}

#main p,
.wp-block-post-content p {
    font-size: 20px;
    line-height: 24px;
    margin: 0 0 15px
}

#main .two-cols,
.wp-block-post-content .two-cols {
    padding-top: 50px
}

#main .two-cols h2,
#main .two-cols h3,
.wp-block-post-content .two-cols h2,
.wp-block-post-content .two-cols h3 {
    max-width: 1000px;
    margin-bottom: 50px
}

#main .two-cols p,
.wp-block-post-content .two-cols p {
    font-size: 20px;
    line-height: 1.3;
    margin: 0 0 16px
}

#main .two-cols .wrap,
.wp-block-post-content .two-cols .wrap {
    padding-top: 0;
    padding-left: 0;
    padding-right: 0;
    display: flex;
    justify-content: flex-start
}

#main .two-cols .wrap .col,
.wp-block-post-content .two-cols .wrap .col {
    max-width: 40.5%;
    width: 100%
}

#main .two-cols .wrap .col.left,
.wp-block-post-content .two-cols .wrap .col.left {
    margin-right: 135px
}

#main .two-cols a.btn,
.wp-block-post-content .two-cols a.btn {
    font-size: 22px;
    color: #86bc25;
    display: flex;
    width: 100%;
    justify-content: space-between;
    line-height: 28px;
    border-bottom: 1px solid #86bc25;
    text-decoration: none;
    padding: 0 0 7px;
    margin-top: 25px;
    transition: ease 350ms all
}

#main .two-cols a.btn svg,
.wp-block-post-content .two-cols a.btn svg {
    fill: #86bc25;
    width: 40px;
    height: auto
}

#main .two-cols a.btn:hover,
.wp-block-post-content .two-cols a.btn:hover {
    color: #000;
    border-color: #000
}

#main .two-cols a.btn:hover svg,
.wp-block-post-content .two-cols a.btn:hover svg {
    fill: #000
}

#main .two-cols a.btn:first-of-type,
.wp-block-post-content .two-cols a.btn:first-of-type {
    margin-top: 50px
}

#main ul,
.wp-block-post-content ul {
    list-style: none
}

#main ul li,
.wp-block-post-content ul li {
    position: relative;
    padding-left: 20px;
    margin: 0 0 10px
}

#main ul li:before,
.wp-block-post-content ul li:before {
    width: 6px;
    height: 1px;
    background: #3d4548;
    position: absolute;
    left: 0;
    top: 10px;
    content: ""
}

#main section.team,
.wp-block-post-content section.team {
    padding-top: 60px
}

#main section.team .wrap,
.wp-block-post-content section.team .wrap {
    padding: 0
}

#main section.team h2,
#main section.team h3,
.wp-block-post-content section.team h2,
.wp-block-post-content section.team h3 {
    margin: 0 0 50px
}

#main section.team .team-desc,
.wp-block-post-content section.team .team-desc {
    max-width: unset;
    margin: 0 0 34px
}

#main section.team .team-desc ul,
.wp-block-post-content section.team .team-desc ul {
    font-size: 18px;
    line-height: 22px
}

#main section.team .team-list .member,
.wp-block-post-content section.team .team-list .member {
    flex: 0 0 auto;
    width: 100%;
    max-width: 400px
}

#main section.team .team-list .member img,
.wp-block-post-content section.team .team-list .member img {
    width: 100%;
    height: auto;
    margin: 0 0 30px
}

#main section.team .team-list .member h3,
.wp-block-post-content section.team .team-list .member h3 {
    font-size: 25px !important;
    line-height: 30px !important;
    margin: 0 0 15px !important;
    padding: 0;
    letter-spacing: 0
}

#main section.team .team-list .member:nth-child(3n),
.wp-block-post-content section.team .team-list .member:nth-child(3n) {
    margin-right: 0
}

#main section.team .team-list .member span,
.wp-block-post-content section.team .team-list .member span {
    display: block;
    font-size: 16px;
    line-height: 24px;
    margin-bottom: 10px
}

#main section.team .team-list .member span a,
.wp-block-post-content section.team .team-list .member span a {
    color: #86bc25;
    text-decoration: none
}

#main section.team .team-list .member span a:hover,
.wp-block-post-content section.team .team-list .member span a:hover {
    text-decoration: underline
}

#main section.team .team-list .profiles-row,
.wp-block-post-content section.team .team-list .profiles-row {
    display: flex;
    gap: 30px;
    margin-bottom: 30px;
    flex-wrap: nowrap;
    justify-content: flex-start
}

#main section.team .team-list .profiles-row.cols-3,
#main section.team .team-list .profiles-row.cols-2,
.wp-block-post-content section.team .team-list .profiles-row.cols-3,
.wp-block-post-content section.team .team-list .profiles-row.cols-2 {
    width: 33%
}

.two-cols-num .wrap {
    padding-top: 0;
    padding-left: 0;
    padding-right: 0
}

.two-cols-num .num-cols {
    margin-bottom: 200px
}

.two-cols-num .num-cols .row {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    padding: 32px 0;
    border-top: 1px solid #3d4548
}

.two-cols-num .num-cols .row .left-col {
    max-width: 40.5%;
    width: 100%;
    display: flex;
    justify-content: flex-start;
    margin-right: 135px;
    align-items: flex-start
}

.two-cols-num .num-cols .row .left-col span.num {
    font-size: 18px;
    line-height: 21px
}

.two-cols-num .num-cols .row p.title {
    font-size: 48px !important;
    line-height: 44px !important;
    margin: 0;
    max-width: 400px;
    padding-left: 70px
}

.two-cols-num .num-cols .row .right-col {
    max-width: 50%;
    width: 100%
}

.two-cols-num .num-cols .row .right-col p {
    font-size: 20px !important;
    line-height: 28px !important;
    margin: 0
}

.post-type-archive-testimonials.with-banner .wrap {
    padding-top: 40px
}

.two-cols-num .num-cols .row .right-col a.btn {
    font-size: 22px;
    color: #86bc25;
    display: flex;
    width: 100%;
    justify-content: space-between;
    line-height: 28px;
    border-bottom: 1px solid #86bc25;
    text-decoration: none;
    padding: 0 0 7px;
    margin-top: 45px;
    transition: ease 350ms all
}

.two-cols-num .num-cols .row .right-col a.btn:hover {
    color: #000;
    border-color: #000
}

.two-cols-num .num-cols .row .right-col a.btn:hover svg {
    fill: #000
}

.two-cols-num .num-cols .row .right-col a.btn svg {
    fill: #86bc25;
    width: 40px;
    height: auto
}

.btn-hold {
    padding: 60px 0
}

.btn-hold a.cta-btn {
    margin-bottom: 0
}

.btn-hold.dark-grey {
    background: #3d4548
}

.btn-hold.dark-grey a.cta-btn {
    border-color: #fff;
    color: #fff
}

.btn-hold.dark-grey a.cta-btn svg {
    fill: #fff
}

.btn-hold.dark-grey a.cta-btn:hover {
    background: #f3f3f3;
    color: #3d4548;
    border-color: #3d4548
}

.btn-hold.dark-grey a.cta-btn:hover svg {
    fill: #3d4548
}

#main .company-desc,
.company-desc {
    margin-bottom: 160px
}

#main .company-desc h3,
.company-desc h3 {
    font-size: 48px !important;
    line-height: 50px !important;
    margin: 0 0 30px !important
}

#main .company-desc .wrap,
.company-desc .wrap {
    padding-top: 0;
    font-size: 18px
}

#main .company-desc p,
.company-desc p {
    font-size: 20px;
    line-height: 28px
}

#main .img-card,
.acf-block-preview .img-card {
    padding-bottom: 30px
}

#main .img-card .wrap,
.acf-block-preview .img-card .wrap {
    padding: 0
}

#main .img-card .card-item,
.acf-block-preview .img-card .card-item {
    width: 31%;
    text-decoration: none;
    color: #3d4548;
    margin: 0 1% 2%;
    border: 1px solid #3d4548;
    transition: ease 350ms all
}

#main .img-card .card-item .img-wrapper,
.acf-block-preview .img-card .card-item .img-wrapper {
    height: 320px;
    width: calc(100% + 2px);
    overflow: hidden;
    display: block
}

#main .img-card .card-item img,
.acf-block-preview .img-card .card-item img {
    height: 100%;
    margin: -1px 0 0 -2px;
    width: 100%;
    object-fit: cover;
    transition: ease 350ms all
}

#main .img-card .card-item h3,
.acf-block-preview .img-card .card-item h3 {
    padding: 0;
    margin: 0 0 20px !important;
    font-size: 25px !important;
    line-height: 30px !important;
    letter-spacing: 0 !important
}

#main .img-card .card-item p,
.acf-block-preview .img-card .card-item p {
    font-size: 18px !important;
    line-height: 24px !important
}

#main .img-card .card-item .text-wrap,
.acf-block-preview .img-card .card-item .text-wrap {
    padding: 35px
}

#main .img-card a.card-item:hover,
#main .img-card a.card-item:focus-visible,
.acf-block-preview .img-card a.card-item:hover,
.acf-block-preview .img-card a.card-item:focus-visible {
    opacity: .8
}

#main .img-card a.card-item:hover .img-wrapper img,
#main .img-card a.card-item:focus-visible .img-wrapper img,
.acf-block-preview .img-card a.card-item:hover .img-wrapper img,
.acf-block-preview .img-card a.card-item:focus-visible .img-wrapper img {
    transform: scale(1.2)
}

#main .img-card .image-cards,
.acf-block-preview .img-card .image-cards {
    display: flex;
    justify-content: flex-start
}

.img-card.numbers-holder .card-item {
    width: 410px !important;
    margin-left: 15px !important;
    margin-right: 15px !important;
    margin-bottom: 60px !important;
    height: auto
}

.img-card.numbers-holder .heading {
    display: flex;
    justify-content: space-between;
    margin-bottom: 75px;
    align-items: flex-end
}

.img-card.numbers-holder .heading h2,
.img-card.numbers-holder .heading h3 {
    margin-bottom: 0 !important
}

.img-card.numbers-holder .heading .slider-nav {
    margin-top: 0
}

.img-card.numbers-holder .image-cards .slick-track {
    display: flex
}

.gallery {
    padding-bottom: 180px
}

.gallery .wrap {
    padding: 0;
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    margin-bottom: 75px
}

.gallery .wrap h2,
.gallery .wrap h3 {
    margin-bottom: 0 !important
}

.gallery .wrap .slider-nav {
    margin-top: 0
}

.gallery img {
    max-width: 100%;
    height: auto;
    margin: 0 30px 0 0
}

span.date {
    font-size: 25px;
    display: block;
    margin-bottom: 45px
}

@keyframes arrowBounce {

    0%,
    100% {
        transform: translateY(0)
    }

    50% {
        transform: translateY(-5px)
    }
}

img.aligncenter {
    display: block;
    margin-left: auto;
    margin-right: auto
}

img.alignright {
    display: inline;
    margin: 0 0 2px 7px;
    padding: 4px
}

img.alignleft {
    display: inline;
    margin: 0 7px 2px 0;
    padding: 4px
}

.alignright {
    float: right
}

.alignleft {
    float: left
}

#comments_wrap ol {
    list-style: none
}

#comments_wrap ol li {
    border-bottom: 1px solid #ccc;
    margin: 0 0 5px
}

#comments_wrap .commentmetadata {
    margin: 0 0 10px
}

#comments_wrap .comment-author {
    border-bottom: 1px solid #ccc;
    width: 100%;
    overflow: hidden;
    padding: 0 0 3px;
    line-height: 32px
}

#comments_wrap .comment-author img {
    float: left;
    margin: 0 10px 0 0
}

#comments_wrap .comment-author cite {
    font-weight: bold
}

.wp-caption {
    background: #f3f3f3;
    border: 1px solid #ddd;
    border-radius: 3px;
    margin: 10px;
    padding-top: 4px;
    text-align: center
}

.wp-caption img {
    border: 0 none;
    margin: 0;
    padding: 0
}

.wp-caption p.wp-caption-text {
    font-size: 11px;
    line-height: 17px;
    margin: 0;
    padding: 0 4px 5px
}

.mfp-bg {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1042;
    overflow: hidden;
    position: fixed;
    background: #0b0b0b;
    opacity: .8
}

.mfp-wrap {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1043;
    position: fixed;
    outline: none !important;
    -webkit-backface-visibility: hidden
}

.mfp-container {
    text-align: center;
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    padding: 0 8px;
    box-sizing: border-box
}

.mfp-container:before {
    content: "";
    display: inline-block;
    height: 100%;
    vertical-align: middle
}

.mfp-align-top .mfp-container:before {
    display: none
}

.mfp-content {
    position: relative;
    display: inline-block;
    vertical-align: middle;
    margin: 0 auto;
    text-align: left;
    z-index: 1045;
    width: 80%;
    max-width: 80%
}

.mfp-inline-holder .mfp-content,
.mfp-ajax-holder .mfp-content {
    width: 100%;
    cursor: auto
}

.mfp-ajax-cur {
    cursor: progress
}

.mfp-zoom-out-cur,
.mfp-zoom-out-cur .mfp-image-holder .mfp-close {
    cursor: -moz-zoom-out;
    cursor: -webkit-zoom-out;
    cursor: zoom-out
}

.mfp-zoom {
    cursor: pointer;
    cursor: -webkit-zoom-in;
    cursor: -moz-zoom-in;
    cursor: zoom-in
}

.mfp-auto-cursor .mfp-content {
    cursor: auto
}

.mfp-close,
.mfp-arrow,
.mfp-preloader,
.mfp-counter {
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none
}

.mfp-loading.mfp-figure {
    display: none
}

.mfp-hide {
    display: none !important
}

.mfp-preloader {
    color: #ccc;
    position: absolute;
    top: 50%;
    width: auto;
    text-align: center;
    margin-top: -0.8em;
    left: 8px;
    right: 8px;
    z-index: 1044
}

.mfp-preloader a {
    color: #ccc
}

.mfp-preloader a:hover {
    color: #fff
}

.mfp-s-ready .mfp-preloader {
    display: none
}

.mfp-s-error .mfp-content {
    display: none
}

button.mfp-close,
button.mfp-arrow {
    overflow: visible;
    cursor: pointer;
    background: rgba(0, 0, 0, 0);
    border: 0;
    -webkit-appearance: none;
    display: block;
    outline: none;
    padding: 0;
    z-index: 1046;
    box-shadow: none;
    touch-action: manipulation
}

button::-moz-focus-inner {
    padding: 0;
    border: 0
}

.mfp-close {
    width: 44px;
    height: 44px;
    line-height: 44px;
    position: absolute;
    right: 0;
    top: 0;
    text-decoration: none;
    text-align: center;
    opacity: .65;
    padding: 0 0 18px 10px;
    color: #fff;
    font-style: normal;
    font-size: 28px;
    font-family: Arial, Baskerville, monospace
}

.mfp-close:hover,
.mfp-close:focus {
    opacity: 1
}

.mfp-close:active {
    top: 1px
}

.mfp-close-btn-in .mfp-close {
    color: #333
}

.mfp-image-holder .mfp-close,
.mfp-iframe-holder .mfp-close {
    color: #fff;
    right: -6px;
    text-align: right;
    padding-right: 6px;
    width: 100%
}

.mfp-counter {
    position: absolute;
    top: 0;
    right: 0;
    color: #ccc;
    font-size: 12px;
    line-height: 18px;
    white-space: nowrap
}

.mfp-arrow {
    position: absolute;
    opacity: .65;
    margin: 0;
    top: 50%;
    margin-top: -55px;
    padding: 0;
    width: 90px;
    height: 110px;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0)
}

.mfp-arrow:active {
    margin-top: -54px
}

.mfp-arrow:hover,
.mfp-arrow:focus {
    opacity: 1
}

.mfp-arrow:before,
.mfp-arrow:after {
    content: "";
    display: block;
    width: 0;
    height: 0;
    position: absolute;
    left: 0;
    top: 0;
    margin-top: 35px;
    margin-left: 35px;
    border: medium inset rgba(0, 0, 0, 0)
}

.mfp-arrow:after {
    border-top-width: 13px;
    border-bottom-width: 13px;
    top: 8px
}

.mfp-arrow:before {
    border-top-width: 21px;
    border-bottom-width: 21px;
    opacity: .7
}

.mfp-arrow-left {
    left: 0
}

.mfp-arrow-left:after {
    border-right: 17px solid #fff;
    margin-left: 31px
}

.mfp-arrow-left:before {
    margin-left: 25px;
    border-right: 27px solid #3f3f3f
}

.mfp-arrow-right {
    right: 0
}

.mfp-arrow-right:after {
    border-left: 17px solid #fff;
    margin-left: 39px
}

.mfp-arrow-right:before {
    border-left: 27px solid #3f3f3f
}

.mfp-iframe-holder {
    padding-top: 40px;
    padding-bottom: 40px
}

.mfp-iframe-holder .mfp-content {
    line-height: 0;
    width: 100%;
    max-width: 900px
}

.mfp-iframe-holder .mfp-close {
    top: -40px
}

.mfp-iframe-scaler {
    width: 100%;
    height: 0;
    overflow: hidden;
    padding-top: 56.25%
}

.mfp-iframe-scaler iframe {
    position: absolute;
    display: block;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    box-shadow: 0 0 8px rgba(0, 0, 0, .6);
    background: #000
}

img.mfp-img {
    width: auto;
    max-width: 100%;
    height: auto;
    display: block;
    line-height: 0;
    box-sizing: border-box;
    padding: 40px 0 40px;
    margin: 0 auto
}

.mfp-figure {
    line-height: 0
}

.mfp-figure:after {
    content: "";
    position: absolute;
    left: 0;
    top: 40px;
    bottom: 40px;
    display: block;
    right: 0;
    width: auto;
    height: auto;
    z-index: -1;
    box-shadow: 0 0 8px rgba(0, 0, 0, .6);
    background: #444
}

.mfp-figure small {
    color: #bdbdbd;
    display: block;
    font-size: 12px;
    line-height: 14px
}

.mfp-figure figure {
    margin: 0
}

.mfp-bottom-bar {
    margin-top: -36px;
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    cursor: auto
}

.mfp-title {
    text-align: left;
    line-height: 18px;
    color: #f3f3f3;
    word-wrap: break-word;
    padding-right: 36px
}

.mfp-image-holder .mfp-content {
    max-width: 100%
}

.mfp-gallery .mfp-image-holder .mfp-figure {
    cursor: pointer
}

@media screen and (max-width: 800px)and (orientation: landscape),
screen and (max-height: 300px) {
    .mfp-img-mobile .mfp-image-holder {
        padding-left: 0;
        padding-right: 0
    }

    .mfp-img-mobile img.mfp-img {
        padding: 0
    }

    .mfp-img-mobile .mfp-figure:after {
        top: 0;
        bottom: 0
    }

    .mfp-img-mobile .mfp-figure small {
        display: inline;
        margin-left: 5px
    }

    .mfp-img-mobile .mfp-bottom-bar {
        background: rgba(0, 0, 0, .6);
        bottom: 0;
        margin: 0;
        top: auto;
        padding: 3px 5px;
        position: fixed;
        box-sizing: border-box
    }

    .mfp-img-mobile .mfp-bottom-bar:empty {
        padding: 0
    }

    .mfp-img-mobile .mfp-counter {
        right: 5px;
        top: 3px
    }

    .mfp-img-mobile .mfp-close {
        top: 0;
        right: 0;
        width: 35px;
        height: 35px;
        line-height: 35px;
        background: rgba(0, 0, 0, .6);
        position: fixed;
        text-align: center;
        padding: 0
    }
}

@media all and (max-width: 900px) {
    .mfp-arrow {
        -webkit-transform: scale(0.75);
        transform: scale(0.75)
    }

    .mfp-arrow-left {
        -webkit-transform-origin: 0;
        transform-origin: 0
    }

    .mfp-arrow-right {
        -webkit-transform-origin: 100%;
        transform-origin: 100%
    }

    .mfp-container {
        padding-left: 6px;
        padding-right: 6px
    }
}

.mfp-iframe-holder .mfp-content {
    max-width: 1300px
}

@media all and (min-width: 1024px) {
    .single-post .entry-content .content-wrapper p {
        margin-bottom: 50px !important;
        line-height: 28px !important
    }

    .single-post .entry-content .content-wrapper {
        max-width: 1290px;
        width: 100%;
        margin-left: auto;
        margin-right: auto
    }

    #main .company-desc .wrap,
    .company-desc .wrap {
        font-size: 20px;
        line-height: 28px !important
    }
}

.resources {
    width: 100%
}

.resources .wrap {
    padding: 0
}

.resources .wrap .desc {
    font-size: 20px;
    line-height: 28px;
    max-width: 850px;
    margin-bottom: 50px
}

.resources .res-hold {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -1% 60px
}

.resources .res-hold .el {
    width: 31%;
    margin: 0 1% 2%;
    border: 1px solid #3d4548;
    display: flex;
    align-items: flex-end;
    font-size: 20px;
    line-height: 28px;
    justify-content: space-between;
    color: #3d4548;
    text-decoration: none;
    padding: 20px;
    box-sizing: border-box;
    transition: ease 350ms all
}

.resources .res-hold .el img {
    margin-left: 150px;
    height: 42px;
    width: auto
}

.resources .res-hold .el:hover {
    background-color: #f3f3f3
}

.resources .res-hold .el:focus-visible {
    border-color: #86bc25;
    border-width: 2px
}

#main .services.compact .wrap,
.acf-block-preview .services.compact .wrap {
    margin: 0
}

#main .services.compact .wrap h3.sub-title,
.acf-block-preview .services.compact .wrap h3.sub-title {
    font-size: 48px !important;
    line-height: 44px !important;
    padding-left: 180px !important
}

#main .services.compact p.acc-title,
.acf-block-preview .services.compact p.acc-title {
    font-size: 34px !important;
    line-height: 42px !important;
    margin: 0 !important;
    padding-right: 20%
}

#main .services.compact p.acc-title:after,
.acf-block-preview .services.compact p.acc-title:after {
    width: 100px;
    height: 100%;
    background: url(../../assets/img/g-arrow.svg) no-repeat 50% 50%;
    background-size: auto;
    content: "";
    position: absolute;
    right: 0;
    top: 0;
    background-size: auto 34px
}

#main .services.compact .text-wrapper,
.acf-block-preview .services.compact .text-wrapper {
    max-width: 90%;
    box-sizing: border-box
}

#main .services.compact .text-wrapper p,
#main .services.compact .text-wrapper ol,
#main .services.compact .text-wrapper ul,
.acf-block-preview .services.compact .text-wrapper p,
.acf-block-preview .services.compact .text-wrapper ol,
.acf-block-preview .services.compact .text-wrapper ul {
    font-size: 17px !important;
    line-height: 22px !important
}

#main .services.compact a.btn,
.acf-block-preview .services.compact a.btn {
    max-width: 550px
}

#main .services.compact .holder,
.acf-block-preview .services.compact .holder {
    padding-top: 0
}

:focus-visible {
    border: 1px solid #86bc25
}

#branding a.user-menu.active:focus-visible {
    border-color: #fff
}

.focus-trap,
.focus-trap-user {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    left: -9999px
}

.page-slider p.section-name {
    color: #fff !important
}

.slides .btns ul::-webkit-scrollbar {
    width: 6px
}

.slides .btns ul::-webkit-scrollbar-track {
    background: rgba(0, 0, 0, 0)
}

.slides .btns ul::-webkit-scrollbar-thumb {
    background-color: #86bc25;
    border-radius: 3px;
    border: none
}

.slides .btns ul {
    scrollbar-width: thin;
    scrollbar-color: #86bc25 rgba(0, 0, 0, 0)
}

.single-services .entry-content,
.single-post .entry-content {
    padding-bottom: 0px
}

#main .img-card,
.acf-block-preview .img-card {
    padding-bottom: 150px
}

#main .news-section,
.acf-block-preview .news-section {
    padding-bottom: 60px
}

#main .news-section,
.acf-block-preview .news-section {
    margin: 0
}

#main .news-item,
.acf-block-preview .news-item {
    background: #fff
}

#main .company-desc p:not(:last-child),
.company-desc p:not(:last-child) {
    margin: 0 0 50px !important
}

#main .company-desc p:last-child,
.company-desc p:last-child {
    margin: 0 !important
}

.wp-block-column p,
#main .two-cols p {
    margin: 0 0 20px !important
}

#main .two-cols blockquote p,
.wp-block-post-content .two-cols blockquote p {
    font-size: 40px !important;
    line-height: 110% !important
}

.wp-block-image.aligncenter {
    margin: 0 auto
}

.two-cols-num .num-cols {
    margin-bottom: 120px
}

.post-type-archive-testimonials .testimonials-block.static .el .size-t-logo,
.acf-block-preview .testimonials-block.static .el .size-t-logo {
    max-height: 90px !important;
    max-width: 155px
}

.single #main .testimonials-block .el .hold img.size-t-logo,
.acf-block-preview .testimonials-block .el .hold img.size-t-logo {
    max-height: 90px;
    max-width: 155px;
    min-width: unset !important;
    min-height: unset !important;
    margin: 0;
    position: absolute;
    bottom: 0px;
    object-fit: contain;
    object-position: left
}

#main .intro.thin .section-name,
.acf-block-preview .intro.thin .section-name {
    font-size: 13px !important;
    line-height: 21px !important
}

.slides {
    min-height: 750px
}

.slides .slide .slide-holder h2 {
    margin: 0 0 10vh
}

.slides .slide .slide-holder h2 {
    font-size: 66px
}

.single-services .banner,
.single-post .banner {
    height: 75vh;
    min-height: 600px
}

.single-case-studies .banner {
    height: 75vh;
    min-height: 600px
}

.page.with-banner:not(.home) .banner {
    height: 75vh;
    min-height: 600px
}

.page-slider {
    height: 65vh;
    max-height: 900px;
    min-height: 600px
}

.statistics-holder .wrap table th {
    font-size: 19px;
    padding: 0;
    font-weight: 100
}

.statistics-holder .wrap .row>p {
    font-size: 16px
}

.statistics-holder .wrap table td {
    font-size: 19px;
    font-weight: 100
}

@media only screen and (max-width: 1544px) {
    .statistics-holder .desc {
        padding-left: 0
    }
}

@media all and (min-width: 1225px) {

    section.services p.acc-title,
    div.services p.acc-title {
        font-size: 40px !important;
        line-height: 38px !important
    }

    .statistics-holder h3 {
        font-size: 56px !important
    }

    .single-services .banner .text-wrapper h1,
    .single-post .banner .text-wrapper h1 {
        font-size: 66px;
        line-height: 62px
    }

    #main .intro h2,
    .acf-block-preview .intro h2 {
        max-width: 80%
    }

    h1.entry-title {
        font-size: 66px;
        line-height: 62px
    }

    .page.with-banner:not(.home) .banner .text-wrapper h1,
    .post-type-archive-testimonials .banner .text-wrapper h1 {
        font-size: 66px;
        line-height: 62px
    }

    .page.with-banner:not(.home) .banner .text-wrapper h1 {
        font-size: 66px;
        line-height: 62px
    }

    #main h2,
    #main h3,
    .editor-styles-wrapper h2,
    .editor-styles-wrapper h3,
    .services h2,
    .services h3,
    .acf-block-preview h2,
    .acf-block-preview h3 {
        font-size: 56px !important
    }

    #main h2,
    .editor-styles-wrapper h2,
    .services h2,
    .acf-block-preview h2 {
        line-height: 56px !important
    }

    .numbers .numbers-slider .number p {
        font-size: 76px !important
    }

    .numbers .numbers-slider .number {
        height: 360px
    }

    #main .company-desc p:not(:last-child),
    .company-desc p:not(:last-child) {
        margin: 0 0 20px !important
    }

    #main .company-desc,
    .company-desc {
        margin-bottom: 40px
    }

    .gallery {
        padding-bottom: 100px
    }

    .wp-block-column p,
    #main .two-cols p {
        margin: 0 0 20px !important
    }

    .wp-block-column p.sub-title,
    #main .two-cols p.sub-title {
        margin: 0 0 50px !important
    }

    #main h2,
    #main h3,
    .editor-styles-wrapper h2,
    .editor-styles-wrapper h3,
    .services h2,
    .services h3,
    .acf-block-preview h2,
    .acf-block-preview h3 {
        margin: 0 0 50px !important
    }

    .two-cols.with-prefix {
        margin: 0 !important;
        padding-bottom: 60px !important
    }

    #main .contact-columns .columns-hold .col,
    .acf-block-preview .contact-columns .columns-hold .col {
        margin: 0
    }

    .wrap {
        padding: 60px 60px 30px
    }

    #main .intro p.section-name {
        margin: 0 0 60px !important
    }

    .acf-block-preview p.section-name,
    #main p.section-name,
    .intro p.section-name,
    .statistics p.section-name {
        margin: 0 0 60px !important
    }

    section.services .faq,
    div.services .faq {
        margin-bottom: 100px
    }

    .single-services .entry-content,
    .single-post .entry-content {
        padding-top: 40px
    }

    .two-cols-num .num-cols {
        margin-bottom: 40px
    }

    .page.with-banner:not(.home) .banner,
    .post-type-archive-testimonials .banner {
        height: 75vh;
        min-height: 600px
    }

    .acf-block-preview p.section-name,
    #main p.section-name,
    .intro p.section-name,
    .statistics p.section-name {
        margin: 0 0 60px !important
    }

    .page.with-banner:not(.home) .entry-content,
    .post-type-archive-testimonials .entry-content {
        padding-top: 40px
    }

    .single-case-studies .entry-content {
        padding-top: 40px
    }

    #main .intro,
    .acf-block-preview .intro {
        padding-bottom: 40px
    }

    #main .img-card,
    .acf-block-preview .img-card {
        padding-bottom: 60px
    }

    .entry-content>.two-cols:first-child {
        padding-top: 0 !important
    }

    .single-case-studies .entry-content .intro .holder .text-wrapper p {
        margin-bottom: 20px !important
    }

    .single-case-studies .entry-content .intro {
        margin-bottom: 0px
    }

    #main .intro.dark-grey+.two-cols-num,
    .acf-block-preview .intro.dark-grey+.two-cols-num {
        margin-top: 60px
    }

    #main .intro.dark-grey,
    .acf-block-preview .intro.dark-grey {
        padding-top: 20px;
        padding-bottom: 80px
    }

    #main .intro.grey,
    .acf-block-preview .intro.grey {
        padding-bottom: 80px
    }

    #main .intro:has(+.grey),
    #main .intro:has(+.dark-grey),
    .acf-block-preview .intro:has(+.grey),
    .acf-block-preview .intro:has(+.dark-grey) {
        padding-bottom: 60px
    }
}

a.btn.empty-field {
    margin-top: 0 !important
}

@media(min-width: 1225px) {
    .page-id-20 section.services p.acc-title {
        font-size: 30px !important;
        line-height: 38px !important
    }
}

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