.itemShadow {
    backface-visibility: hidden;
    position: relative;
    transition-duration: 0.3s;
    transition-property: transform;
    box-shadow: 3px 5px 20px #000;
}

.itemShadow:hover {
    transform: translateY(-5px);
    box-shadow: 0px 14px 20px #2dbfbf;
}

.itemShadow::before {
    background: radial-gradient(ellipse at center, rgba(0,0,0,0.6) 0%, rgba(0, 0, 0, 0) 80%);
    pointer-events: none;
    position: absolute;
    top: 100%;
    opacity: 0;
    left: 5%;
    content: '';
    height: 10px;
    width: 90%;
    transition-duration: 0.4s;
    transition-property: transform, opacity;
}

.itemShadow:hover::before {
    opacity: 0.6;
    transform: translateY(5px);
}

.itemShadowImageWrapper {
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

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

.innerItemShadow {
    z-index: 1;
    background: transparent;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    color: #fff;
    width: 100%;
    height: 100%;
}

.innerItemShadow::before {
    left: 5px;
    background: #fff;
    position: absolute;
    content: '';
    z-index: 4;
    width: 4px;
    top: 5px;
    bottom: 5px;
    transition: all 0.4s ease;
    transform: scaleY(0);
}

.innerItemShadow::after {
    right: 5px;
    background: #fff;
    position: absolute;
    content: '';
    z-index: 4;
    width: 4px;
    top: 5px;
    bottom: 5px;
    transition: all 0.4s ease;
    transform: scaleY(0);
}

.innerItemShadow:hover::before {
    transform: scale(1);
    transition: all 0.4s ease;
    background-color: #2dbfbf;
}

.innerItemShadow:hover::after {
    transform: scale(1);
    transition: all 0.4s ease;
    background-color: #2dbfbf;
}

.outerItemShadow {
    z-index: 1;
    background: transparent;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    color: #fff;
    width: 100%;
    height: 100%;
}

.outerItemShadow::before {
    top: 5px;
    background: #fff;
    position: absolute;
    content: '';
    z-index: 4;
    height: 4px;
    left: 5px;
    right: 5px;
    transition: all 0.4s ease;
    transform: scaleX(0);
}

.outerItemShadow::after {
    bottom: 5px;
    background: #fff;
    position: absolute;
    content: '';
    z-index: 4;
    height: 4px;
    left: 5px;
    right: 5px;
    transition: all 0.4s ease;
    transform: scaleX(0);
}

.outerItemShadow:hover::before {
    transform: scale(1);
    transition: all 0.4s ease;
    background-color: #2dbfbf;
}

.outerItemShadow:hover::after {
    transform: scale(1);
    transition: all 0.4s ease;
    background-color: #2dbfbf;
}

.animateSlideInLeft {
    margin-bottom: 0;
    -webkit-animation-name: slideInLeft;
    animation-name: slideInLeft;
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
}

@keyframes slideInLeft {
    0% {
        -webkit-transform: translateX(-200%);
        transform: translateX(-200%);
        visibility: visible;
    }
    100% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
}

.ourJourneyAccordionRow {
    display: none;
}

.ourJourneySectionHeader {
    margin-bottom: 25px;
    padding-left: 65px;
    padding-top: 18px;
}

.ourJourneySectionTitleLine {
    margin-top: 10px;
    margin-bottom: 10px;
    border-bottom-style: solid;
    border-bottom-width: 2px;
    width: 100px;
    border-bottom-color: #2dbfbf;
    position: absolute;
    bottom: 0;
    right: 100%;
    margin-right: 10px;
}

.ourJourneySectionTitle {
    text-transform: uppercase;
    color: #2b2b2b;
    font-style: normal;
    font-weight: 700;
    font-size: 50px;
    line-height: 50px;
    margin-bottom: 0;
}

.ourJourneySectionSubtitle {
    color: #2dbfbf;
    font-size: 20px;
    line-height: 25px;
    letter-spacing: 0px;
}

.ourJourneyLink {
    font-size: 20px;
    font-weight: 400;
    font-style: normal;
    line-height: 20px;
    color: #242424;
    position: relative;
    padding: 12px 20px 12px 50px;
    margin: 0 18px 18px 18px;
    cursor: pointer;
}

.ourJourneyLink.active {
    background: rgb(45,191,191);
    color: #ffffff;
    border-color: transparent !important;
}

.ourJourneyLink.active::before {
    height: 1px;
    border-color: #ffffff !important;
    content: '';
    display: block !important;
    position: absolute;
    box-sizing: border-box;
    left: 19px !important;
    right: 0 !important;
    top: 50%;
    transform: translateY(-50%);
    border: 1px solid;
    width: 10px !important;
}

.ourJourneyLink.active::after {
    opacity: 0;
}

.ourJourneyAccordionLink:not(.collapsed) {
    background: rgb(45,191,191);
    color: #ffffff;
    border-color: transparent !important;
}

.ourJourneyAccordionLink:not(.collapsed)::before {
    height: 1px;
    border-color: #ffffff !important;
    content: '';
    display: block !important;
    position: absolute;
    box-sizing: border-box;
    left: 19px !important;
    right: 0 !important;
    top: 50%;
    transform: translateY(-50%);
    border: 1px solid;
    width: 10px !important;
}

.ourJourneyAccordionLink:not(.collapsed)::after {
    opacity: 0;
}

.ourJourneyLink:hover {
    box-shadow: 0 3px 15px -3px rgb(0 0 0 / 25%);
    color: #242424;
}

.ourJourneyLink::before {
    content: '';
    display: block;
    position: absolute;
    box-sizing: border-box;
    left: 19px !important;
    right: 0 !important;
    top: 50%;
    transform: translateY(-50%);
    border: 1px solid;
    height: 1px;
    width: 10px !important;
    border-color: rgb(45,191,191) !important;
}

.ourJourneyLink::after {
    border-color: rgb(45,191,191) !important;
    content: '';
    display: block;
    position: absolute;
    box-sizing: border-box;
    left: 23px !important;
    bottom: 0;
    top: 50% !important;
    height: 10px;
    width: 1px !important;
    margin-top: 0px;
    border: 1px solid;
    transform: translateY(-50%);
}

.ourJourneyYear {
    font-style: normal;
    font-weight: 600;
    font-size: 60px;
    line-height: 65px;
    text-transform: none;
    letter-spacing: 0px;
    color: #2dbfbf;
}

.ourJourneyTitle {
    font-style: normal;
    font-weight: 700;
    font-size: 35px;
    line-height: 53.9px;
    text-transform: none;
    letter-spacing: 0px;
    color: #28262b;
    margin-bottom: 0;
}

.ourJourneyDescription {
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    line-height: 20px;
    text-transform: none;
    letter-spacing: 0px;
    color: #565656;
}

.ourJourneyDescription > p {
    margin-bottom: 0;
}

.ourJourneyTab {
    padding-top: 50px;
    padding-bottom: 90px;
    border-bottom: 1px dotted #e0e0e0;
}

.teamMembersSectionHeader {
    margin-bottom: 25px;
    padding-left: 65px;
    padding-top: 18px;
}

.teamMembersSectionTitleLine {
    margin-top: 10px;
    margin-bottom: 10px;
    border-bottom-style: solid;
    border-bottom-width: 2px;
    width: 100px;
    border-bottom-color: #2dbfbf;
    position: absolute;
    bottom: 0;
    right: 100%;
    margin-right: 10px;
}

.teamMembersSectionTitle {
    text-transform: uppercase;
    color: #2b2b2b;
    font-style: normal;
    font-weight: 700;
    font-size: 50px;
    line-height: 50px;
    margin-bottom: 0;
}

.teamMembersSectionSubtitle {
    color: #2dbfbf;
    font-size: 20px;
    line-height: 25px;
    letter-spacing: 0px;
}

.itemService {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    color: #fff;
    font-size: 1.25em;
    text-align: left;
    text-transform: uppercase;
}

.itemServiceTitle {
    font-size: 40px;
    line-height: 40px;
    letter-spacing: 1px;
    font-weight: 600;
}

.itemServiceSubtitle {
    font-size: 20px;
    line-height: 20px;
    letter-spacing: 1px;
    font-weight: 400;
}

.outerItemService::after {
    border: 7px solid #2dbfbf;
    position: absolute;
    right: 30px;
    bottom: 30px;
    left: 30px;
    height: calc(50% - 30px);
    content: '';
    transition: transform 0.35s;
    transform: translate3d(0,-100%,0);
}

.outerItemService {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    padding: 3em;
}

.outerItemService:hover {
    background: rgba(0,0,0,0.7);
}

.outerItemService:hover::after {
    transform: translate3d(0,0,0);
}

.innerItemService {
    position: relative;
    width: 100%;
    height: 100%;
}

.findOutMore {
    font-size: 15px;
    line-height: 15px;
    position: absolute;
    right: 60px;
    bottom: 60px;
    left: 10px;
    transition: opacity 0.35s, transform 0.35s;
    transform: translate3d(0,-100px,0);
    margin: 0;
    opacity: 0;
}

.outerItemService:hover .findOutMore {
    opacity: 1;
    transform: translate3d(0,50px,0);
}

.linkWrap {
    font-size: 20px;
    line-height: 25px;
    letter-spacing: 1px;
    color: #2dbfbf;
    font-weight: 400;
    padding: 5px 70px 5px 0 !important;
}

.linkWrap::before {
    background: #090909;
    content: "";
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    margin: auto 0;
    width: 20px;
    height: 20px;
}

.linkWrap:hover {
    color: #090909 !important;
    text-decoration: blink;
}

.linkWrap:hover::before {
    background: #2dbfbf;
    transform: rotate(90deg);
    transition: all .2s ease .2s;
}

.arrow {
    stroke: #2dbfbf;
    fill: #2dbfbf;
    position: absolute;
    right: 6px;
    top: 0;
    bottom: 0;
    margin: auto 0;
    width: 48px;
    height: 9px;
}

.arrow1 {
    stroke: #090909;
    fill: #090909;
    opacity: 0;
    transform: translateX(-10px);
    position: absolute;
    right: 6px;
    top: 0;
    bottom: 0;
    margin: auto 0;
    width: 48px;
    height: 9px;
}

.linkWrap:hover .arrow {
    opacity: 0;
    transform: translateX(10px);
    transition: all .2s ease 0s;
}

.linkWrap:hover .arrow1 {
    opacity: 1;
    transform: translateX(0);
    transition: all .2s ease .4s;
}

.outerWrap {
    position: relative;
    width: auto;
    height: 100%;
    display: inline-block;
    transition-duration: 0.3s;
    transition-property: transform;
}

.outerWrap:hover {
    transform: scale(1.1);
}

.cardShortDescription {
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    line-height: 20px;
    text-transform: none;
    letter-spacing: 0px;
    margin: 0;
}

.blogImageText {
    position: absolute;
    left: 0;
    bottom: 0;
    display: block;
    width: 100%;
    padding: 10px 20px;
}

.blogImageTitle {
    color: #ffffff;
    position: relative;
    font-style: normal;
    font-weight: 700;
    font-size: 20px;
    line-height: 28.8px;
    text-transform: none;
    letter-spacing: 0px;
}

.blogImageLink {
    position: relative;
    display: inline-block;
    background-image: linear-gradient(to right, rgba(255,255,255,0) 50%, rgba(255,255,255,0.15) 50%);
    background-size: 200.22% auto;
    transition: background-position 0.5s ease-out, color .3s ease-in-out;
}

.blogImageLink > p {
    display: inline;
}

.blogImageLink:hover {
    background-position: -99.99% 0;
}

.blogPostDate {
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    line-height: 20.8px;
    text-transform: none;
    letter-spacing: 0px;
    color: #bcbcbc;
    margin: 25px 0;
}

.relatedPostTitle {
    font-style: normal;
    font-weight: 700;
    font-size: 16px;
    line-height: 28.8px;
    text-transform: none;
    letter-spacing: 0px;
    color: #28262b;
    position: relative;
    background-image: linear-gradient(to right, rgba(255, 255, 255, 0) 50%, #f4f4f4 50%);
    background-size: 200.22% auto;
    background-position: 0% 0;
    transition: background-position 0.5s ease-out, color .3s ease-in-out;
    text-decoration: none;
}

.relatedPostTitle:hover {
    background-position: -99.99% 0;
    color: #28262b;
}

.relatedPostTitle > p {
    margin-bottom: 5px;
    display: inline;
}

.relatedPostDate {
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    line-height: 20.8px;
    text-transform: none;
    letter-spacing: 0px;
    color: #bcbcbc;
}

.videoContainer {
    width: auto;
    margin-top: 50px;
    padding: 0;
    border: 10px solid #ededed !important;
    height: 493px;
    max-height: 493px;
}

.mainWrap {
    position: relative;
    left: 0;
    overflow: hidden;
    transition: left .3s ease-in-out;
}

.changeWrap {
    background-repeat: repeat !important;
    position: relative;
    z-index: 1;
}

.headerContainer {
    position: relative;
    overflow: hidden;
    background-color: #f4f4f4;
    height: 400px;
}

.contentContainer {
    position: relative;
    padding: 70px 0 0 0;
}

.headerBgContainer {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    border-bottom: 1px solid rgba(27,27,27,0.1);
    z-index: 0;
}

.outerHeader {
    width: 1200px;
    max-width: 100%;
    margin: 0 auto;
    position: relative;
    height: 100%;
    display: flex;
    align-items: center;
}

.outerHeader::before {
    content: " ";
    display: table;
}

.outerHeader::after {
    content: " ";
    display: table;
    clear: both;
}

.fullWidth, .outerHeader .fullWidth {
    width: 100%;
}

.innerHeader {
    float: left;
    min-height: 1px;
    padding: 0 10px;
    position: relative;
}

.pageTitleOuter {
    position: relative;
    padding: 0 0;
    z-index: 0;
    text-align: left;
    min-height: 400px;
    height: 400px;
    transform: translate3d(0px, 0px, 0px);
    opacity: 1;
}

.pageTitleInner {
    position: relative;
    top: 50%;
    width: 100%;
    transform: translateY(-50%);
}

.pageTitle {
    color: #ffffff;
    font-style: normal;
    font-weight: 700;
    font-size: 50px;
    line-height: 60px;
    text-transform: none;
    letter-spacing: 0px;
    word-spacing: 0;
    text-align: inherit;
    padding-bottom: 10px;
    text-transform: uppercase;
    margin: 0;
}

.pageTitle p {
    margin: 0;
}

.pageSubtitle {
    color: rgba(255,255,255,0.5) !important;
    font-size: 18px;
    font-style: normal;
    line-height: 1.2;
    text-align: inherit;
    padding-bottom: 10px;
    font-weight: 400;
}

.breadcrumbs {
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    display: block;
    width: 100%;
    height: 2.9em;
    line-height: 2.9em;
    position: absolute;
    bottom: 0;
    text-align: inherit;
    margin-bottom: -1px;
}

.breadcrumbs > nav {
    position: relative;
    z-index: 1;
    display: inline-block;
    height: inherit;
    line-height: inherit;
    padding: 0 25px;
    margin: 0;
    color: #bcbcbc;
    background: #ffffff;
    border-top: 1px solid rgba(27,27,27,0.1);
    border-left: 1px solid rgba(27,27,27,0.1);
    border-right: 1px solid rgba(27,27,27,0.1);
    border-top-left-radius: 2px;
    border-top-right-radius: 2px;
}

.breadcrumb-item p {
    display: inline;
}

.breadcrumbLink {
    color: #28262b;
    text-decoration: none;
    line-height: inherit;
}

.breadcrumbLink:hover {
    color: #28262b;
    text-decoration: none;
    line-height: inherit;
}

.navigationContainer {
    position: fixed;
    border-bottom-width: 0;
    background: transparent;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 999;
    transition: left .3s ease-in-out;
}

.navigationContainer.smallNavigation {
    height: 58px;
}

#navigation {
    transition: transform .3s ease;
    position: relative;
    left: 0;
    overflow: visible;
    width: 100%;
    transform: translateY(0);
    z-index: 2;
}

#navigation.smallNavigation {
    transform: translateY(-57px);
    background: rgba(45,191,191,0.92);
    transition: -webkit-transform .3s ease,transform .3s ease,background .3s ease;
}

.navigationTopPanel {
    padding: 0;
    background: rgba(255,255,255,0);
    color: #ffffff;
    border-bottom: 1px solid rgba(255,255,255,0.1);
    height: 100%;
}

.navigationTopPanelRow {
    width: 100%;
    padding: 0 20px;
    color: inherit;
    max-width: 100%;
    margin: 0 auto;
    position: relative;
}

.navigationTopPanelRow:before {
    content: " ";
    display: table;
}

.navigationTopPanelRow:after {
    clear: both;
    content: " ";
    display: table;
}

.navigationInfoPanel {
    position: relative;
    line-height: 44px;
    color: inherit;
    width: 100%;
    float: left;
    min-height: 1px;
    padding: 0 10px;
}

.navigationSocialIconsContainer {
    float: right;
    height: 44px;
    margin-bottom: 0;
    transform: translate3d(0, 0, 0);
    font-size: 13px;
    position: relative;
    display: flex;
}

.socialIconLink {
    position: relative;
    text-align: center;
    width: 44px;
    height: 44px;
    line-height: 44px;
    color: #ffffff;
    border-radius: 0;
    display: inline-block;
}

.socialIconLink .fa-facebook-f:not(.facebookHover) {
    position: relative;
    display: inline-block;
    text-align: center;
    width: 44px;
    height: 44px;
    line-height: 44px;
    color: #ffffff;
    border-radius: 0;
}

.socialIconLink .facebookHover {
    top: -100%;
    left: 0;
    transition: top .15s ease-in-out .15s, text-shadow .15s ease 0s;
    width: 100%;
    height: 100%;
    line-height: inherit;
    background-color: #305fb3;
    position: absolute;
    color: #ffffff;
    text-align: center;
    overflow: hidden;
}

.socialIconLink:hover .facebookHover {
    text-shadow: #254a8c 1px 1px, #254a8c 2px 2px, #254a8c 3px 3px, #254a8c 4px 4px, #254a8c 5px 5px, #254a8c 6px 6px, #254a8c 7px 7px, #254a8c 8px 8px, #254b8d 9px 9px, #264c8f 10px 10px, #264d91 11px 11px, #274e93 12px 12px, #274f95 13px 13px, #285097 14px 14px, #285199 15px 15px, #29529b 16px 16px, #29539d 17px 17px, #2a549f 18px 18px, #2b55a1 19px 19px, #2b56a3 20px 20px, #2c57a5 21px 21px, #2c58a7 22px 22px, #2d59a9 23px 23px, #2d5aab 24px 24px, #2e5bad 25px 25px, #2e5caf 26px 26px, #2f5db1 27px 27px, #305fb3 28px 28px;
}

.socialIconLink .fa-instagram:not(.instagramHover) {
    position: relative;
    display: inline-block;
    text-align: center;
    width: 44px;
    height: 44px;
    line-height: 44px;
    color: #ffffff;
    border-radius: 0;
}

.socialIconLink .instagramHover {
    top: -100%;
    left: 0;
    transition: top .15s ease-in-out .15s, text-shadow .15s ease 0s;
    width: 100%;
    height: 100%;
    line-height: inherit;
    background-color: #9f6f59;
    position: absolute;
    color: #ffffff;
    text-align: center;
    overflow: hidden;
}

.socialIconLink:hover .instagramHover {
    text-shadow: #7c5745 1px 1px, #7c5745 2px 2px, #7c5745 3px 3px, #7c5745 4px 4px, #7c5745 5px 5px, #7c5745 6px 6px, #7c5745 7px 7px, #7c5745 8px 8px, #7d5846 9px 9px, #7f5947 10px 10px, #815a48 11px 11px, #835b49 12px 12px, #845d4a 13px 13px, #865e4b 14px 14px, #885f4c 15px 15px, #8a604d 16px 16px, #8b614e 17px 17px, #8d634f 18px 18px, #8f6450 19px 19px, #916551 20px 20px, #926652 21px 21px, #946753 22px 22px, #966954 23px 23px, #986a55 24px 24px, #996b56 25px 25px, #9b6c57 26px 26px, #9d6d58 27px 27px, #9f6f59 28px 28px;
}

.socialIconLink .fa-linkedin-in:not(.linkedinHover) {
    position: relative;
    display: inline-block;
    text-align: center;
    width: 44px;
    height: 44px;
    line-height: 44px;
    color: #ffffff;
    border-radius: 0;
}

.socialIconLink .linkedinHover {
    top: -100%;
    left: 0;
    transition: top .15s ease-in-out .15s, text-shadow .15s ease 0s;
    width: 100%;
    height: 100%;
    line-height: inherit;
    background-color: #3399cc;
    position: absolute;
    color: #ffffff;
    text-align: center;
    overflow: hidden;
}

.socialIconLink:hover .linkedinHover {
    text-shadow: #28779f 1px 1px, #28779f 2px 2px, #28779f 3px 3px, #28779f 4px 4px, #28779f 5px 5px, #28779f 6px 6px, #28779f 7px 7px, #28779f 8px 8px, #2878a1 9px 9px, #297aa3 10px 10px, #297ca5 11px 11px, #2a7da8 12px 12px, #2a7faa 13px 13px, #2b81ac 14px 14px, #2b82ae 15px 15px, #2c84b1 16px 16px, #2c86b3 17px 17px, #2d88b5 18px 18px, #2e89b7 19px 19px, #2e8bba 20px 20px, #2f8dbc 21px 21px, #2f8ebe 22px 22px, #3090c0 23px 23px, #3092c3 24px 24px, #3193c5 25px 25px, #3195c7 26px 26px, #3297c9 27px 27px, #39c 28px 28px;
}

.socialIconLink .fa-x-twitter:not(.twitterHover) {
    position: relative;
    display: inline-block;
    text-align: center;
    width: 44px;
    height: 44px;
    line-height: 44px;
    color: #ffffff;
    border-radius: 0;
}

.socialIconLink .twitterHover {
    top: -100%;
    left: 0;
    transition: top .15s ease-in-out .15s, text-shadow .15s ease 0s;
    width: 100%;
    height: 100%;
    line-height: inherit;
    background-color: #5eaade;
    position: absolute;
    color: #ffffff;
    text-align: center;
    overflow: hidden;
}

.socialIconLink:hover .twitterHover {
    text-shadow: #4985ad 1px 1px, #4985ad 2px 2px, #4985ad 3px 3px, #4985ad 4px 4px, #4985ad 5px 5px, #4985ad 6px 6px, #4985ad 7px 7px, #4985ad 8px 8px, #4a86af 9px 9px, #4b88b1 10px 10px, #4c8ab4 11px 11px, #4d8cb6 12px 12px, #4e8eb9 13px 13px, #4f90bb 14px 14px, #5091be 15px 15px, #5193c0 16px 16px, #5295c3 17px 17px, #5397c5 18px 18px, #5499c7 19px 19px, #559bca 20px 20px, #569dcc 21px 21px, #579ecf 22px 22px, #58a0d1 23px 23px, #59a2d4 24px 24px, #5aa4d6 25px 25px, #5ba6d9 26px 26px, #5ca8db 27px 27px, #5eaade 28px 28px;
}

.socialIconLink:hover i {
    transition: top .15s ease-in-out 0s, text-shadow .15s ease .15s;
    top: 0;
}

.socialIconLink:hover {
    color: #ffffff;
}

.navigationWrap {
    background: rgba(255,255,255,0);
    padding: 0;
    position: relative;
    z-index: 999;
    width: 100%;
    height: 100%;
}

.navigationMainPanelRow {
    margin-top: 0;
    width: 100%;
    padding: 20px;
    max-width: 100%;
    margin: 0 auto;
    position: relative;
    height: 100%;
}

.navigationMainPanelRow.smallNavigation {
    background: transparent;
    padding: 0 20px;
}

.navigationMainPanelRow:before {
    content: " ";
    display: table;
}

.navigationMainPanel {
    padding: 0 10px;
    position: relative;
    width: 100%;
    float: left;
    min-height: 1px;
}

.navigationMainPanel.smallNavigation {
    height: 58px;
}

.navigationLogoContainer {
    float: left;
    position: relative;
    height: inherit;
    width: 220px;
}

.navigationLogo {
    position: relative;
    height: inherit;
    visibility: visible;
}

.navigationLogo.smallNavigation {
    display: none;
}

.inlineBlock {
    width: 100%;
    height: 100%;
    display: inline-block;
}

.imgLogo {
    height: 92px;
    position: absolute;
    top: 50%;
    transform: translateY(-39%);
    max-width: 100%;
    vertical-align: top;
    border: none;
}

.navigationMobileMenuContainer {
    display: none;
    float: none;
    margin-left: auto;
    margin-right: 0;
    line-height: 92px;
    text-align: right;
    padding: 20px 0;
    margin: 0;
    visibility: hidden;
}

.navigationMobileMenuIconsWrapper {
    display: inline-block;
}

.navigationMobileMenuWrapper {
    float: left;
    position: relative;
    top: 50%;
    margin-left: 15px;
    display: block;
}

.iconMobileMenu {
    position: relative;
    display: inline-block;
    background: transparent;
    text-indent: -900em;
    z-index: 2;
    top: 50%;
    transform: translateY(-50%);
    text-decoration: none;
    line-height: inherit;
    color: #242424;
}

#navigation.smallNavigation .iconMobileMenu {
    transform: translateY(10%);
}

.middleMenuLine {
    background: #fff;
    display: block;
    width: 20px;
    height: 2px;
    position: absolute;
    top: 50%;
    left: 0;
}

#navigation.smallNavigation .middleMenuLine {
    background: #28262b;
    height: 1px;
}

.topMenuLine {
    background: #fff;
    width: 25px;
    margin-top: -5px;
    display: block;
    height: 2px;
    position: absolute;
    top: 50%;
    left: 0;
}

#navigation.smallNavigation .topMenuLine {
    background: #28262b;
}

.bottomMenuLine {
    background: #fff;
    width: 31px;
    margin-top: 5px;
    display: block;
    height: 2px;
    position: absolute;
    top: 50%;
    left: 0;
}

#navigation.smallNavigation .bottomMenuLine {
    background: #28262b;
    height: 1px;
}

#mobileDrawer {
    background: #2d2d2d;
    color: rgba(255,255,255,0.5);
    height: 100%;
    width: 260px;
    overflow-x: hidden;
    overflow-y: auto;
    padding-bottom: 0;
}

.mobileDrawerTop {
    position: relative;
    overflow: hidden;
    padding: 20px 50px 20px 20px;
}

.mobileDrawerLogoPanel {
    float: left;
    margin: 0;
    padding: 0;
}

.mobileDrawerLogoPanel img {
    max-width: 100%;
}

.mobileDrawerInner {
    padding: 0 0 15px;
}

.mobileDrawerDropdownMenu {
    border-top: 1px dotted rgba(255,255,255,0.1);
    border-bottom: 1px dotted rgba(255,255,255,0.1);
    margin-bottom: 0;
    display: block;
    margin: 0 0 15px;
    padding: 0;
    list-style-position: inside;
}

.mobileDrawerDropdownMenuItem {
    display: block;
    margin: 0;
    line-height: 48px;
    border-top: 1px dotted rgba(255,255,255,0.1);
    -webkit-transition: background .3s ease, border-top .3s ease;
    -moz-transition: background .3s ease, border-top .3s ease;
    transition: background .3s ease, border-top .3s ease;
}

.mobileDrawerDropdownMenuItemLink {
    font-size: 15px;
    font-weight: normal;
    color: rgba(255,255,255,0.5);
    position: relative;
    display: block;
    padding: 0 25px;
    text-decoration: none;
    transition: color .3s ease, background .3s ease;
    line-height: inherit;
    text-transform: uppercase;
}

.mobileDrawerDropdownMenuItemLink:hover {
    color: rgba(255,255,255,0.5);
    text-transform: uppercase;
}

.offcanvas-backdrop.show {
    opacity: 0 !important;
}

.navigationLinksContainer {
    display: block;
    padding: 0 10px;
    text-align: left;
    height: inherit;
    margin-right: 150px;
    margin-left: 220px;
}

.fixedNavigationLogo {
    visibility: hidden;
    position: absolute;
    top: 0;
    left: 10px;
    width: 120px;
    height: 37.7px;
    line-height: 37.7px;
    margin: 10.15px 0;
}

.fixedNavigationLogo.smallNavigation {
    visibility: visible;
    transition: visibility .3s ease;
}

.fixedNavigationLogo:before {
    content: "";
    display: block;
    position: absolute;
    left: -30px;
    right: -30px;
    top: -10.15px;
    bottom: -10.15px;
    background: transparent;
}

.navigationMenu {
    position: relative;
    z-index: 999;
    display: block;
    width: 100%;
    min-width: 100%;
    height: 100%;
    margin: 0 auto;
    color: inherit;
    text-align: right;
}

.navigationMenu:before {
    content: " ";
    display: table;
}

.navMenu {
    padding: 0;
    text-align: left;
    height: 100%;
    position: relative;
    margin: 0;
    z-index: 15;
    list-style: none;
    display: inline-block;
}

.navMenu:before {
    left: 0;
    content: ".";
    display: block;
    overflow: hidden;
    visibility: hidden;
    position: absolute;
    top: 0;
    bottom: 0;
    font-size: 0;
    line-height: 0;
    width: 0;
    height: 0;
    box-sizing: border-box;
}

.navMenuItem {
    position: relative;
    float: left;
    list-style: none;
    padding: 0;
    margin: 0;
    vertical-align: top;
    font-size: 13px;
    font-weight: 300;
}

.navMenuItem:after {
    content: "";
    display: block;
    width: 100%;
    height: 3px;
    position: absolute;
    top: -20px;
    left: 0;
    margin: 0;
    visibility: hidden;
    transform: rotate(0);
    transition: top .3s ease;
    background: rgba(255,255,255,0.1);
}

.navMenuItem.active:after {
    background: rgb(45,191,191);
    visibility: visible;
}

.navMenuItem:hover:after {
    visibility: visible;
}

.navMenuItemLink {
    color: #ffffff;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    letter-spacing: 0px;
    position: relative;
    display: block;
    word-spacing: 0;
    text-decoration: none;
    text-align: center;
    padding: 0 20px;
    overflow: hidden;
    line-height: 20px;
    text-transform: uppercase;
    font-family: "Roboto Condensed";
}

.navMenuItemLink:hover {
    color: #ffffff;
}

.navMenuItemLink.smallNavigation {
    height: 58px;
    line-height: 58px;
}

.contactUsSectionWrapper {
    width: 100%;
    min-width: 100%;
    background-color: #2dbfbf !important;
    position: relative;
    margin-left: 0;
    margin-right: 0;
}

.contactUsSectionRow {
    width: 100%;
    padding: 0 10px;
    max-width: none;
    margin: 0 -10px;
    min-width: 100%;
    position: relative;
}

.contactUsSectionColumns {
    width: 100%;
    min-height: 1px;
    padding: 0 10px;
    position: relative;
}

.contactUsSectionContentWrapper {
    padding: 52px 0;
    display: flex;
    flex-direction: row;
}

.contactUsSectionContent {
    flex: 0.5;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
}

.contactUsSectionContentTitleWrap {
    position: relative;
    max-width: 100%;
}

.contactUsSectionContentTitleDelimiter {
    margin-top: 10px;
    margin-bottom: 10px;
    border-bottom-style: solid;
    border-bottom-width: 2px;
    width: 200px;
    border-bottom-color: #ffffff;
    position: absolute;
    bottom: 0;
    right: 100%;
    margin-right: 10px;
    margin-left: auto;
}

.contactUsSectionContentTitle {
    font-style: normal;
    font-weight: 700;
    font-size: 50px;
    line-height: 50px;
    text-transform: none;
    letter-spacing: 0px;
    color: #ffffff;
    margin: 0;
}

.contactUsSectionContentSubtitle {
    font-size: 20px;
    color: #090909;
    line-height: 25px;
    letter-spacing: 0px;
    font-style: normal;
    font-weight: 400;
    text-transform: uppercase;
    margin: 0;
}

.contactUsSectionLinkWrapper {
    flex: 0.5;
    display: flex;
    align-items: flex-end;
    justify-content: center;
}

.contactUsLink:hover::before {
    background: white;
    transform: rotate(90deg);
    transition: all .2s ease .2s;
}

.contactUsSectionDelimiter {
    position: absolute;
    overflow: hidden;
    display: block;
    width: 100%;
    height: 20px;
    top: 0;
    left: 0;
    transform: translateY(-100%);
}

.contactUsSectionDelimiterTopLeft {
    background-color: rgb(45, 191, 191);
    left: 0;
    margin-left: -30px;
    position: absolute;
    bottom: 0;
    top: 0;
    width: 50%;
    height: 20px;
    border: none;
    z-index: 2;
}

.contactUsSectionDelimiterTopLeft:before {
    right: -20px;
    border-top-right-radius: 15px;
    transform: rotate(-45deg);
    content: '';
    position: absolute;
    top: 2px;
    width: 40px;
    height: 40px;
    background-color: inherit;
}

.contactUsSectionDelimiterTopLeft:after {
    right: -30px;
    transform: rotate(15deg);
    content: "";
    display: block;
    width: 10px;
    height: 4px;
    position: absolute;
    bottom: -3px;
    background-color: inherit;
}

.contactUsSectionDelimiterTopRight {
    background-color: rgb(45, 191, 191);
    right: 0;
    margin-right: -30px;
    position: absolute;
    bottom: 0;
    top: 0;
    width: 50%;
    height: 20px;
    border: none;
    z-index: 2;
}

.contactUsSectionDelimiterTopRight:before {
    left: -20px;
    border-top-left-radius: 15px;
    transform: rotate(45deg);
    content: '';
    position: absolute;
    top: 2px;
    width: 40px;
    height: 40px;
    background-color: inherit;
}

.contactUsSectionDelimiterTopRight:after {
    left: -30px;
    transform: rotate(-15deg);
    content: "";
    display: block;
    width: 10px;
    height: 4px;
    position: absolute;
    bottom: -3px;
    background-color: inherit;
}

.ourOfficeTitle {
    text-transform: uppercase;
    color: #2b2b2b;
    font-style: normal;
    font-weight: 700;
    font-size: 50px;
    line-height: 50px;
    margin-bottom: 0;
}

.bodyBackToTop {
    right: 40px;
    opacity: 1;
    bottom: 40px;
    font-size: 12px;
    width: 50px;
    height: 50px;
    line-height: 50px;
    color: #353535;
    background: rgba(255,255,255,1);
    border: 1px solid rgba(38,38,38,1);
    border-radius: 0px;
    text-align: center;
    position: fixed;
    cursor: pointer;
    z-index: 1000;
    transition: color .3s ease, border-color .3s ease, background .3s ease, bottom .8s ease, opacity .8s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
}

.bodyBackToTop:hover {
    color: #ffffff;
    background: rgba(45,45,45,1);
    border-color: rgba(45,45,45,1);
}

.bodyBackToTop.active {
    opacity: 1;
}

#footer {
    position: relative;
}

.footerContainer {
    width: 100%;
    height: 100%;
    padding: 0 100px;
}

.colWrapper {
    color: #ffffff;
    padding-top: 90px;
    padding-bottom: 80px;
}

.footerBgWrapperCover {
    overflow: hidden;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
}

.footerBgCover {
    background-repeat: no-repeat;
    background-size: cover;
    background-attachment: scroll;
    background-position: center center;
    max-width: 100%;
    overflow: hidden;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    width: 100%;
    height: 100%;
}

.footerColumnHeading {
    text-align: left;
    max-width: 100%;
}

.footerColumnHeadingTitle {
    font-family: Roboto Condensed;
    font-weight: 400;
    font-style: normal;
    color: #ffffff;
    font-size: 22px;
    line-height: 45.1px;
    text-transform: uppercase;
    letter-spacing: 0px;
    margin-bottom: 0;
}

.footerColumnHeadingSubtitle {
    color: rgba(255,255,255,0.6);
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    line-height: 20.02px;
    text-transform: none;
    letter-spacing: 0px;
    margin-bottom: 0;
}

.footerColumnHeadingDelimiter {
    margin-top: 10px;
    margin-bottom: 10px;
    border-bottom-style: solid;
    border-bottom-width: 1px;
    border-bottom-color: #ffffff;
    margin-left: 0;
    margin-right: auto;
    color: #ffffff;
}

.footerColumnContent {
    padding-top: 10px;
}

.footerSocialIconsContainer {
    display: inline-block;
}

.footerSocialIconLink {
    color: #ffffff;
    position: relative;
    overflow: hidden;
    margin-right: 3px;
    font-size: 15px;
    text-align: center;
    float: left;
    width: 3em;
    height: 3em;
    line-height: 3em;
    z-index: 1;
}

.footerSocialIconLink:before {
    background: rgba(255,255,255,0.1);
    transform-origin: 90% 100%;
    perspective: 100px;
    transform: translate3d(0, 0, 3em);
    transition: all .2s ease;
    position: absolute;
    width: inherit;
    height: inherit;
    top: 0;
    left: 0;
    color: inherit;
    border-radius: inherit;
    content: '';
}

.footerSocialIconLink .socialIconHover {
    color: #2dbfbf;
    background: #ffffff;
    transform: rotateY(-90deg) translate3d(0, 0, 3em) perspective(1000px);
    transform-origin: 100% 100%;
    left: 0;
    top: 0;
    transition: all .2s ease;
    position: absolute;
    width: inherit;
    height: inherit;
    line-height: inherit;
    border-radius: inherit;
}

.footerSocialIconLink i:not(.socialIconHover) {
    position: relative;
    display: inline-block;
    text-align: center;
    width: inherit;
    height: inherit;
    line-height: inherit;
    border-radius: inherit;
    color: #ffffff;
}

.footerSocialIconLink:hover .socialIconHover {
    transform: rotateY(0);
    left: 0;
    top: 0;
}

.latestNews {
    display: flex;
    flex-direction: row;
}

.latestNewsHeading {
    margin-top: 15px;
    font-style: normal;
    font-weight: 700;
    font-size: 20px;
    line-height: 28.8px;
    text-transform: none;
    letter-spacing: 0px;
}

.latestNewsContent {
    margin-left: 30px;
}

.latestNewsLinkContainer {
    position: relative;
}

.latestNewsLink {
    display: inline;
    position: relative;
    color: inherit;
    background-image: linear-gradient(to right, rgba(255,255,255,0) 50%, rgba(255,255,255,0.1) 50%);
    background-size: 200.22% auto;
    background-position: 0% 0;
    transition: background-position 0.5s ease-out, color .3s ease-in-out;
    text-decoration: none;
    line-height: inherit;
}

.latestNewsLink p {
    display: inline;
}

.latestNewsLink:hover {
    background-position: -99.99% 0;
}

.latestNewsDate {
    padding-top: 5px;
    color: rgba(255,255,255,0.7);
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    line-height: 20.8px;
    text-transform: none;
    letter-spacing: 0px;
}

.blogPostTags {
    padding: 20px 0;
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
    border-bottom: 1px dotted #d6d6d6;
    flex-wrap: wrap;
}

.blogPostTag {
    font-size: 14px;
    font-family: "Roboto";
    font-weight: 400;
    font-style: normal;
    text-transform: none;
    letter-spacing: 0px;
    color: #242424;
    border: 1px solid #d6d6d6;
    margin-left: 4px;
    padding: 0 20px;
    text-decoration: none;
    transition: all .3s ease-in-out;
    transform: perspective(0);
    margin-top: 4px;
}

a.blogPostTag:hover {
    color: #242424;
    border-color: transparent;
    box-shadow: 0 2px 6px 1px rgba(0,0,0,0.2);
    transform: perspective(400px);
}

.blogPostShare {
    padding: 15px 0;
    position: relative;
    display: flex;
    justify-content: end;
}

.tagShareContainer {
    border-top: 1px dotted #d6d6d6;
    border-bottom: 1px dotted #d6d6d6;
    margin-bottom: 10px;
}

.tagShareContainer .blogPostShare {
    padding: 5px 0;
}

.shareTitle {
    margin-top: 0;
    font-size: 13px;
    color: #28262b;
    text-transform: uppercase;
    overflow: hidden;
    width: 100px;
    height: 36px;
    font-style: normal;
    font-weight: 700;
    line-height: 36px;
    text-align: center;
    background: #e8e8e8;
    border-radius: 36px;
    transition: width .3s ease, opacity .3s ease;
}

.blogPostShare .shareIcons {
    position: absolute;
    right: 0;
    width: 156px;
    height: 36px;
    overflow: hidden;
    opacity: 0;
    transition: opacity .3s ease;
}

.blogPostShare:hover .shareIcons {
    opacity: 1;
}

.blogPostShare:hover .shareIcons ul > li {
    transform: rotate(0);
}

.blogPostShare:hover .shareTitle {
    opacity: 0;
    width: 0;
}

.shareIcons ul {
    list-style: none;
}

.blogPostShare .shareIcons ul > li {
    font-size: 12px;
    overflow: hidden;
    position: absolute;
    top: 0;
    left: 120px;
    display: block;
    width: 36px;
    height: 36px;
    line-height: 36px;
    text-align: center;
    color: #ffffff;
    border-radius: 50%;
    transform: rotate(90deg);
    transition: text-shadow .3s ease,left .3s ease,-webkit-transform .3s ease,transform .3s ease;
    cursor: pointer;
}

.blogPostShare:hover .shareIcons ul > li:nth-child(1) {
    left: 0;
}

.blogPostShare:hover .shareIcons ul > li:nth-child(2) {
    left: 40px;
}

.blogPostShare:hover .shareIcons ul > li:nth-child(3) {
    left: 80px;
}

.blogPostShare:hover .shareIcons ul > li:nth-child(4) {
    left: 120px;
}

.blogPostShare .shareIcons ul > li > a {
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    color: #242424;
    cursor: pointer;
}

.blogPostShare .shareIcons ul > li.fa-facebook-f {
    background: #39579a;
    text-shadow: 1px 1px 0px transparent;
}

.blogPostShare .shareIcons ul > li.fa-facebook-f:hover {
    text-shadow: #283d6c 1px 1px, #283d6c 2px 2px, #283d6c 3px 3px, #293f6f 4px 4px, #2a4173 5px 5px, #2b4376 6px 6px, #2d457a 7px 7px, #2e477d 8px 8px, #2f4981 9px 9px, #314b84 10px 10px, #324d88 11px 11px, #334f8b 12px 12px, #35518f 13px 13px, #365392 14px 14px, #375596 15px 15px, #39579a 16px 16px;
}

.blogPostShare .shareIcons ul > li.fa-linkedin-in {
    background: #e1003a;
    text-shadow: 1px 1px 0px transparent;
}

.blogPostShare .shareIcons ul > li.fa-linkedin-in:hover {
    text-shadow: #9e0029 1px 1px, #9e0029 2px 2px, #9e0029 3px 3px, #a3002a 4px 4px, #a8002b 5px 5px, #ad002c 6px 6px, #b2002e 7px 7px, #b7002f 8px 8px, #bc0030 9px 9px, #c20032 10px 10px, #c70033 11px 11px, #cc0034 12px 12px, #d10036 13px 13px, #d60037 14px 14px, #db0038 15px 15px, #e1003a 16px 16px;
}

.blogPostShare .shareIcons ul > li.fa-pinterest-p {
    background: #cd1d1e;
    text-shadow: 1px 1px 0px transparent;
}

.blogPostShare .shareIcons ul > li.fa-pinterest-p:hover {
    text-shadow: #901415 1px 1px, #901415 2px 2px, #901415 3px 3px, #941415 4px 4px, #991516 5px 5px, #9e1617 6px 6px, #a21617 7px 7px, #a71718 8px 8px, #ac1819 9px 9px, #b01819 10px 10px, #b5191a 11px 11px, #ba1a1b 12px 12px, #be1a1b 13px 13px, #c31b1c 14px 14px, #c81c1d 15px 15px, #cd1d1e 16px 16px;
}

.blogPostShare .shareIcons ul > li.fa-x-twitter {
    background: #50abf0;
    text-shadow: 1px 1px 0px transparent;
}

.blogPostShare .shareIcons ul > li.fa-x-twitter:hover {
    text-shadow: #3878a8 1px 1px, #3878a8 2px 2px, #3878a8 3px 3px, #397bad 4px 4px, #3b7fb3 5px 5px, #3d83b8 6px 6px, #3f87be 7px 7px, #418bc3 8px 8px, #438fc9 9px 9px, #4493ce 10px 10px, #4697d4 11px 11px, #489bd9 12px 12px, #4a9fdf 13px 13px, #4ca3e4 14px 14px, #4ea7ea 15px 15px, #50abf0 16px 16px;
}

.relatedPosts {
    font-style: normal;
    font-weight: 700;
    font-size: 16px;
    line-height: 28.8px;
    text-transform: none;
    letter-spacing: 0px;
    color: #28262b;
    padding-top: 55px;
}

.blogPageRightSideContainer {
    background: #f4f4f4;
    padding: 90px 10px;
    display: flex;
    flex-direction: column;
}

.blogPageLeftSideContainer {
    padding: 0 40px 0 150px;
}

.blogPostImage {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.recentPostsRightSideContainer {
    padding-left: 30px;
}

.tagsRightSideContainer {
    padding-left: 30px;
    margin-top: 70px;
}

.blogPageRightSideTitle {
    font-style: normal;
    font-weight: 700;
    font-size: 16px;
    line-height: 20.8px;
    text-transform: none;
    letter-spacing: 0px;
    color: #2d2d2d;
    margin-bottom: 30px;
}

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

.blogPageRightSideRecentPosts li {
    padding: 10px 0;
}

.recentBlogPostDate {
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    line-height: 25px;
    text-transform: none;
    letter-spacing: 0px;
    color: #bcbcbc;
    padding-left: 5px;
}

.recentBlogPostLink {
    font-size: 14px;
    font-family: "Roboto";
    font-weight: 400;
    font-style: normal;
    text-transform: none;
    letter-spacing: 0px;
    color: #242424;
    position: relative;
    text-decoration: none;
}

.recentBlogPostLink > p {
    display: inline;
}

.recentBlogPostLink:before {
    margin-top: 7px;
    border-bottom-width: 1px;
    border-bottom-style: none;
    border-bottom-color: rgb(45,191,191);
    content: "";
    display: block;
    width: 100%;
    height: 0;
    position: absolute;
    left: 0;
    top: 50%;
    transition: border-bottom .3s ease;
}

.recentBlogPostLink:hover {
    color: #28262b;
}

.recentBlogPostLink:hover:before {
    border-bottom-style: solid;
}

.blogPageRightSideRecentTags {
    margin: 0;
    padding: 0;
}

.blogPageRightSideRecentTag {
    font-family: "Roboto";
    font-weight: 400;
    font-style: normal;
    text-transform: none;
    letter-spacing: 0px;
    color: #242424;
    font-size: 14px;
    border: 1px solid #d6d6d6;
    line-height: 30px;
    padding: 0px 20px;
    margin-bottom: 2px;
    margin-right: 2px;
    background-color: #ffffff;
    border-radius: 2px;
    text-decoration: none;
    float: left;
    transition: all .3s ease-in-out;
    transform: perspective(0);
}

a.blogPageRightSideRecentTag:hover {
    color: #242424;
    border-color: transparent;
    box-shadow: 0 2px 6px 1px rgba(0,0,0,0.2);
    transform: perspective(400px);
}

.aboutUsContainer {
    margin-bottom: 210px;
}

.aboutUsTextContainer {
    padding-left: 65px;
}

.aboutUsDescription {
    font-size: 20px;
    color: #2b2b2b;
    line-height: 25px;
    letter-spacing: 0px;
    font-style: normal;
    font-weight: 400;
    text-transform: none;
    margin-bottom: 0;
}

.aboutUsLink {
    display: flex;
    justify-content: end;
    padding-top: 50px;
}

.aboutUsTitle {
    color: #2b2b2b;
    font-style: normal;
    font-weight: 600;
    font-size: 60px;
    line-height: 65px;
    text-transform: none;
    letter-spacing: 0px;
    word-spacing: 0;
    margin-bottom: 0;
}

.aboutUsTitleLine {
    margin-top: 10px;
    margin-bottom: 10px;
    border-bottom-style: solid;
    border-bottom-width: 2px;
    width: 100px;
    border-bottom-color: #2dbfbf;
    position: absolute;
    bottom: 0;
    right: 100%;
    margin-right: 10px;
}

.aboutUsTitle p {
    margin-bottom: 0;
}

.sendAMessageBtn {
    padding: 18px;
    background-color: #2dbfbf;
    color: #ecf0f1;
    border-color: #252525;
    letter-spacing: 1px;
    font-weight: 400;
    font-family: inherit;
    font-size: 12px;
    line-height: 12px;
    border: 2px solid #131219;
    margin: 0;
    display: inline-block;
    cursor: pointer;
    outline: 0;
    text-transform: none;
    text-shadow: none;
    text-align: center;
    vertical-align: middle;
    width: 100%;
    box-shadow: none;
    transition: all 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    border-radius: 0;
}

.sendAMessageBtn:hover {
    background-color: #2dbfbf;
    color: #ecf0f1;
    border-radius: 0;
    border: 2px solid #131219;
}

.formTextArea {
    height: 150px !important;
    background-color: #2dbfbf;
    color: #ecf0f1;
    border-radius: 0;
    width: 100%;
    padding: 2em 0.75em 0 !important;
}

.formTextArea:focus {
    height: 150px !important;
    background-color: #2dbfbf;
    color: #ecf0f1;
    border-radius: 0;
    box-shadow: none;
    border-color: #2dbfbf;
    padding: 2em 0.75em 0 !important;
}

.formTextArea:focus ~ label {
    opacity: 1 !important;
    transform: scale(.8) translateY(-0.5rem) translateX(0.15rem) !important;
}

.formInput {
    background-color: #2dbfbf;
    color: #ecf0f1;
    border-radius: 0;
    width: 100%;
    height: 66px !important;
    padding: 2em 0.75em 0 !important;
}

.formInput:focus {
    background-color: #2dbfbf;
    color: #ecf0f1;
    border-radius: 0;
    box-shadow: none;
    border-color: #2dbfbf;
}

.forInputLabel {
    color: #ecf0f1;
    padding: 1.3rem 0.75rem !important;
}

.formInput:focus ~ label {
    opacity: 1 !important;
    transform: scale(.8) translateY(-1.3rem) translateX(0.15rem) !important;
}

#form .form-control.is-invalid, .was-validated .form-control:invalid {
    background-image: none !important;
    border-width: 0 !important;
}

#careerForm .form-control.is-invalid, .was-validated .form-control:invalid {
    background-image: none !important;
}

#form .form-control.is-valid, .was-validated .form-control:valid {
    background-image: none !important;
    border-width: 0 !important;
}

#careerForm .form-control.is-valid, .was-validated .form-control:valid {
    background-image: none !important;
}

#form .form-control.is-invalid:focus, .was-validated .form-control:invalid:focus {
    border-width: 0 !important;
    box-shadow: none !important;
}

#careerForm .form-control.is-invalid:focus, .was-validated .form-control:invalid:focus {
    border-width: 0 !important;
    box-shadow: 0px 0px 0px 2px #2dbfbf !important;
}

#form .form-control.is-valid:focus, .was-validated .form-control:valid:focus {
    border-width: 0 !important;
    box-shadow: none !important;
}

#careerForm .form-control.is-valid:focus, .was-validated .form-control:valid:focus {
    border-width: 0 !important;
    box-shadow: 0px 0px 0px 2px #2dbfbf !important;
}

.was-validated :invalid ~ .invalid-feedback {
    position: absolute;
    top: 0;
    display: flex !important;
    justify-content: end;
    padding-right: 0.4rem;
    font-size: 9px;
}

#careerForm .invalid-feedback {
    z-index: 100;
    bottom: -16px;
    top: unset;
}

.responseOutput {
    display: none;
    margin: 2em 0.5em 1em;
    padding: 0.2em 1em;
    border: 2px solid #ffb900;
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    line-height: 20px;
    text-transform: none;
    letter-spacing: 0px;
    color: #565656;
}

#careerForm .responseOutput {
    color: white;
}

.responseOutputSuccess {
    border: 2px solid #198754;
}

.contactFormTitle {
    color: #2b2b2b;
    font-style: normal;
    font-weight: 700;
    font-size: 30px;
    line-height: 50px;
    text-transform: none;
    letter-spacing: 0px;
    margin: 0;
}

.contactFormSubtitle {
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    line-height: 24px;
    text-transform: none;
    letter-spacing: 0px;
    color: #777777;
    margin: 0;
}

.contactFormDelimiter {
    margin-top: 25px;
    border-bottom-style: solid;
    border-bottom-width: 1px;
    width: 100px;
    border-bottom-color: #e5e5e5;
    display: inline-block;
}

.contactFormHeading {
    text-align: center;
    padding-top: 90px;
    padding-bottom: 40px;
}

.careerFormTitle {
    font-style: normal;
    font-weight: 700;
    font-size: 35px;
    line-height: 53.9px;
    text-transform: none;
    letter-spacing: 0px;
    color: #ffffff;
    margin: 0;
}

.careerFormSubtitle {
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    line-height: 24px;
    text-transform: none;
    letter-spacing: 0px;
    color: rgba(255,255,255,0.6);
    margin: 0;
}

.careerFormDelimiter {
    border-bottom-style: solid;
    border-bottom-width: 1px;
    width: 100px;
    border-bottom-color: #e5e5e5;
    margin: 0 auto;
    margin-top: 25px;
}

.careerFormWrap {
    position: relative;
    margin-left: 0;
    margin-right: 0;
}

.careerFormCover {
    overflow: hidden;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
}

.careerFormBgImage {
    background-repeat: repeat;
    background-size: cover;
    background-attachment: scroll;
    background-position: center center;
    max-width: 100%;
    overflow: hidden;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
}

.careerFormInput {
    background: #2dbfbf;
    color: #ffffff;
    width: 100%;
    box-shadow: 0px 0px 0px 2px transparent;
    transition: box-shadow 0.3s;
    z-index: 11;
    margin: 0;
    position: relative;
    display: block;
    float: right;
    font-size: 16px;
    line-height: inherit !important;
    padding: 0.8em;
    border: none;
    border-radius: 0;
    font-weight: 400;
    margin-bottom: 12px;
}

.careerFormInput:focus {
    color: #ffffff;
    box-shadow: 0px 0px 0px 2px #2dbfbf;
    background: transparent;
}

.careerFormLabel {
    color: #ffffff;
    padding: 0.75em 0.15em;
    position: relative;
    display: block;
    width: 100%;
}

.submitCareerForm {
    padding: 18px;
    letter-spacing: 1px;
    font-weight: 400;
    font-family: inherit;
    font-size: 12px;
    line-height: 12px;
    border: 2px solid #131219;
    margin: 0;
    display: inline-block;
    cursor: pointer;
    outline: 0;
    text-transform: none;
    text-shadow: none;
    text-align: center;
    vertical-align: middle;
    border-radius: 0;
    box-shadow: none;
    transition: all 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    background-color: #2dbfbf;
    color: #ecf0f1;
    width: 100%;
}

.submitCareerForm:hover {
    background-color: #2dbfbf;
    color: #ecf0f1;
    border-radius: 0;
    box-shadow: none;
    border: 2px solid #131219;
}

.careerFormFileTitle {
    color: #2dbfbf;
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    line-height: 20px;
    text-transform: none;
    letter-spacing: 0px;
}

.careerFormFileWrap {
    position: relative;
}

.careerFormFileInput {
    width: 0.1px;
    height: 0.1px;
    opacity: 0;
    overflow: hidden;
    position: absolute;
}

.careerFormFileLabelWrap {
    color: #2dbfbf;
    border: 2px solid #2dbfbf;
    max-width: 80%;
    font-size: 14px;
    font-weight: 700;
    text-overflow: ellipsis;
    white-space: nowrap;
    cursor: pointer;
    display: inline-block;
    overflow: hidden;
    padding: 5.25px 18.25px;
    margin-bottom: 0;
}

.careerFormFileLabel {
    color: #2dbfbf;
}

.careerFormFileLabelIcon {
    stroke: #2dbfbf;
    vertical-align: middle;
    fill: #252525;
    margin-top: -0.25em;
    margin-right: 1em;
    stroke-opacity: .8;
    display: inline-block;
    width: 28px;
    height: 28px;
}

#map {
    height: 500px;
}

.leaflet-attribution-flag {
    display: none !important;
}

.mapInfoWindow {
    line-height: 1.35;
    overflow: hidden;
    white-space: nowrap;
    text-align: center;
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    text-transform: none;
    letter-spacing: 0px;
    color: #565656;
}

.gm-style-iw {
    border-radius: 4px !important;
    border: 1px solid rgba(72,133,237,.4);
}

.projectsContentHeader {
    margin-bottom: 25px;
    padding-left: 65px;
    padding-top: 18px;
}

.projectsContentTitle {
    text-transform: uppercase;
    color: #2b2b2b;
    font-style: normal;
    font-weight: 700;
    font-size: 50px;
    line-height: 50px;
    margin-bottom: 0;
}

.projectsContentTitleDelimiter {
    margin-top: 10px;
    margin-bottom: 10px;
    border-bottom-style: solid;
    border-bottom-width: 2px;
    width: 100px;
    border-bottom-color: #2dbfbf;
    position: absolute;
    bottom: 0;
    right: 100%;
    margin-right: 10px;
}

.projectsContentSubtitle {
    color: #2dbfbf;
    font-size: 20px;
    line-height: 25px;
    letter-spacing: 0px;
}

.textSectionRowTitle {
    color: #2b2b2b;
    font-style: normal;
    font-weight: 700;
    font-size: 50px;
    line-height: 50px;
    margin-bottom: 0;
}

.textSectionRowDescription {
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    line-height: 20px;
    text-transform: none;
    letter-spacing: 0px;
    color: #565656;
    padding-bottom: 18px;
}

.textSectionRowWithBorder {
    padding: 1.5rem;
}

.linksSectionRow {
    padding: 24px 10px 100px 10px;
    border-color: #eeeeee !important;
}

.linksSectionRowTitle {
    text-transform: uppercase;
    color: #2b2b2b;
    font-style: normal;
    font-weight: 700;
    font-size: 50px;
    line-height: 50px;
    margin-bottom: 0;
}

.serviceTitle {
    text-transform: uppercase;
    color: #2b2b2b;
    font-style: normal;
    font-weight: 700;
    font-size: 50px;
    line-height: 50px;
    margin-bottom: 0;
}

.serviceTitleLine {
    margin-top: 10px;
    margin-bottom: 10px;
    border-bottom-style: solid;
    border-bottom-width: 2px;
    width: 100px;
    border-bottom-color: #2dbfbf;
    position: absolute;
    bottom: 0;
    right: 100%;
    margin-right: 10px;
}

.serviceHeader {
    margin-bottom: 25px;
    padding-left: 65px;
    padding-top: 18px;
}

.serviceImageContainer {
    padding: 0 10px;
}

.articleSectionRowContainer {
    display: flex;
}

.articleSectionRowImageContainer {
    padding: 0 10px;
}

.articleSectionRowHeader {
    margin-bottom: 25px;
    padding-left: 65px;
    padding-top: 18px;
}

.articleSectionRowTitleLine {
    margin-top: 10px;
    margin-bottom: 10px;
    border-bottom-style: solid;
    border-bottom-width: 2px;
    width: 100px;
    border-bottom-color: #2dbfbf;
    position: absolute;
    bottom: 0;
    right: 100%;
    margin-right: 10px;
}

.articleSectionRowTitle {
    text-transform: uppercase;
    color: #2b2b2b;
    font-style: normal;
    font-weight: 700;
    font-size: 50px;
    line-height: 50px;
    margin-bottom: 0;
}

.articleSectionRowText {
    padding: 1.5rem;
    border-color: #eeeeee !important;
}

.articleSectionRowDescription {
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    line-height: 20px;
    text-transform: none;
    letter-spacing: 0px;
    color: #565656;
    padding-bottom: 18px;
}

.homeHeaderContainer {
    margin-top: 0px;
    margin-bottom: 0px;
    position: relative;
    width: 100%;
    height: 900px;
    display: block;
    overflow: visible;
    max-width: none !important;
}

.homeHeaderWrapper {
    visibility: visible;
    background: transparent;
    padding: 0px;
    margin: 0px auto;
    height: 900px;
    display: block;
    width: 100%;
    position: absolute;
    overflow: visible;
    left: 0px;
    user-select: none;
    z-index: 1;
    box-sizing: border-box;
    -webkit-tap-highlight-color: rgba(0,0,0,0);
}

.homeHeaderModule {
    height: 900px;
    width: 100%;
    max-height: 900px;
    position: relative;
    overflow: hidden;
    display: block;
    box-sizing: border-box;
    -webkit-tap-highlight-color: rgba(0,0,0,0);
    user-select: none;
}

.homeHeaderSlides {
    overflow: hidden;
    position: absolute;
    visibility: visible;
    max-height: none;
    height: 100%;
    width: 100%;
    text-indent: 0em;
    top: 0px;
    left: 0px;
}

.homeHeaderSlide {
    position: absolute;
    display: block;
    overflow: hidden;
    height: 100%;
    width: 100%;
    z-index: 20;
    opacity: 1;
    visibility: inherit;
    text-indent: 0em;
    top: 0px;
    left: 0px;
}

.homeHeaderSlideBg {
    position: absolute;
    top: 0px;
    left: 0px;
    z-index: 0;
    width: 100%;
    height: 100%;
    display: block;
}

.homeHeaderSlideBgWrap {
    width: 100%;
    height: 100%;
    display: block;
    pointer-events: none;
    box-sizing: border-box;
    -webkit-tap-highlight-color: rgba(0,0,0,0);
}

.homeHeaderSlideZone {
    z-index: 16;
    top: 0px;
    position: absolute;
    width: 100%;
    left: 0px;
    box-sizing: border-box;
    min-height: 50px;
    font-size: 0px;
    pointer-events: none;
}

.homeHeaderSlideZoneRowWrap {
    position: relative;
    pointer-events: auto;
    padding-left: 100px;
    padding-right: 100px;
    padding-top: 300px;
    left: 139.5px;
    top: 0px;
    width: 1240px;
    z-index: 1;
    visibility: visible;
    perspective: 601px;
    display: block;
}

.homeHeaderSlideZoneRow {
    z-index: 1;
    height: auto;
    width: auto;
    color: rgb(255, 255, 255);
    min-height: 0px;
    min-width: 0px;
    max-height: none;
    max-width: none;
    margin-left: 0px;
    margin-right: 0px;
    margin-top: 0px;
    transform-origin: 50% 50%;
    opacity: 1;
    transform: translate(0px, 0px);
    visibility: visible;
    outline: none !important;
    display: table;
    position: relative;
    width: 100% !important;
    table-layout: fixed;
    box-sizing: border-box;
    vertical-align: top;
    height: auto;
    font-size: 0px;
    user-select: none;
}

.homeHeaderSlideZoneColumnWrap {
    vertical-align: top;
    position: relative;
    pointer-events: auto;
    left: 0px;
    top: 0px;
    width: 100%;
    z-index: 2;
    visibility: visible;
    perspective: 601px;
    display: table-cell;
    height: auto;
    box-sizing: border-box;
    font-size: 0px;
}

.homeHeaderSlideZoneColumn {
    z-index: 2;
    color: rgb(255, 255, 255);
    text-decoration: none;
    min-height: 0px;
    min-width: 0px;
    max-height: none;
    max-width: none;
    text-align: left;
    line-height: 25px;
    transform-origin: 50% 50%;
    opacity: 1;
    transform: translate(0px, 0px);
    visibility: visible;
    outline: none !important;
    position: relative;
    display: block;
    width: 100% !important;
    height: auto !important;
    white-space: normal !important;
}

.homeHeaderSlideZoneLayerWrapTitle {
    position: relative;
    pointer-events: auto;
    min-width: auto;
    clear: none;
    float: none;
    max-width: inherit;
    left: 0px;
    top: 0px;
    z-index: 3;
    visibility: visible;
    perspective: 601px;
    outline: none !important;
    vertical-align: top;
    line-height: 0px;
    transform-style: flat;
}

.homeHeaderSlideZoneMaskWrapTitle {
    position: relative;
    display: inline-block;
    width: 100%;
    overflow: visible;
    left: auto;
    top: auto;
    line-height: 0px;
    vertical-align: top;
    transform-style: flat;
}

.homeHeaderSlideZoneLayerTitle {
    z-index: 3;
    display: inline-block;
    height: auto;
    width: auto;
    color: rgb(255, 255, 255);
    text-decoration: none;
    white-space: normal;
    min-height: 0px;
    min-width: 0px;
    max-height: none;
    max-width: none;
    text-align: left;
    line-height: 75px;
    letter-spacing: 1px;
    font-weight: 700;
    font-size: 70px;
    padding-bottom: 20px;
    padding-right: 5px;
    clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%);
    transform-origin: 50% 50%;
    transform: translate(0px, 0px);
    opacity: 1;
    visibility: visible;
    margin-bottom: 0;
    position: relative;
}

.homeHeaderSlideZoneLayerTitle > p {
    margin-bottom: 0;
}

.homeHeaderSlideZoneLayerWrapSubtitle {
    position: relative;
    pointer-events: auto;
    min-width: auto;
    margin-top: 10px;
    clear: none;
    float: none;
    max-width: inherit;
    left: 0px;
    top: 0px;
    z-index: 4;
    visibility: visible;
    perspective: 601px;
    vertical-align: top;
}

.homeHeaderSlideZoneMaskWrapSubtitle {
    position: relative;
    display: inline-block;
    width: 100%;
    overflow: visible;
    outline: none !important;
    vertical-align: top;
    left: auto;
    top: auto;
    line-height: 0px;
    transform-style: flat;
}

.homeHeaderSlideZoneLayerSubtitle {
    z-index: 4;
    display: inline-block;
    height: auto;
    width: auto;
    color: rgb(45, 191, 191);
    text-decoration: none;
    white-space: normal;
    min-height: 0px;
    min-width: 0px;
    max-height: none;
    max-width: none;
    text-align: left;
    line-height: 20px;
    letter-spacing: 2px;
    font-weight: 400;
    font-size: 20px;
    clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%);
    transform-origin: 50% 50%;
    transform: translate(0px, 0px);
    opacity: 1;
    visibility: visible;
    outline: none !important;
    margin-bottom: 0;
}

.homeHeaderSlideZoneLayerWrapLink {
    position: relative;
    pointer-events: auto;
    min-width: auto;
    margin-top: 50px;
    clear: none;
    float: none;
    max-width: inherit;
    left: 0px;
    top: 0px;
    z-index: 7;
    visibility: visible;
    perspective: 601px;
    vertical-align: top;
    transform-style: flat;
}

.homeHeaderSlideZoneMaskWrapLink {
    position: relative;
    display: inline-block;
    width: 100%;
    overflow: visible;
    outline: none !important;
    vertical-align: top;
    left: auto;
    top: auto;
    line-height: 0px;
    transform-style: flat;
}

.homeHeaderSlideZoneLayerLink {
    z-index: 7;
    cursor: pointer;
    display: inline-block;
    height: auto;
    width: auto;
    color: rgb(238, 238, 238);
    text-decoration: none;
    white-space: nowrap;
    min-height: 0px;
    min-width: 0px;
    max-height: none;
    max-width: none;
    text-align: left;
    line-height: 25px;
    letter-spacing: 0px;
    font-weight: 600;
    font-size: 20px;
    border-color: rgb(255, 255, 255);
    border-style: solid;
    border-width: 0px 0px 1px;
    backdrop-filter: none;
    filter: none;
    clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%);
    transform-origin: 50% 50%;
    transform: translate(0px, 0px);
    opacity: 1;
    visibility: visible;
    outline: none !important;
    margin-bottom: 0;
    position: relative;
}

.homeHeaderSlideZoneLayerLink > a {
    color: rgb(255, 255, 255);
    text-decoration: none;
}

.homeHeaderSlideGroupWrapOverlayImg {
    vertical-align: top;
    position: absolute;
    pointer-events: auto;
    height: 1600px;
    left: 529.5px;
    top: -690px;
    z-index: 13;
    visibility: visible;
    perspective: 601px;
}

.homeHeaderSlideMaskWrapOverlayImg {
    position: absolute;
    opacity: 1;
    transform-origin: 50% 50%;
    transform: rotate(-15deg);
    overflow: hidden;
    transform-style: flat;
    display: block;
    box-sizing: border-box;
    -webkit-tap-highlight-color: rgba(0,0,0,0);
}

.homeHeaderSlideGroupOverlayImg {
    z-index: 13;
    background-color: rgb(9, 9, 9);
    text-align: left;
    vertical-align: top;
    line-height: 0px;
    color: rgb(255, 255, 255);
    white-space: normal;
    width: 1600px;
    height: 1600px;
    min-height: 0px;
    min-width: 0px;
    max-height: none;
    max-width: none;
    transform-origin: 50% 50%;
    opacity: 1;
    transform: translate(0px, 0px);
    visibility: visible;
    outline: none !important;
    margin-bottom: 0;
    user-select: none;
    position: relative;
    display: block;
}

.homeHeaderSlideLayerWrapOverlayImg {
    position: absolute;
    display: block;
    pointer-events: auto;
    transform: translate(0px, 0px);
    left: 67px;
    top: 358px;
    z-index: 12;
    visibility: visible;
    perspective: 601px;
    outline: none !important;
    margin-bottom: 0;
    transform-style: flat;
    user-select: none;
}

.homeHeaderSlideLayerOverlayImg {
    z-index: 12;
    color: rgb(255, 255, 255);
    width: 1400px;
    height: 840px;
    min-height: 0px;
    min-width: 0px;
    max-height: none;
    max-width: none;
    transform-origin: 50% 50%;
    opacity: 1;
    transform: translate(0px, 0px);
    visibility: visible;
    outline: none !important;
    margin-bottom: 0;
    user-select: none;
    position: relative;
    display: block;
}

.homeHeaderOverlayImg {
    position: relative;
    height: 100%;
    width: 100%;
    outline: none !important;
    margin-bottom: 0;
    background: transparent;
    vertical-align: top;
    user-select: none;
    max-width: none !important;
    transition: none;
    margin: 0px;
    padding: 0px;
    border: none;
}

.homeHeaderSlideGroupWrapArrow {
    vertical-align: top;
    position: absolute;
    pointer-events: auto;
    height: 300px;
    right: 80px;
    top: 550px;
    z-index: 20;
    visibility: visible;
    perspective: 601px;
}

.homeHeaderSlideGroupArrow {
    z-index: 20;
    text-align: left;
    vertical-align: top;
    line-height: 0px;
    color: rgb(255, 255, 255);
    white-space: normal;
    width: 41px;
    height: 300px;
    min-height: 0px;
    min-width: 0px;
    max-height: none;
    max-width: none;
    transform-origin: 50% 50%;
    opacity: 1;
    animation: mover 1s infinite alternate;
    visibility: visible;
    position: relative;
}

@keyframes mover {
    0% {
        transform: translateY(0);
    }

    100% {
        transform: translateY(-50px);
    }
}

.homeHeaderSlideLayerWrapArrowBody {
    position: absolute;
    display: block;
    pointer-events: auto;
    left: 20px;
    top: 0px;
    z-index: 19;
    visibility: visible;
    perspective: 601px;
}

.homeHeaderSlideMaskWrapArrowBody {
    position: absolute;
    display: block;
    transform-origin: 50% 50%;
    transform: translate(0px, 0px);
    overflow: hidden;
}

.homeHeaderSlideLayerArrowBody {
    z-index: 19;
    background-color: rgb(255, 255, 255);
    color: rgb(255, 255, 255);
    width: 1px;
    height: 300px;
    min-height: 0px;
    min-width: 0px;
    max-height: none;
    max-width: none;
    transform-origin: 50% 50%;
    opacity: 1;
    transform: translate(0px, 0px);
    visibility: visible;
    position: relative;
}

.homeHeaderSlideLayerWrapArrowSide1 {
    position: absolute;
    display: block;
    pointer-events: auto;
    left: -5px;
    top: 299px;
    z-index: 18;
    visibility: visible;
    perspective: 601px;
}

.homeHeaderSlideLayerArrowSide1 {
    z-index: 18;
    background-color: rgb(255, 255, 255);
    color: rgb(255, 255, 255);
    width: 25px;
    height: 1px;
    min-height: 0px;
    min-width: 0px;
    max-height: none;
    max-width: none;
    transform-origin: 100% 100%;
    opacity: 1;
    transform: rotate(45deg);
    visibility: visible;
}

.homeHeaderSlideLayerWrapArrowSide2 {
    position: absolute;
    display: block;
    pointer-events: auto;
    left: -5px;
    top: 299px;
    z-index: 17;
    visibility: visible;
    perspective: 601px;
}

.homeHeaderSlideLayerArrowSide2 {
    z-index: 17;
    background-color: rgb(255, 255, 255);
    color: rgb(255, 255, 255);
    width: 25px;
    height: 1px;
    min-height: 0px;
    min-width: 0px;
    max-height: none;
    max-width: none;
    transform-origin: 100% 100%;
    opacity: 1;
    transform: rotate(135deg);
    visibility: visible;
}

.homeContent {
    padding: 50px 0;
}

.homeTitle {
    font-style: normal;
    font-weight: 600;
    font-size: 60px;
    line-height: 65px;
    text-transform: none;
    letter-spacing: 0px;
    color: #28262b;
    text-align: center;
    text-transform: uppercase;
    margin-bottom: 0;
}

.homeTitle > p {
    margin-bottom: 0;
}

.homeSubtitle {
    text-align: center;
    font-size: 20px;
    color: #2b2b2b !important;
    line-height: 25px;
    letter-spacing: 0px;
    font-style: normal;
    font-weight: 400;
    text-transform: none;
    margin-bottom: 0;
}

.testimonialsNavigationContainer {
    display: flex;
    width: 100%;
    justify-content: center;
}

.testimonialsNavigationWrap {
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    z-index: 2;
}

#testimonialsNavigation .splide__arrow--prev {
    margin-right: 21px;
    width: 30px;
    height: 30px;
    background-color: rgb(45, 191, 191);
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    border-radius: 0;
    opacity: 1;
    left: -3em;
}

#testimonialsNavigation .splide__arrow--next {
    margin-left: 21px;
    width: 30px;
    height: 30px;
    background-color: rgb(45, 191, 191);
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    border-radius: 0;
    opacity: 1;
    right: -3em;
}

.splide__arrow svg {
    fill: #000;
    height: 1em;
    width: 1em;
}

#testimonialsNavigation {
    width: 550px;
    height: 110px;
}

.testimonialsNavigationOuter {
    height: 110px;
}

.testimonialsNavigationItem {
    height: 110px;
    position: relative;
}

.splide__slide img {
    width: 100%;
    object-fit: cover;
}

#testimonialsNavigation .splide__track--nav > .splide__list > .splide__slide.is-active {
    border: 3px solid rgb(45, 191, 191);
}

.splide__track--nav > .splide__list > .splide__slide.is-active {
    border: 2px solid rgb(45, 191, 191);
}

.testimonialsNavigationItemImage {
    cursor: pointer;
    position: absolute;
    height: 100%;
}

#testimonials {
    height: 750px;
    width: 100%;
}

.testimonialsSlide {
    position: absolute;
    overflow: hidden;
    touch-action: pan-y;
    transform-style: flat;
    transform-origin: 50% 50%;
    visibility: visible;
    opacity: 1;
    display: block;
    text-indent: 0em;
    top: 0px;
    left: 0px;
    height: 750px;
    width: 100%;
}

.testimonialsSlideBgWrap {
    touch-action: pan-y;
    position: absolute;
    top: 0px;
    left: 0px;
    z-index: 0;
    width: 100%;
    height: 100%;
    display: block;
}

.testimonialsSlideBg {
    width: 100%;
    height: 100%;
    touch-action: pan-y;
    display: block;
    pointer-events: none;
    background-position: center;
}

.testimonialContent {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
}

.testimonialsSlideNameWrap {
    position: absolute;
    display: block;
    pointer-events: auto;
    touch-action: pan-y;
    left: 151px;
    top: 324px;
    z-index: 9;
    visibility: visible;
    perspective: 601px;
    transform-style: flat;
}

.testimonialsSlideName {
    z-index: 9;
    touch-action: pan-y;
    height: auto;
    width: auto;
    color: rgb(9, 9, 9);
    text-decoration: none;
    white-space: nowrap;
    min-height: 0px;
    min-width: 0px;
    max-height: none;
    max-width: none;
    text-align: left;
    line-height: 50px;
    letter-spacing: 0px;
    font-weight: 900;
    font-size: 30px;
    transform-origin: 50% 50%;
    opacity: 1;
    transform: translate(0px, 0px);
    visibility: visible;
    outline: none !important;
    position: relative;
    display: block;
}

.testimonialsSlideTitleWrap {
    position: absolute;
    display: block;
    pointer-events: auto;
    touch-action: pan-y;
    left: 150px;
    top: 370px;
    z-index: 10;
    visibility: visible;
    perspective: 601px;
    transform-style: flat;
}

.testimonialsSlideTitle {
    z-index: 10;
    touch-action: pan-y;
    height: auto;
    width: auto;
    color: rgb(45, 191, 191);
    text-decoration: none;
    min-height: 0px;
    min-width: 0px;
    max-height: none;
    max-width: none;
    text-align: left;
    line-height: 30px;
    letter-spacing: 0px;
    font-weight: 400;
    font-size: 20px;
    opacity: 1;
    position: relative;
    display: block;
    margin-bottom: 60px;
}

.testimonialsSlideTestimonialWrap {
    position: absolute;
    display: block;
    pointer-events: auto;
    touch-action: pan-y;
    left: 152px;
    top: 412px;
    z-index: 11;
    visibility: visible;
    perspective: 601px;
    transform-style: flat;
}

.testimonialsSlideTestimonial {
    z-index: 11;
    touch-action: pan-y;
    height: auto;
    color: rgb(9, 9, 9);
    text-decoration: none;
    white-space: normal;
    width: 640px;
    min-height: 0px;
    min-width: 0px;
    max-height: none;
    max-width: none;
    text-align: left;
    line-height: 28px;
    letter-spacing: 0px;
    font-weight: 400;
    font-size: 15px;
    transform-origin: 50% 50%;
    opacity: 1;
    transform: rotate(360deg);
    visibility: visible;
    outline: none !important;
    position: relative;
    display: block;
    border-bottom: 4px solid black;
}

.testimonialQuote {
    width: 100px;
    height: 100px;
    position: absolute;
    background-size: contain;
    top: -49px;
    left: -8px;
    background-repeat: no-repeat;
}

.container-fluid {
    padding-right: 5% !important;
    padding-left: 5% !important;
}

#footer .container-fluid {
    padding: 0 30px !important;
}

.loading-screen {
    position: fixed;
    width: 100%;
    height: 100%;
    color: #2dbfbf;
    background-color: #fff;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    text-indent: -9999px;
    z-index: 99991;
}

.spinner {
    width: 90px;
    height: 90px;
    position: absolute;
    left: 50%;
    top: 50%;
    background: #fff;
    margin: -20px 0 0 -20px;
}

.spinner:before, .spinner:after {
    content: "";
    display: block;
    position: absolute;
    border-width: 3px;
    border-style: solid;
    border-radius: 50%;
}

@keyframes scale-2 {
    0% {
        transform: scale(0);
        opacity: 0;
    }

    50% {
        transform: scale(0.7);
        opacity: 1;
    }

    100% {
        transform: scale(1);
        opacity: 0;
    }
}

.spinner.spinner-3:before {
    width: 90px;
    height: 90px;
    border-color: #2dbfbf;
    top: 0px;
    left: 0px;
    animation: scale-2 1s linear 0s infinite;
}

.spinner.spinner-3:after {
    width: 90px;
    height: 90px;
    border-color: #2dbfbf;
    top: 0;
    left: 0;
    opacity: 0;
    animation: scale-2 1s linear 0.5s infinite;
}

#page {
    display: none;
}

#testimonialBackgroundImage {
    display: block;
}

#testimonialMobileBackgroundImage {
    display: none;
}

.teamMemberCard {
    width: 100%;
    background: #eeeeee;
    border-color: #eeeeee;
    padding: 10px 10px 40px 10px;
}

.teamMemberName {
    color: #252525;
    font-size: 20px;
    line-height: 25px;
    font-weight: 400 !important;
    font-style: normal;
    font-family: 'Roboto Condensed';
}

.teamMemberTitle {
    margin-bottom: 10px;
    color: #2dbfbf;
    line-height: 20px;
    font-size: 15px;
    font-weight: 400;
}

@-webkit-keyframes flipX {
    0% {
        opacity: 0;
        -webkit-transform: translateZ(0) rotateY(90deg) scale(1);
        transform: translateZ(0) rotateY(90deg) scale(1);
    }

    100% {
        opacity: 1;
        -webkit-transform: translateZ(0) rotateY(0) scale(1);
        transform: translateZ(0) rotateY(0) scale(1);
    }
}

@keyframes flipX {
    0% {
        opacity: 0;
        -webkit-transform: translateZ(0) rotateY(90deg) scale(1);
        transform: translateZ(0) rotateY(90deg) scale(1);
    }

    100% {
        opacity: 1;
        -webkit-transform: translateZ(0) rotateY(0) scale(1);
        transform: translateZ(0) rotateY(0) scale(1);
    }
}

@-webkit-keyframes flipXIn {
    0% {
        opacity: 0;
        -webkit-transform: translateZ(0) rotateY(-90deg) scale(1);
        transform: translateZ(0) rotateY(-90deg) scale(1);
    }

    100% {
        opacity: 1;
        -webkit-transform: translateZ(0) rotateY(0) scale(1);
        transform: translateZ(0) rotateY(0) scale(1);
    }
}

@keyframes flipXIn {
    0% {
        opacity: 0;
        -webkit-transform: translateZ(0) rotateY(-90deg) scale(1);
        transform: translateZ(0) rotateY(-90deg) scale(1);
    }

    100% {
        opacity: 1;
        -webkit-transform: translateZ(0) rotateY(0) scale(1);
        transform: translateZ(0) rotateY(0) scale(1);
    }
}

.flipX {
    opacity: 0;
}

.flipXIn {
    opacity: 0;
}

.animateFlipX {
    opacity: 0;
    -webkit-animation: flipX 1s cubic-bezier(0.2, 0.3, 0.25, 0.9) forwards;
    animation: flipX 1s cubic-bezier(0.2, 0.3, 0.25, 0.9) forwards;
}

.animateFlipXIn {
    opacity: 0;
    -webkit-animation: flipXIn 1s cubic-bezier(0.2, 0.3, 0.25, 0.9) forwards;
    animation: flipXIn 1s cubic-bezier(0.2, 0.3, 0.25, 0.9) forwards;
}

.blogImageContainer {
    height: 407px;
    display: flex;
    align-items: center;
    max-height: 407px;
}

.cardShortDescription > p {
    margin-bottom: 5px;
}

.relatedPostImageContainer {
    height: 263px;
    display: flex;
    align-items: center;
    max-height: 263px;
}

.checkmark-container {
    display: block;
    position: relative;
    padding-left: 35px;
    margin-bottom: 12px;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

#careerForm .checkmark-container {
    color: #2dbfbf;
}

/* Hide the browser's default checkbox */
.checkmark-container input {
    position: absolute;
    opacity: 0;
    cursor: pointer;
    height: 0;
    width: 0;
}

/* Create a custom checkbox */
.checkmark {
    position: absolute;
    top: 0;
    left: 0;
    height: 25px;
    width: 25px;
    background-color: #eee;
    border: 1px solid #ced4da;
}

#careerForm .checkmark {
    color: #2dbfbf;
    background-color: transparent;
    border: 1px solid #2dbfbf;
}

/* On mouse-over, add a grey background color */
.checkmark-container:hover input ~ .checkmark {
    background-color: #ccc;
}

/* When the checkbox is checked, add a blue background */
.checkmark-container input:checked ~ .checkmark {
    background-color: #2dbfbf !important;
}

/* Create the checkmark/indicator (hidden when not checked) */
.checkmark:after {
    content: "";
    position: absolute;
    display: none;
}

/* Show the checkmark when checked */
.checkmark-container input:checked ~ .checkmark:after {
    display: block;
}

/* Style the checkmark/indicator */
.checkmark-container .checkmark:after {
    left: 8px;
    top: 2px;
    width: 7px;
    height: 15px;
    border: solid white;
    border-width: 0 3px 3px 0;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}

@media (min-width: 1800px) {
    .blogImageContainer {
        height: 535px;
        max-height: 535px;
    }
}

@media (min-width: 1400px) {
    .itemShadowImageWrapper {
        height: 312px;
    }
}

@media only screen and (max-width: 600px) {
    .recentPostsRightSideContainer {
        padding-left: 20px;
    }

    .tagsRightSideContainer {
        padding-left: 20px;
    }

    .relatedPostImageContainer {
        height: 410px;
        max-height: 410px;
    }

    .blogImageContainer {
        height: 380px;
        max-height: 380px;
    }

    .teamMemberCard {
        padding-bottom: 30px;
    }

    .teamMemberTitle {
        line-height: 18px;
        font-size: 13px;
    }

    .testimonialQuote {
        top: -59px;
        left: -8px;
    }

    #testimonialBackgroundImage {
        display: none;
    }

    #testimonialMobileBackgroundImage {
        display: block;
    }

    .contentContainer {
        padding: 50px 0 0 0;
    }

    .colWrapper {
        padding-top: 0;
        padding-bottom: 0;
    }

    .ourOfficeTitle {
        font-style: normal;
        font-weight: 700;
        font-size: 30px;
        line-height: 38px;
        letter-spacing: 0px;
        color: #2b2b2b;
    }

    .contactUsSectionContentWrapper {
        flex-direction: column;
    }

    .contactUsSectionContent {
        flex: 1;
        align-items: flex-start;
    }

    .contactUsSectionContentSubtitle {
        font-size: 16px;
        line-height: 16px;
        padding-bottom: 40px;
    }

    .contactUsSectionContentTitleDelimiter {
        display: none;
    }

    .contactUsSectionContentTitle {
        font-style: normal;
        font-weight: 700;
        letter-spacing: 0px;
        font-size: 30px;
        line-height: 38px;
    }

    .contactUsSectionLinkWrapper {
        flex: 1;
    }

    .projectsContentTitleDelimiter {
        display: none;
    }

    .projectsContentTitle {
        font-size: 30px;
        line-height: 38px;
    }

    .projectsContentHeader {
        padding-right: 28px;
        padding-left: 28px;
        padding-top: 0;
    }

    .projectsContentSubtitle {
        font-size: 16px;
    }

    .textSectionRowTitle {
        font-size: 30px;
        line-height: 38px;
    }

    .linksSectionRowTitle {
        font-size: 30px;
        line-height: 38px;
    }

    ol.breadcrumb {
        font-size: 8px;
    }

    .breadcrumbs > nav {
        padding: 0 6px;
    }

    .linksSectionRowLink {
        margin-bottom: 25px;
    }

    .linksSectionRow {
        padding: 50px 10px;
        margin-left: 10px;
        margin-right: 10px;
        border-width: 2px !important;
    }

    .textSectionRow {
        margin-left: 25px;
        margin-right: 25px;
    }

    .textSectionRowWithBorder {
        margin-left: 10px;
        margin-right: 10px;
        border-width: 2px !important;
        padding: 0;
    }

    .serviceCard {
        margin-left: 25px;
        margin-right: 25px;
    }

    .serviceContainer {
        flex-direction: column;
        padding: 0 20px;
    }

    .serviceImageContainer {
        padding: 0 5px;
    }

    .serviceImage {
        width: 100% !important;
        height: auto !important;
        padding-bottom: 25px;
    }

    .serviceTitle {
        font-size: 30px;
        line-height: 38px;
    }

    .serviceTitleLine {
        display: none;
    }

    .serviceHeader {
        padding: 50px 0 0 0;
    }

    .articleSectionRowContainer {
        flex-direction: column;
        padding: 0 30px;
    }

    .articleSectionRowImageContainer {
        padding: 0;
    }

    .articleSectionRowImage {
        width: 100% !important;
        height: auto !important;
        padding-bottom: 25px;
    }

    .articleSectionRowTitle {
        font-size: 30px;
        line-height: 38px;
    }

    .articleSectionRowHeader {
        padding-top: 50px;
    }

    .articleSectionRowText {
        padding: 0;
    }

    .articleSectionRowDescription {
        padding-bottom: 50px;
    }

    .blogPageLeftSideContainer {
        padding: 0;
    }

    .blogPostDate {
        padding-left: 25px;
    }

    .blogPostTags {
        justify-content: flex-start;
        padding: 15px 25px;
    }

    .videoContainer {
        margin: 0 20px;
        height: 408px;
        max-height: 408px;
    }

    .aboutUsTextContainer {
        padding-left: calc(var(--bs-gutter-x) * .5);
    }

    .aboutUsTitleLine {
        display: none;
    }

    .aboutUsTitle {
        font-size: 30px;
        line-height: 38px;
    }

    .aboutUsDescription {
        font-size: 16px;
        line-height: 22px;
    }

    .aboutUsContainer {
        margin-bottom: 130px;
    }

    .ourJourneyAccordionRow {
        display: flex;
    }

    .ourJourneyTabRow {
        display: none;
    }

    .ourJourneyLink:hover {
        color: #ffffff;
    }

    .ourJourneyLink.collapsed:hover {
        color: #242424;
    }

    .ourJourneyYear {
        font-size: 35px;
        line-height: 53.9px;
        margin-bottom: 0 !important;
    }

    .ourJourneyTitle {
        font-size: 22px;
        line-height: 45.1px;
    }

    .ourJourneySectionTitleLine {
        display: none;
    }

    .ourJourneySectionTitle {
        font-size: 30px;
        line-height: 38px;
    }

    .ourJourneySectionHeader {
        padding-right: calc(var(--bs-gutter-x) * .5);
        padding-left: calc(var(--bs-gutter-x) * .5);
    }

    .teamMembersSectionTitleLine {
        display: none;
    }

    .teamMembersSectionTitle {
        font-size: 30px;
        line-height: 38px;
    }

    .teamMembersSectionHeader {
        padding-right: calc(var(--bs-gutter-x) * .5);
        padding-left: calc(var(--bs-gutter-x) * .5);
    }

    .homeContent {
        padding: 20px 0;
    }

    .homeTitle {
        font-size: 30px;
        line-height: 38px;
    }

    .homeSubtitle {
        font-size: 16px;
        line-height: 22px;
    }

    .homeHeaderSlideZoneRowWrap {
        position: relative;
        pointer-events: auto;
        padding-left: 30px;
        padding-right: 0;
        padding-top: 150px;
        left: 0px;
        top: 0px;
        width: 100%;
        z-index: 1;
    }

    .homeHeaderSlideZoneLayerTitle {
        font-size: 40px;
        line-height: 43px;
        letter-spacing: -2px;
    }

    .homeHeaderSlideGroupWrapOverlayImg {
        vertical-align: top;
        position: absolute;
        height: 1000px;
        left: -55px;
        top: -400px;
    }

    .homeHeaderSlideGroupOverlayImg {
        text-align: left;
        vertical-align: top;
        line-height: 0px;
        color: rgb(255, 255, 255);
        width: 1000px;
        height: 1000px;
        transform-origin: 50% 50%;
        transform: translate(0px, 0px);
    }

    .homeHeaderSlideGroupWrapArrow {
        right: 40px;
    }

    .navigationMenu {
        display: none;
    }

    .navigationMobileMenuContainer {
        visibility: visible;
        display: block;
    }

    .navigationMainPanel.smallNavigation {
        height: 25px;
    }

    .testimonialsSlide {
        height: 670px;
    }

    #testimonials {
        height: 670px;
    }

    .testimonialsSlideBg {
        background-size: cover;
    }

    .testimonialContent > div {
        padding: 0 40px;
    }

    .testimonialsSlideName {
        line-height: 40px;
        font-size: 24px;
        width: 100%;
    }

    .testimonialsSlideTitle {
        width: 100%;
        line-height: 16px;
        font-size: 16px;
        margin-bottom: 75px;
    }

    .testimonialsSlideTestimonial {
        width: 100%;
        line-height: 20px;
        letter-spacing: 0px;
        font-weight: 400;
        font-size: 12px;
    }

    .itemServiceTitle {
        font-size: 25px;
        line-height: 25px;
        letter-spacing: 1px;
        font-weight: 600;
        margin: 0;
    }

    .itemServiceSubtitle {
        font-size: 16px;
        line-height: 16px;
        letter-spacing: 1px;
        font-weight: 400;
    }

    .homeHeaderSlideZoneLayerSubtitle {
        line-height: 20px;
        letter-spacing: 2px;
        font-weight: 400;
        font-size: 15px;
    }

    .ourJourneyLink {
        font-size: 14px;
        font-weight: 400;
        font-style: normal;
        margin: 20px 0;
    }

    .pageTitle {
        font-size: 40px;
        line-height: 43px;
    }

    .pageSubtitle {
        line-height: 20px;
        font-size: 15px;
    }

    .pageTitleInner {
        top: 55%;
    }

    .spinner {
        left: 45%;
    }

    #testimonialsNavigation {
        width: 268px;
        height: 56px;
    }

    .testimonialsNavigationOuter {
        height: 56px;
    }

    .testimonialsNavigationItem {
        height: 56px;
    }

    .splide__arrow--prev, .splide__arrow--next {
        width: 20px;
        height: 20px;
    }

    .splide__arrow--prev {
        left: -2em;
    }

    .splide__arrow--next {
        right: -2em;
    }

    .splide__arrow svg {
        height: 0.7em;
        width: 0.7em;
    }

    .itemShadowImage {
        height: 143px !important;
    }

    .relatedPosts {
        margin-left: 20px;
    }

    .navigationLinksContainer.smallNavigation {
        margin: 0;
        padding: 0;
        width: 0;
        height: 0;
    }
}