/*
** Theme Variables
*/
:root {
    --green: #399c39;
    --red: #dc3232;
    --white: #ffffff;
    --black: #000000;
    --offwhite: rgba(255, 255, 255, 0.85);

    --primary:  #FF5D15;
    --primary-a:#e24c0c;

    --secondary:  #353535;
    --secondary-a:  #353535;

    --tertiary: #353535;
    --tertiary-a: #353535;

    --tertiary: #000;
    --tertiary-a: #000;

    --body: var(--secondary);

    --gray: #cfcfcf;
    --lightgray: #f5f5f5;
    --lightgreen: rgba(134, 134, 135, 0.071);
   
    --link: var(--primary);
    --link-a: var(--primary-a);

    --formfieldbg: rgba(255,255,255,0.5);
    --formfieldbg: rgba(255,255,255,0.8);
    --formfieldplaceholder: rgba(7, 33, 48, 0.8);
    --formtextcolor: var(--body);
    --formfieldborder: var(--lightgray);

    --siteradius: 6px;
    --siteradius8: 8px;
    --siteradius12: 12px;

    scroll-behavior: smooth;
}

:target {
    scroll-margin-top: 140px
}
  

/*
** Fonts
*/
@font-face {
    font-family: 'notosans';
    src: url('../fonts/NotoSans-Regular.woff2') format('woff2'),
        url('../fonts/NotoSans-Regular.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'notosans-md';
    src: url('../fonts/NotoSans-Medium.woff2') format('woff2'),
        url('../fonts/NotoSans-Medium.woff') format('woff');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'notosans-sb';
    src: url('../fonts/NotoSans-SemiBold.woff2') format('woff2'),
        url('../fonts/NotoSans-SemiBold.woff') format('woff');
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'notoserif';
    src: url('../fonts/NotoSerif-Regular.woff2') format('woff2'),
        url('../fonts/NotoSerif-Regular.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'notoserif-sb';
    src: url('../fonts/NotoSerif-SemiBold.woff2') format('woff2'),
        url('../fonts/NotoSerif-SemiBold.woff') format('woff');
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'notoserif-bd';
    src: url('../fonts/NotoSerif-Bold.woff2') format('woff2'),
        url('../fonts/NotoSerif-Bold.woff') format('woff');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}


/*
** Font Icons
*/
@font-face {
    font-family: 'brandwl';
    src: url('../fonts/icons/brandwl.ttf?obkpo0') format('truetype'),
        url('../fonts/icons/brandwl.woff?obkpo0') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: block;
}

[class^="icon-"], [class*=" icon-"] {
    font-family: 'brandwl';
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.icon-search:before {
    content: "\e912";
}
.icon-scroll-arrow:before {
    content: "\e911";
}
.icon-youtube:before {
    content: "\e90f";
}
.icon-twitter:before {
    content: "\e910";
}
.icon-angle-down:before {
    content: "\e90e";
}
.icon-facebook:before {
    content: "\e90d";
}
.icon-linkedin:before {
    content: "\e90b";
}
.icon-instagram:before {
    content: "\e90c";
}
.icon-phone:before {
    content: "\e900";
}
.icon-arrow:before {
    content: "\e901";
}
.icon-play:before {
    content: "\e902";
}
.icon-plus:before {
    content: "\e903";
}
.icon-minus:before {
    content: "\e904";
}
.icon-hadndshake:before {
    content: "\e905";
}
.icon-reports:before {
    content: "\e906";
}
.icon-results-badge:before {
    content: "\e907";
}
.icon-pin:before {
    content: "\e908";
}
.icon-mail:before {
    content: "\e909";
}
.icon-whatsapp:before {
    content: "\e90a";
}

/*
** Custom Reset
*/
*,:after,:before { -webkit-box-sizing: border-box; box-sizing: border-box }
img { max-width: 100%; height: auto; vertical-align: top; }
a, span, i, label { display: inline-block; }
a { color: var(--link); text-decoration: none; transition: 0.3s ease-in-out; }
a:hover { color: var(--link-a); }
a:focus { outline: none; }
strong, b { font-family: 'notoserif-bd', sans-serif; font-weight: 700; }

header ul,
footer ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

p:last-child,
ul:last-child,
li:last-child {
  margin-bottom: 0;
}

button,
button:focus {
  border: 0;
  outline: 0;
  box-shadow: none;
  cursor: pointer;
  transition: all 0.3s ease-in-out;
}

input:focus {
    outline: none;
    box-shadow: none;
}

ul, ol { padding-left: 20px; }

li { margin-bottom: 10px; }

/*
** Globals
*/

/*Typo*/
body {
    font-family: 'notosans', sans-serif;
    font-size: 18px;
    line-height: 1.66em;
    color: var(--body);
    margin: 0;
}

h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 {
    font-family: 'notoserif-bd', serif;
    font-weight: normal;
    font-style: normal;
    margin-top: 0;
    color: var(--secondary);
}

h1, .h1 { font-size: 52px; line-height: 1.26em; margin-bottom: 20px; }
h2, .h2 { font-size: 38px; line-height: 1.30em; margin-bottom: 18px; }
h3, .h3 { font-size: 28px; line-height: 1.36em; margin-bottom: 16px; }
h4, .h4 { font-size: 24px; line-height: 32px; margin-bottom: 16px; }
h5, .h5 { font-size: 20px; line-height: 28px; margin-bottom: 16px; }
h6, .h6 { font-size: 18px; line-height: 1.66em; margin-bottom: 14px; }

p { margin-top: 0; }

hr { width: 100%; height: 2px; margin: 20px 0; border: 0; background-color: var(--secondary); opacity: 0.1; }

/* Form Fields */
form {
    --fieldsize: 60px;
    --fieldpadds: 0 25px;
    --fieldtop: 18px;
    --fieldfsize: 18px;
}

input[type="text"],
input[type="search"],
input[type="email"],
input[type="password"],
input[type="num"],
input[type="tel"],
input[type="url"],
select,
textarea {
    font-family: 'notosans', sans-serif;
    font-size: var(--fieldfsize);
    line-height: calc(var(--fieldsize) - 2px);
    width: 100%;
    height: var(--fieldsize);
    padding: var(--fieldpadds);
    border-radius: var(--siteradius);
    background-color: var(--formfieldbg);
    border: 1px solid transparent;
    outline: 0 !important;
    vertical-align: top;
    color: var(--formtextcolor);
}

input::placeholder,
textarea::placeholder {
    color: var(--formfieldplaceholder);
}

textarea {
    padding-top: var(--fieldtop);
    line-height: 28px;
    height: 150px;
    resize: none;
}

select {
    width: 100%;
    padding-right: 42px;
    background-image: url('../images/angle-down.svg');
    background-size: 10px;
    background-position: right 20px center;
    background-repeat: no-repeat;
    -webkit-appearance: none;
    appearance: none;
}

/*Background Utilities*/
.bg--primary { background-color: var(--primary); color: var(--white); }
.bg--secondary { background-color: var(--secondary); color: var(--offwhite); }
.bg--tertiary { background-color: var(--tertiary); color: var(--white); }
.bg--secondary h2, .bg--tertiary h2 { color: var(--white); }
.bg--lightgray { background-color: var(--lightgray); }
.bg--lightgreen { background-color: var(--lightgreen); }
.bg--white { background-color: var(--white); color: var(--secondary); }

.bg--primary.section .section-head h2, .bg--tertiary.section .section-head h2 { color: var(--white); }

/*Text Utilities*/
.text-rg { font-family: 'notosans', sans-serif; }
.text-md { font-family: 'notosans-md', sans-serif; }
.text-sb { font-family: 'notosans-sb', sans-serif; }

.texts-rg { font-family: 'notoserif', serif; }
.texts-sb { font-family: 'notoserif-sb', serif; }
.texts-bd { font-family: 'notoserif-bd', serif; }

.text--primary { color: var(--primary); }
.text--secondary { color: var(--secondary); }
.text--body { color: var(--body); }
.text--white { color: var(--white); }
.text--offwhite { color: var(--offwhite); }

.font-24 { font-size: 24px; line-height: 1.50em; }
.font-20 { font-size: 20px; line-height: 1.60em; }
.font-18 { font-size: 18px; line-height: 26px; }
.font-16 { font-size: 16px; line-height: 24px; }
.font-14 { font-size: 14px; line-height: 22px; }

/*
** Buttons
*/
.bttn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 15px;
    font-family: 'notosans-sb', sans-serif;
    font-size: 18px;
    line-height: 43px;
    min-width: 158px;
    height: 45px;
    padding: 0 30px;
    text-align: center;
    border: 0px solid transparent;
    border-radius: 25px;
    cursor: pointer;
    transition: all 0.3s ease-in-out;
}

.bttn [class^="icon-"] {
    font-size: 12px;
    transition: 0.3s ease-in-out;
}

.bttn:hover [class^="icon-"] {
    transform: rotate(45deg);
}

.bttn-hauto {
    line-height: 22px;
    height: auto;
    min-height: 45px;
    padding: 8px 30px;
}

.bttn-box {
    display: inline-block;
    line-height: 22px;
    height: auto;
    min-height: 0;
    padding: 15px 30px;
    border-radius: var(--siteradius);
}

.bttn-box span {
    font-family: 'notosans', sans-serif;
    display: block;
    margin-top: 3px;
}

.bttn-primary {
    color: var(--white);
    background-color: var(--primary);
}

.bttn-primary:hover {
    color: var(--white);
    background-color: var(--primary-a);
}

/*
.bttn-secondary {
    color: var(--primary);
    background-color: var(--secondary);
}

.bttn-secondary:hover {
    color: var(--primary);
    background-color: var(--secondary-a);
}
*/

.bttn-secondary,
.bttn-white {
    color: var(--secondary);
    background-color: var(--white);
}

.bttn-secondary:hover,
.bttn-white:hover {
    color: var(--secondary);
    background-color: var(--white);
}

/*Other Utilities*/
.list-unstyled, .list-unstyled ul, .list-unstyled ol { padding: 0; margin: 0; list-style: none; }
.transition { transition: 0.3s ease-in-out; }
.unlink { pointer-events: none; cursor: none; }
.siteradius { border-radius: var(--siteradius); }

/*
** Bootstrap Extends & Overrides
*/

.container, .container-fluid, .row>* { padding-left: 15px; padding-right: 15px; }
.row { margin-left: -15px; margin-right: -15px; }

/* .container, .container-fluid, .row>* { padding-left: 10px; padding-right: 10px; } */
/* .row { margin-left: -10px; margin-right: -10px; } */
.gx-0.row>* { padding-left: 0; padding-right: 0; }
.gx-0.row { margin-left: 0; margin-right: 0; }

.visually-hidden,
.sr-only {
    position: absolute!important;
    width: 1px!important;
    height: 1px!important;
    padding: 0!important;
    margin: -1px!important;
    overflow: hidden!important;
    clip: rect(0,0,0,0)!important;
    white-space: nowrap!important;
    border: 0!important;
}

.overflow-hidden { overflow: hidden; }

/*
** WP Overrides
*/
.screen-reader-text { position: absolute; visibility: hidden; opacity: 0; }

/*
** Slick Slider
*/
.slick-initialized { z-index: 0; position: relative; }
.slide .slick-slide, .slide { display: none; float: left; height: 100%; min-height: 1px; }
.slick-initialized .slick-list { position: relative; overflow: hidden; }
.slick-initialized .slick-slide { display: inline-block; width: auto; }
.slick-initialized .slick-slide:focus { outline: none; }
.slick-dots { display: flex; align-items: center; justify-content: center; list-style: none; padding: 0; }
.slick-dots li { margin: 0; }
.slick-dots li + li { margin: 0; margin-left: 10px; }
.slick-dots li button {
    display: block;
    font-size: 0px;
    width: 12px;
    max-width: 12px;
    height: 12px;
    padding:0;
    border: 0px solid transparent;
    border-radius: 12px;
    background-color: var(--lightgray);
    opacity: 1;
    overflow: hidden;
    transition: all 0.3s ease-in-out;
}
.slick-dots li.slick-active button { background-color: var(--primary); }

/*Animation*/
.scrollReveal {
    opacity: 0;
    transition: 0.3s ease-in-out;
}

.scrollUp {
    transform: translateY(12px);
    transition: all 0.3s ease-in-out;
}

.fadeIn {
    opacity: 0;
    transition: all 0.3s ease-in-out;
}

.scrollReveal.revealIt {
    opacity: 1;
    transform: translate(0);
    rotate: 0deg;
}

/*
** Header
*/
.site-header {
    /* display: none !important; */
    font-family: 'notosans-md', sans-serif;
    position: sticky;
    position: fixed;
    top: 0;
    width: 100%;
    padding: 10px 0;
    background: var(--tertiary);
    background-color: transparent;
    transition: all 0.3s ease;
    z-index: 15;
}

.site-header.siteheader-sticky {
    padding: 10px 0;
    background: var(--tertiary);
    background: var(--white);
    box-shadow: 0px 1px 8px 0px rgba(0, 0, 0, 0.1);
}

.custom-logo,
.secondary-logo-link img {
    width: auto;
    height: 54px;
    transition: 0.2s ease;
}

.siteheader-sticky .custom-logo,
.siteheader-sticky .secondary-logo-link img {
    height: 50px;
}

.site-headerinv .custom-logo-link, .siteheader-sticky.site-headerinv .secondary-logo-link, .site-header:not(.site-headerinv) .secondary-logo-link { display: none; }
.site-headerinv .secondary-logo-link, .site-headerinv .secondary-logo-link, .siteheader-sticky.site-headerinv .custom-logo-link { display: block; }

.site-header .row {
    align-items: center;
}

.site-navmenu {
    display: inline-flex;
    align-items: center;
    column-gap: 30px;
}

.site-navmenu li { margin-bottom: 0; }


.site-navmenu a {
    /*
    font-size: 16px;
    line-height: 24px;
    */
    padding: 10px 5px;
    color: var(--secondary);
}

.site-navmenu a:hover,
.site-navmenu .current-menu-ancestor>a,
.site-navmenu .current-menu-parent>a,
.site-navmenu .current-menu-item>a {
    color: var(--primary);
}

/* 
.headctas .bttn {
    padding: 0 19px;
}
*/

.siteheader-sticky .headctas .bttn {
    /* font-size: 16px;
    line-height: 40px; */
    /* height: 40px; */
    min-width: 130px;
    padding: 0 10px; 
}

/*Site Menu Toggle*/
.site-menutoggle {
    display: flex;
    flex-wrap: wrap;
    align-content: center;
    align-items: center;
    width: 33px;
    height: 40px;
    position: relative;
    margin-bottom: 0;
}

.site-menutoggle span {
    display: block;
    width: 33px;
    height: 5px;
    margin-bottom: 5px;
    position: relative;
    background: linear-gradient(180deg, var(--primary) 0%, var(--primary) 100%);
    border-radius: 6px;
    transform-origin: 5px 5px;
    transition: transform 0.5s cubic-bezier(0.77, 0.2, 0.05, 1.0), background 0.5s cubic-bezier(0.77, 0.2, 0.05, 1.0), opacity 0.55s ease;
    z-index: 1;
}

.site-menutoggle span:last-child {
    margin-bottom: 0;
}

.site-menutoggle span:nth-last-child(2) {
    transform-origin: 0% 100%;
}

.site-menutoggle input:checked~span {
    opacity: 1;
    transform: rotate(45deg) translate(-5px, -19px);
}

.site-menutoggle input:checked~span:nth-last-child(2) {
    transform: rotate(-45deg) translate(1px, 20px);
}

.site-menutoggle input:checked~span:nth-last-child(3) {
    opacity: 0;
    transform: rotate(0deg) scale(0.2, 0.2);
    transition: 0s;
}

/*Generic*/
section.section { padding: 60px 0; }
.gap-30 { gap: 30px; }
.gapx-30 { column-gap: 30px; }
.gapy-30 { row-gap: 30px; }
.section-head { margin-bottom: 40px; }
.section-head.text--white, .section-head.text--white h2 { color: var(--white); }

.badge {
    font-family: 'notoserif-sb', sans-serif;
    padding: 3px 15px;
    background-color: var(--primary);
    border-radius: 20px;
}

/*
** Homepage
*/

/*Hero*/
.hero {
    position: relative;
    display: flex;
    align-items: center;
    padding: 70px 0;
}

.hero-full {
    min-height: 100vh;
    padding: 130px 0;
    overflow: hidden;
}

.hero-home {
	color: var(--white);
    background-color: #e7e7e7;
    background-color: var(--black);
}

.hero-home h1,
.hero-home .h1,
.hero-home h2,
.hero-home .h2,
.hero-home p {
	color: var(--white);
}

.hero-green {
    position: relative;
    color: var(--white);
    background-size: cover;
    background-position: center center;
}

.hero-green::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(50, 66, 8, 0.91);
    background-color: rgb(0,0,0);
    opacity: 0.8;
}

.hero-green h1 { color: var(--white); }

.hero-schild {
    min-height: 490px;
    background: var(--lightgreen);
}

.hero-page {
    min-height: 576px;
}

.hero-home .container { 
    position: relative;
    align-self: flex-end;
    align-self: center;
    z-index: 1;
}

.hero-wrapper {
    position: relative;
    /* max-width: 751px; */
    margin: 0 auto;
}

.hero-vid {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.hero-vid video {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.hero-vid::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(0deg, rgba(228, 228, 228, 0.8) 50%, transparent 100%);
    background: var(--black);
    opacity: 0.8;
    /* background-color: rgba(0,0,0,0.6); */
}

.hero-dark {
    color: var(--white);
}

.hero-swrap {
    display: flex;
    align-items: center;
    padding-top: 90px;
}

.hero-swrap::after {
    position: relative;
    content: "";
    align-self: stretch;
    width: 2px;
    background-color: var(--primary);
    z-index: 0;
}

.hero-swrap img {
    width: auto;
    height: 130px;
    margin-right: 30px;
}

.hero-swrap-txt {
    position: relative;
    padding-left: 30px;
    margin-bottom: 0;
    order: 1;
    z-index: 1;
}

.statbar-list {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 60px;
}

.ourwork { overflow: hidden; }

.logolist {
    --size: clamp(10rem, 1rem + 25vmin, 30rem);
    --gap: calc(var(--size) / 14);
    --duration: 20s;
    --scroll-start: 0;
    --scroll-end: calc(-100% - var(--gap));
    display: flex;
    gap: var(--gap);
    -webkit-mask-image: linear-gradient(var(--mask-direction, to right), hsl(0 0% 0% / 0), hsl(0 0% 0% / 1) 10%, hsl(0 0% 0% / 1) 90%, hsl(0 0% 0% / 0));
    mask-image: linear-gradient(var(--mask-direction, to right), hsl(0 0% 0% / 0), hsl(0 0% 0% / 1) 10%, hsl(0 0% 0% / 1) 90%, hsl(0 0% 0% / 0));
    margin: -30px 0;
    overflow: hidden;
}

.worklist {
    --gap: calc(var(--size) / 3);
}

.toolist {
    --gap: calc(var(--size) / 4);
}

.logotrack {
    display: flex;
    align-items: center;
    flex-shrink: 0;
    justify-content: space-around;
    gap: var(--gap);
    min-width: 100%;
    animation: scroll-x var(--duration) linear infinite;
    padding: 30px 0;
}

.logoitem {
    display: grid;
    place-items: center;
	flex: 0 auto;
    /* width: 200px; */
    height: 100px;
    fill: var(--color-text);
    background: var(--color-bg-accent);
    -webkit-user-drag: none;
}

.logoitem img { height: 100px; width: auto; }

.toolist .logoitem {
    width: auto;
    max-width: 150px;
    height: auto;
    min-height: 50px;
    padding: calc(var(--size)/10);
    transition: all 0.3s ease-in-out;
}

@keyframes scroll-x {
    from { transform: translateX(var(--scroll-start)); }
    to { transform: translateX(var(--scroll-end)); }
}

.wlmacta {
    display: flex;
    align-items: center;
    gap: 20px;
}

.wlmacta::before,
.wlmacta::after {
    content: "";
    flex: 1 0 auto;
    height: 2px;
    background-color: var(--secondary);
    opacity: 0.1;
}

.wlmalist {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
    margin: 40px 0;
}

.wlmaitem {
    display: flex;
    gap: 30px;
    padding: 30px;
    border: 1px solid rgba(7, 33, 48, 0.25);
    border-radius: calc(var(--siteradius)* 2);
    background: var(--white);
    box-shadow: 3px 4px 40px rgba(174, 174, 174, 0.25);
    transition: 0.3s ease-in-out;
}

.wlmaitem:hover {
    box-shadow: 3px 4px 20px rgba(174, 174, 174, 1);
}

.wlmaicon { flex: 1 0 auto; }

.dmouts .badge {
    padding: 8px 16px;
    margin-bottom: 20px;
    border-radius: var(--siteradius);
}

.scalea .vimeo {
    padding-right: 30px;
}

.scalea .vimeo > div {
    border-radius: var(--siteradius12);
    overflow: hidden;
}

.faqlist {
    display: grid;
    gap: 25px;
    margin-top: 50px;
}

.faqitem {
    padding: 0 0 25px;
    border-bottom: 1px solid #414042;
}

.faqhead {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    cursor: pointer;
}

.faqhead h3 {
    display: flex;
    align-items: flex-start;
    gap: 6px;
}

.faqopen .faqhead h3 { color: var(--primary); }

.faqhead h3::before {
    content: attr(data-faqi);
}

.faqbttn {
    font-size: 21px;
    line-height: 36px;
    font-weight: bold;
    color: var(--secondary);
    transform: rotate(0deg);
    transition: all .3s ease-in-out;
}

.faqopen .faqbttn {
    transform: rotate(45deg);
    color: var(--primary);
}

.faqbody {
    display: none;
    padding: 15px 0 0;
}

/*Testimonials*/
.testimonials { position: relative; }

.testi-list .slick-track { display: inline-flex; }

.testi-list {
    color: var(--secondary);
    margin-top: 50px;
    margin-bottom: 30px;
}

.testi-item {
    padding: 20px;
    margin: 0 10px;
    text-align: center;
    border-radius: var(--siteradius12);
    background-color: var(--white);
}

.testi-img {
    --testimgsize: 140px;
    display: block;
    width: var(--testimgsize);
    height: var(--testimgsize);
    margin: -90px auto 0;
    border-radius: 100%;
    background-color: var(--white);
    box-shadow: 0px 0px 1px 0px rgba(0, 0, 0, 0.5);
}

.testi-img img {
    /*
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    border-radius: 100%;
    overflow: hidden;
    */

    position: relative;
    width: calc(var(--testimgsize) - 35px);
    height: calc(var(--testimgsize) - 35px);
    object-fit: cover;
    top: 20px;
    object-fit: contain;
}

.testi-item h3 {
    margin: 10px 0 0;
}

.testi-stars {
    display: block;
    width: 103px;
    height: 16px;
    margin: 15px auto;
    background-image: url('../images/star.svg');
    background-repeat: repeat-x;
    background-size: 21px 16px;
    background-position: left top;
}

.slick-arrow {
    position: absolute;
    top: 50%;
    left: -20px;
    transform: translateY(-50%);
    padding: 0;
}

.next-arrow { left: auto; right: -20px; }

.next-arrow i { transform: rotate(45deg); }

.prev-arrow i { transform: rotate(-135deg); }

/*Form Customizations*/
.iti { display: block; color: var(--secondary); }

.iti__country-list {
    width: 400px;
    white-space: normal;
}

.siteform {
    margin-top: 40px;
    overflow-x: hidden;
}

.siteform .row { row-gap: 30px; }

.wpcf7-form-control-wrap {
    display: flex;
    flex-direction: column;
}

.wpcf7-not-valid-tip {
    position: relative;
    font-size: 12px;
    line-height: 1.3;
    padding: 6px 5px 3px;
    margin-top: -4px;
    color: #fff;
    background: #a60000;
    border-radius: 0px 0px 10px 10px;
}

.wpcf7 form .wpcf7-response-output {
    font-size: 14px;
    line-height: 1.4em;
    padding: 8px 10px;
    margin: 20px 0 0 0;
    border: 0;
    border-radius: 5px;
    background: transparent;
}

.wpcf7 form.sent .wpcf7-response-output {
    background: var(--green);
    color: #fff;
}

.wpcf7 form.invalid .wpcf7-response-output {
    background: #a60000;
    color: #ffffff;
}

.wpcf7-spinner {
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    margin: 0 auto;
    transform: translateX(110px) translateY(-15px);
}


/*
** Edit Link
*/
.post-edit-link,
.wp-logout {
    position: fixed;
    left: 0;
    bottom: 28px;
    font-size: 16px;
    line-height: 16px;
    padding: 6px 12px;
    min-width: 70px;
    text-align: center;
    color: var(--white) !important;
    background-color: var(--primary);
    z-index: 9000;
}

/*
** Footer
*/

.fooart {
    position: relative;
    display: block;
    height: 156px;
    height: 170px;
    width: 100%;
    background-image: url(../images/footer-curve.svg);
    background-repeat: no-repeat;
    background-size: 100%;
    overflow: hidden;
}

.fooart::before {
    content: "";
    position: absolute;
    left: 0;
    top: 10px;
    width: 100%;
    height: 100%;
    background-color: var(--lightgreen);
    background-color: var(--tertiary);
    mask-image: url(../images/footer-curve.svg);
    mask-size: 100%;
    overflow: hidden;
}

.foo-navs li,
.socialnav li,
.foopterms li {
    margin-bottom: 0;
}

.foo-navs h4 { color: var(--white); }

.foo-points .container { padding-top: 36px; padding-bottom: 40px; border-bottom: 1px solid #545454; }
.foo-pointer .h5 { display: flex; align-items: flex-start; gap: 20px; color: var(--white); }
.foo-pointer .h5 i { font-size: 30px; line-height: 1; }
.foo-pointer .icon-reports::before { font-size: 1.15em; }
.foo-pointer .icon-results-badge:before { font-size: 1.15em; }

.foo-navs { padding: 30px 0; }
.foo-navs a { color: var(--white); }
.foo-navs a:hover { color: var(--primary); }

.foonav li:not(:last-child) { margin-bottom: 10px; }

.socialnav { display: flex; align-items: center; gap: 20px; }

.foo-about { width: 1100px; max-width: 100%; }
.foo-about .container { border-top: 1px solid #545454; }
.foo-about img { width: 120px; width: 300px; }

.foopterms { display: flex; align-items: center; gap: 18px; }
.foopterms a { color: var(--white); }
.foopterms a:hover { color: var(--primary); }

.foo-company a {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin-bottom: 10px;
}

.foo-company [class^="icon-"] { font-size: 19px; line-height: 29px; color: var(--primary); }

.foo-address span { width: 314px; max-width: 100%; }

.foo-address i { line-height: 1.6em; }

.wa__btn_popup { z-index: 10; }

.foo-copy { background-color: #2b2a2a; }

/*
** Services Main Page
*/
.jumbotron-box {
    position: relative;
    padding: 40px;
    border-radius: var(--siteradius12);
    background-color: var(--black);
    background-position: right top 26.5%;
    background-size: cover;
    background-repeat: no-repeat;
    overflow: hidden;
}

.jumbotron-box::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-image: linear-gradient(87deg, black 40%, transparent);
}

.jumbotron-wrap {
    position: relative;
}

.jumbotron.text--white h2,
.jumbotron.text--white h3 {
    color: var(--white);
}

.ltrt ::marker { color: var(--primary); }
.ltrt { font-size: 16px; line-height: 26px; }
.ltrt-img { display: block; margin: 0 auto; border-radius: var(--siteradius8); overflow: hidden; }

/*Point List*/
.pointers .section-head h2 strong { color: var(--primary); }

.poilist {
    display: grid;
    grid-template-columns: 1fr 1fr;
    column-gap: 32px;
}

.poitem {
    display: flex;
    align-items: center;
    gap: 30px;
}

.poitem-num {
    font-size: 100px;
    line-height: 1;
    color: var(--primary);
    padding-bottom: 45px;
}

.poitem-txt {
    padding-bottom: 30px;
    margin-bottom: 30px;
    border-bottom: 1px solid black;
}

.whywitem {
    display: flex;
    align-items: center;
    gap: 30px;
}

.whywitem:not(:last-child) {
    padding-bottom: 16px;
    margin-bottom: 16px;
    border-bottom: 1px solid #d7d7d7;
}

.whywicon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 130px;
    min-width: 130px;
    text-align: center;
}

.whywtitle {
    width: 270px;
    min-width: 270px;
    /* color: var(--white); */
}

.fullsec-cont img {
    vertical-align: top;
    border-radius: var(--siteradius12);
    margin-bottom: 20px;
    overflow: hidden;
}

.fullsec .section-head h2 strong { color: var(--primary); }

.threebs .row { row-gap: 30px;  }

.threeb-box {
    padding: 30px;
    background-color: var(--white);
    height: 100%;
}

/*
** About Us
*/
.hero-scroll {
    color: var(--white);
}

.abtstory p strong,
.abtstory p b,
.abtstory p span {
    display: inline;
}

.abtstory img {
    border-radius: var(--siteradius8);
}

.vismis { overflow: hidden; }

.vismis, .vismis .container { position: relative; }

.vismis::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 50%;
    height: 100%;
    background-color: var(--tertiary);
}

.vismis-box {
    height: 100%;
    padding: 60px 0px;
}

.vismis-box img {
    width: 160px;
    margin-bottom: 30px;
}

.ourvis-box,
.ourvis-box h2 {
    color: var(--white);
}

.vismis-box p {
    font-size: 20px;
    line-height: 1.60em;
}

.teaml {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}

.teami {
    position: relative;
    padding: 20px;
    border-radius: var(--siteradius12);
    background-color: var(--lightgreen);
    overflow: hidden;
}

.teami-img {
    position: relative;
    aspect-ratio: 1/1;
    border-radius: var(--siteradius12);
    background-color: var(--primary);
    background-color: transparent;
    overflow: hidden;
}

.teami-img::before {
    content: "";
    position: absolute;
    left: -30px;
    top: 30px;
    width: 421px;
    height: 421px;
    background: linear-gradient(247.71deg, #859F2B -0.44%, #A9C83E 78.89%);
    border-radius: 406px;
    z-index: 0;
}

.teami img {
    position: relative;
    padding: 27px 0px 0px;
    padding: 0px 0px 0px;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: top center;
    border-radius: var(--siteradius12);
}

.teamcont {
    padding: 15px 5px 0px;
    transition: 0.3s ease-in-out;
    z-index: 2;
}

.teami:hover .teamcont { opacity: 1; }

.teamcont h3 {
    font-size: 26px;
    margin: -3px 0 0;
}

.teamcont p {
    font-size: 16px;
    line-height: 24px;
    margin-bottom: 6px;
}

.oofice-gal {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-template-rows: repeat(2, 1fr);
    gap: 20px;
}

.oofice-gali {
    position: relative;
    aspect-ratio: 1 / 1;
    width: 100%;
    overflow: hidden;
}

.large-item {
    grid-column: span 2;
    grid-row: span 2;
}
  
.oofice-gali img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: var(--siteradius12);
}


/*Site CTA*/
.sitecta {
    background-image: url(../images/sitecta-rocket.svg), url(../images/sitecta-bg.svg);
    background-position: right 40px bottom 0px, right bottom -20px;
    background-repeat: no-repeat, repeat-x;

    animation: rocket 1s cubic-bezier(0.65, 0.05, 0.36, 1) infinite alternate;
}

@keyframes rocket {
    0% {
        background-position: right 40px bottom -10px, right bottom -20px;
    }
    100% {
        background-position: right 40px bottom 10px, right bottom -20px;
    }
}


/*WBL Page*/
.whyus .section-head {
    position: sticky;
    top: 130px;
    padding-bottom: 180px;
}

.whyuslist {
    display: grid;
    grid-template-columns: 1fr;
    grid-gap: 30px;
}

.whyusitem {
    position: sticky;
    top: 130px;
}

.whyusitem-card {
    display: flex;
    align-items: flex-start;
    flex-direction: column;
    column-gap: 20px;
    padding: 50px 30px;
    background-color: var(--lightgreen);
    /*
    background-color: var(--white);
    box-shadow: 0px 10px 40px -10px rgba(65, 62, 101, 0.27);
    */
}

.bg--lightgreen .whyusitem-card {
    background-color: var(--white);
}


.boxlist {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 20px;
}

.boxlist-3 {
    grid-template-columns: repeat(3, 1fr);
}

.boxlist-4 {
    grid-template-columns: repeat(4, 1fr);
}

.boxcard {
    min-height: 260px;
    padding: 30px 20px;
    border-radius: var(--siteradius8);
    border-bottom: 3px solid var(--primary);
    background-color: var(--white);
    box-shadow: 0px 1.4px 7.4px 0px rgba(0, 0, 0, 0.10);
}

.bg--primary .boxcard,
.bg--tertiary .boxcard {
    color: var(--body);
    border-bottom-color: var(--secondary-a);
}

.boxcard h3 {
    font-size: 22px;
    line-height: 32px;
    margin-bottom: 10px;
}

.boxcard h3 a {
    color: var(--secondary);
}

.boxcard p {
    font-size: 16px;
    line-height: 24px;
}

.boxcard-icon {
    width: 55px;
    height: 55px;
    object-fit: contain;
    object-position: center center;
}

.lrsec h3 { font-size: 24px; line-height: 30px; }

.lrsec img { border-radius: var(--siteradius12); overflow: hidden; }

/*Contact Us*/
section.contactus {
    padding-top: 160px;
}

.cus-form form {
    padding: 30px;
    border-radius: var(--siteradius);
    background: var(--white);
}

.contact-profile {
    --personsize: 160px;
    display: inline-block;
    margin-bottom: 20px;
    /*
    padding: 10px 30px;
    color: var(--white);
    border: 3px solid var(--primary-a);
    border-radius: 10px;
    background: var(--primary);
    */
}

.contactus img {
    width: var(--personsize);
    height: var(--personsize);
    object-fit: cover;
    object-position: center center;
    border-radius: 100%;
    overflow: hidden;
}

.cus-form .form-field {
    --fieldsize: 50px;
    --fieldpadds: 0 16px;
    font-size: 16px;
    border-color: var(--gray);
}

.cus-form .row {
    row-gap: 20px;
}

.google-map iframe {
    width: 100%;
    max-width: 100%;
    vertical-align: top;
}

.contcard {
    min-height: 100%;
    padding: 25px;
    border-radius: var(--siteradius);
    background: var(--lightgray);
}

.contcard h4 { 
    border-bottom: 1px solid var(--formfieldborder);
    padding-bottom: 10px;
}

.contcard h4 a {
    color: var(--secondary);
}

.contcard a {
    color: var(--body);
}

.grecaptcha-badge {
    width: 256px;
    height: 60px;
    display: block;
    transition: right 0.3s;
    position: fixed;
    bottom: 14px;
    right: -186px;
    box-shadow: gray 0px 0px 5px;
    border-radius: 2px;
    overflow: hidden;
}


/*
** Case Studies
*/
.casestabs {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 25px;
}

.casestablink {
    font-size: 20px;
    padding: 5px 15px;
    background-color: transparent;
    border-radius: var(--siteradius);
    color: var(--secondary);
}

.casestablink:hover {
    color: var(--secondary-a);
    background: var(--lightblue);
}

.casestablink.active {
    color: var(--white);
    background: var(--primary);
}

.casestablink.active:hover {
    color: var(--white);
    background: var(--primary-a);
}

.caseslist {
    display: grid;
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    /* gap: 40px 20px; */
    /* grid-template-columns: repeat(2, 1fr); */
}

.casesitem {
    position: relative;
    display: flex;
    flex-direction: column;
    flex: 1 0 calc(33.33% - 20px);
    max-width: calc(33.33% - 20px);
    margin: 10px;
}

.casesimg {
    position: relative;
    display: block;
    max-width: 100%;
    border-radius: 5px;
    /* box-shadow: rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(33, 33, 38, 0.2) 0px 2px 10px 0px; */
    overflow: hidden;
    transition: 0.3s ease-in-out;
}

.casesitem:hover .casesimg {
    box-shadow: rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0.2) 0px 0px 0px 0px, rgba(33, 33, 38, 0.2) 0px 2px 10px 0px;
}

.casesimg::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
}

.casesimg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center center;
}

.casesinfo {
    display: flex;
    flex-direction: column;
    width: 100%;
    padding: 20px 0;
    flex: 1 0 auto;
    /* background-color: var(--secondary);
    background-image: url('../images/case-study-card-bg.webp');
    background-size: cover;
    background-repeat: no-repeat;
    background-position: left 250px top 70%; */
    z-index: 1;
}

.casesinfo h3 {
    font-size: 22px;
    line-height: 34px;
}

.casesinfo h3 a {
    color: var(--secondary);
    transition: 0.3s ease-in-out;
}

.casesinfo h3 a:hover {
    color: var(--secondary-a);
}

.casestags {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 5px;
    font-size: 12px;
    line-height: 28px;
    margin-top: 10px;
}

.casestags span {
    padding: 0 15px;
    border-radius: 100px;
    color: var(--secondary);
    background: var(--lightgray);
    transition: 0.3s ease-in-out;
}

.casestags span a { color: var(--secondary); }

.casestags span:hover {
    color: var(--white);
    background: var(--secondary-a);
}

.casestags span:hover a { color: var(--white); }