

/*/////////////////////////////////////////////////
                    Fonts
/////////////////////////////////////////////////*/

/*  Righteous  */

@font-face {
    font-family: 'Righteous';
    font-weight: 400;
    font-style: normal;
    src: url('/fonts/Righteous-Regular.ttf');
}

/*/////////////////////////////////////////////////
                  Structure
/////////////////////////////////////////////////*/

html {
    font-size: 16px;
}

body {
    background: #fff;
    color: #515d68;
    display: block;
    font-family: 'Basic-Sans', sans-serif;
    margin: 0;
    position: relative;
}

@media (max-width: 767px) {
    .container, .container-sm {
        max-width: 700px;
    }
}

.col-xs-8r,
.col-sm-8r,
.col-md-8r,
.col-lg-8r {
    position: relative;
    min-height: 1px;
    padding-right: 15px;
    padding-left: 15px;
}

.col-xs-8r {
    width: 12.5%;
    float: left;
}

@media (max-width: 567px) {
    .col-xs-4 {
        width: 50%;
    }
}

@media (min-width: 768px) {
    .col-sm-8r {
        width: 12.5%;
        float: left;
    }
}

@media (min-width: 992px) {
    .col-md-8r {
        width: 12.5%;
        float: left;
    }
}

@media (min-width: 1200px) {
    .col-lg-8r {
        width: 12.5%;
        float: left;
    }
}

@media screen and (min-width: 768px) {
    html {
        font-size: 16px;
    }
}

@media screen and (min-width: 1200px) {
    html {
        font-size: 17px;
    }
}

@media screen and (min-width: 1440px) {
    html {
        font-size: 18px;
    }

    .container {
        max-width: 1400px;
    }
}

@media screen and (min-width: 1600px) {
    html {
        font-size: 19px;
    }

    .container {
        max-width: 1600px;
    }
}

/*/////////////////////////////////////////////////
                 Typography
/////////////////////////////////////////////////*/

h1, .h1 {
    font-size: 3.25rem;
    font-weight: 700;
}

h2, .h2 {
    font-size: 2.2rem;
    font-weight: 700;
    margin-bottom: 1.5rem;
}

h3, .h3 {
    font-size: 1.6rem;
    font-weight: 700;
}

h4, .h4 {
    font-size: 1.4rem;
    font-weight: 700;
}

h5, .h5 {
    font-size: 1.2rem;
    font-weight: 700;
}

p, .paragraph {
    font-size: 1.1rem;
    font-weight: 400;
}

    p.large-spaced-text {
        font-size: 1.3rem;
        line-height: 3;
    }

a:link {
    border-bottom: solid 5px #f2d750;
    color: #484747;
    text-decoration: none;
    -webkit-transition: all .3s ease-out;
    -moz-transition: all .3s ease-out;
    -o-transition: all .3s ease-out;
    -ms-transition: all .3s ease-out;
    transition: all .3s ease-out;
}

a:visited {
    color: #484747;
    border-bottom: solid 5px #f2d750;
}

a:hover {
    border-bottom: solid 5px #efcf3a;
    color: #f2d750;
}

a.standard-btn:link, a.standard-btn {
    background: #f2d750;
    border: none;
    border-radius: 3px;
    color: #484747;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    font-size: 1rem;
    font-weight: 700;
    margin-top: 1rem;
    padding: 0.6rem 3rem 0.6rem 2rem;
    position: relative;
    text-decoration: none;
}

    a.standard-btn:visited {
        color: #484747;
    }

    a.standard-btn:hover {
        background: #efcf3a;
        color: #484747;
    }

    a.standard-btn:active {
        background: #f2d750;
        color: #484747;
    }

    a.standard-btn:focus {
        outline-color: #efcf3a;
    }

    a.standard-btn::after {
        content: " →";
        border: none;
        position: absolute;
        right: 1.5rem;
        transition: transform 250ms;
    }

    a.standard-btn:hover::after {
        transform: translate(.3rem);
    }

h1 span, h2 span, h3 span {
    color: #2a3285;
}

ul {
    list-style-type: none;
}

    ul li, ol li {
        margin-bottom: .25rem;
        padding-left: 2.5rem;
        position: relative;
    }

        ul li:before, ol li:before {
            content: "";
            width: 5px;
            height: 5px;
            background-color: #515d68;
            border-radius: 50px;
            position: absolute;
            top: 0.58rem;
            left: 1.4rem;
            display: inline-block;
        }

        ul li ul, ol li ul, ul li ol, ol li ol {
            margin-left: 0;
        }

@media (min-width: 768px) and (max-width: 991px) {
    h1 {
        font-size: 2.5rem;
    }

    h2 {
        font-size: 1.85rem;
    }
}

@media (min-width: 576px) and (max-width: 767px) {
    h1 {
        font-size: 2.5rem;
    }

    h2 {
        font-size: 1.85rem;
    }
}

@media (min-width: 420px) and (max-width: 575px) {
    h1 {
        font-size: 2rem;
    }

    h2 {
        font-size: 1.65rem;
    }

    p {
        font-size: 1rem;
    }
}

@media (min-width: 0px) and (max-width: 419px) {
    h1 {
        font-size: 2rem;
    }

    h2 {
        font-size: 1.865rem;
    }

    p {
        font-size: 1rem;
    }
}

/*/////////////////////////////////////////////////
                   Header
/////////////////////////////////////////////////*/

header {
    padding: 78px 0 2rem 0;
    display: none;
}

@media (min-width:768px) {
    header {
        padding-top: 52px;
    }
}

@media (min-width:992px) {
    header {
        display: block;
        background: #fff;        
    }
}

/*/////////////////////////////////////////////////
                    Site Banner
/////////////////////////////////////////////////*/

.site-banner {
    width: 100%;
    background: #f2d750;
    font-size: 14px;
    position: fixed;
    top:0;
    left:0;
    width: 100%;
    height:78px;
    z-index: 9999;
}

    .site-banner .container {
        padding-top: 8px;
        padding-bottom: 8px;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 10px;
        text-align: center;
    }

.site-banner-text {
    margin: 0;
    font-size: inherit;
    color: #484747;
    padding: 0;
}

.site-banner-text p {
    margin-bottom: 0;
    font-size: 14px;
}

a.site-banner-button:link, a.site-banner-button:visited {
    color: inherit;
    font-weight: 700;
    background: #fff;
    padding: 0.3rem 2rem 0.3rem 1rem;
    border-bottom: none;
    position: relative;
    border-radius: 0.2rem;
    margin-left: 0.5rem;
}

a.site-banner-button:hover, a.site-banner-button:active, a.site-banner-button:focus {
    background: #f1f1f1;
}

a.site-banner-button::after {
    content: " →";
    border: none;
    position: absolute;
    right: 0.8rem;
    transition: transform 250ms;
}

a.site-banner-button:hover::after {
    transform: translate(.3rem);
}


@media (min-width: 768px) {
    .site-banner {
        font-size: 16px;
        height: 52px;
    }

    .site-banner p {
        font-size: 16px;
    }

        .site-banner .container {
            flex-direction: row; /* side by side */
            gap: 12px;
        }
}

/*/////////////////////////////////////////////////
                Module Anchors
/////////////////////////////////////////////////*/

.module-anchor {
    scroll-margin-top: 78px; /* matches .site-banner height */
}

@media (min-width: 768px) {
    .module-anchor {
        scroll-margin-top: 52px; /* matches .site-banner height at this breakpoint */
    }
}




/*/////////////////////////////////////////////////
               Mobile Navigation
/////////////////////////////////////////////////*/

#mobile-nav {
    display: none;
}

    #mobile-nav.mm-opened {
        display: block;
    }

.mobile-header {
    position: relative;
    z-index: 1000;
    background: rgba(0,0,0,0);
    padding: 0;
    height: 75px;
    top: 0;
    width: 100%;
    background: #fff;
    transition: background 0.5s;
    margin-top: 78px;
}

.mobile-header-content {
    position: relative;
}

.mobile-logo img {
    margin: 1.1rem 0;
    max-width: 5.8rem;
}

.mobile-header .mobile-logo a {
    border: none;
    display: inline-block;
    padding: 0;
}

.mobile-header .nav-toggle {
    position: absolute;
    right: 0;
    top: 0;
    width: 2.75rem;
    height: 100%;
}

    .mobile-header .nav-toggle button#trigger-overlay {
        display: inline-block;
        color: #00A977;
        border: none;
        outline: none;
        width: 2.75rem;
        height: 100%;
        background: none;
    }

#nav-icon4 span {
    display: block;
    position: absolute;
    height: 9px;
    width: 100%;
    background: #F2D750;
    border-radius: 9px;
    opacity: 1;
    left: 0;
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-transition: .25s ease-in-out;
    -moz-transition: .25s ease-in-out;
    -o-transition: .25s ease-in-out;
    transition: .25s ease-in-out;
}

#nav-icon4 {
    width: 30px;
    height: 29px;
    position: relative;
    margin: 14px auto;
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-transition: .5s ease-in-out;
    -moz-transition: .5s ease-in-out;
    -o-transition: .5s ease-in-out;
    transition: .5s ease-in-out;
    cursor: pointer;
}

    #nav-icon4 span {
        display: block;
        position: absolute;
        height: 4px;
        width: 100%;
        background: #F2D750;
        border-radius: 4px;
        opacity: 1;
        left: 0;
        -webkit-transform: rotate(0deg);
        -moz-transform: rotate(0deg);
        -o-transform: rotate(0deg);
        transform: rotate(0deg);
        -webkit-transition: .25s ease-in-out;
        -moz-transition: .25s ease-in-out;
        -o-transition: .25s ease-in-out;
        transition: .25s ease-in-out;
    }


        #nav-icon4 span:nth-child(1) {
            top: 0px;
            -webkit-transform-origin: left center;
            -moz-transform-origin: left center;
            -o-transform-origin: left center;
            transform-origin: left center;
        }

        #nav-icon4 span:nth-child(2) {
            top: 9px;
            -webkit-transform-origin: left center;
            -moz-transform-origin: left center;
            -o-transform-origin: left center;
            transform-origin: left center;
        }

        #nav-icon4 span:nth-child(3) {
            top: 18px;
            -webkit-transform-origin: left center;
            -moz-transform-origin: left center;
            -o-transform-origin: left center;
            transform-origin: left center;
        }

    #nav-icon4.open span:nth-child(1) {
        -webkit-transform: rotate(45deg);
        -moz-transform: rotate(45deg);
        -o-transform: rotate(45deg);
        transform: rotate(45deg);
        top: -3px;
        left: 8px;
    }

    #nav-icon4.open span:nth-child(2) {
        width: 0%;
        opacity: 0;
    }

    #nav-icon4.open span:nth-child(3) {
        -webkit-transform: rotate(-45deg);
        -moz-transform: rotate(-45deg);
        -o-transform: rotate(-45deg);
        transform: rotate(-45deg);
        top: 18px;
        left: 8px;
    }

.overlay {
    position: fixed;
    z-index: 99;
    width: 100%;
    height: calc(100% - 140px);
    bottom: 0;
    left: 0;
    background: #fff;
    overflow: scroll;
}

    .overlay nav {
        text-align: left;
        position: relative;
        top: 0px;
        height: auto;
        min-height: 100.5%;
    }

    .overlay ul {
        list-style: none;
        padding: 0;
        margin: 0 auto;
        display: block;
        position: relative;
    }

        .overlay ul li {
            position: relative;
            display: block;
            height: auto;
            padding: 0;
            margin-bottom: 0;
            text-align: center;
        }

            .overlay ul li:before {
                display: none;
            }

            .overlay ul li .overlay-child-item {
                display: inline-block;
                position: relative;
            }

            .overlay ul li a, .overlay ul li span {
                border: none;
                display: inline-block;
                font-weight: 700;
                text-align: center;
                padding: 0.94rem 1.25rem;
                background: none;
                -webkit-transition: color 0.2s;
                transition: color 0.2s;
                line-height: 1;
                font-size: 1.89rem;
                text-decoration: none;
                position: relative;
            }

                .overlay ul li a:hover,
                .overlay ul li a:focus {
                    color: #000;
                }

                .overlay ul li a span {
                    font-size: 0.6rem;
                    background-color: #F16164;
                    color: #000;
                    padding: 3px 5px;
                    border-radius: 20px;
                    position: absolute;
                    top: 21px;
                    margin-left: 5px;
                }

                .overlay ul li span.overlay-dropdown-toggle:before {
                    position: absolute;
                    top: 1.5rem;
                    right: -0.5rem;
                    content: "\f0d7";
                    display: inline-block;
                    font: normal normal normal 14px/1 FontAwesome;
                    font-size: 1.24rem;
                    text-rendering: auto;
                    -webkit-font-smoothing: antialiased;
                    -moz-osx-font-smoothing: grayscale;
                    color: #fff;
                }

                .overlay ul li span.active:before {
                    content: "\f0d8";
                }

            .overlay ul li.active-page > span {
                color: #000;
            }

.overlay-dropdown-menu {
    display: none;
}

li.active-page > .overlay-child-item > .overlay-dropdown-menu {
    display: block;
}

.overlay .overlay-dropdown-menu ul li a {
    padding: 0.63rem 1.25rem;
    font-size: 1.13rem;
}

.overlay ul li.active-page > a, .overlay ul li.active-page .overlay-child-item > a {
    position: relative;
    color: #F2D750;
}

.overlay ul li a.overlay-name {
    margin-left: 56px;
}

.overlay .overlay-dropdown-menu[data-level="1"] ul li.active-page > a {
    color: #F2D750;
}

.overlay ul li.contact-info a:link {
    float: left;
    width: 50%;
    font-size: 1rem;
    padding-top: 2.81rem;
}

.overlay ul li.contact-info a.mob-nav-tel:link {
    font-weight: 400;
    text-align: right;
}

.overlay ul li.contact-info a.mob-nav-email:link {
    text-decoration: underline;
    text-align: left;
}

.overlay-ozum {
    opacity: 0;
    visibility: hidden;
    -webkit-transition: opacity 0.5s, visibility 0s 0.5s;
    transition: opacity 0.5s, visibility 0s 0.5s;
}

    .overlay-ozum.open {
        opacity: 1;
        visibility: visible;
        -webkit-transition: opacity 0.5s;
        transition: opacity 0.5s;
    }

    .overlay-ozum nav {
        -webkit-perspective: 1200px;
        perspective: 1200px;
    }

        .overlay-ozum nav ul {
            opacity: 0.4;
            -webkit-transform: translateY(-25%) rotateX(35deg);
            transform: translateY(-25%) rotateX(35deg);
            -webkit-transition: -webkit-transform 0.5s, opacity 0.5s;
            transition: transform 0.5s, opacity 0.5s;
        }

    .overlay-ozum.open nav ul {
        opacity: 1;
        -webkit-transform: rotateX(0deg);
        transform: rotateX(0deg);
        padding-bottom: 4.25rem;
    }

    .overlay-ozum.close nav ul {
        -webkit-transform: translateY(25%) rotateX(-35deg);
        transform: translateY(25%) rotateX(-35deg);
    }


@media (min-width:992px) {
    .mobile-header {
        display: none;
    }
}

.overlay-ozum {
    opacity: 0;
    visibility: hidden;
    -webkit-transition: opacity 0.5s, visibility 0s 0.5s;
    transition: opacity 0.5s, visibility 0s 0.5s;
}

    .overlay-ozum.open {
        opacity: 1;
        visibility: visible;
        -webkit-transition: opacity 0.5s;
        transition: opacity 0.5s;
    }

    .overlay-ozum nav {
        -webkit-perspective: 1200px;
        perspective: 1200px;
    }

        .overlay-ozum nav ul {
            opacity: 0.4;
            -webkit-transform: translateY(-25%) rotateX(35deg);
            transform: translateY(-25%) rotateX(35deg);
            -webkit-transition: -webkit-transform 0.5s, opacity 0.5s;
            transition: transform 0.5s, opacity 0.5s;
        }

    .overlay-ozum.open nav ul {
        opacity: 1;
        -webkit-transform: rotateX(0deg);
        transform: rotateX(0deg);
        padding-bottom: 4.25rem;
    }

    .overlay-ozum.close nav ul {
        -webkit-transform: translateY(25%) rotateX(-35deg);
        transform: translateY(25%) rotateX(-35deg);
    }

@media (min-width:992px) {
    .mobile-header {
        display: none;
    }
}

/*/////////////////////////////////////////////////
                   Navigation
/////////////////////////////////////////////////*/


.navbar-brand p {
    color: #F2D750;
    display: block;
    font-family: Righteous;
    font-size: 3.25rem;
}

.navbar-brand img {
    margin: 1rem 0;
    max-width: 7.3rem;
}

a.navbar-brand {
    text-decoration: none;
    display: inline-block;
    border-bottom: none;
}

.navbar-default .navbar-collapse {
    float: right;
}

.navigation-desktop {
    text-align: right;
}

    .navigation-desktop ul {
        display: block;
        list-style: none;
        padding: 2rem 0 1.3rem;
        margin: 0;
    }

        .navigation-desktop ul li {
            display: inline-block;
            line-height: normal;
            padding-left: 0;
        }

            .navigation-desktop ul li:before {
                display: none;
            }

            .navigation-desktop ul li a:link {
                border: none;
                display: inline-block;
                padding: 0.5rem;
                font-weight: 700;
                color: #484747;
                text-decoration: none;
            }

            .navigation-desktop ul li a:visited {
                border: none;
                color: #484747;
                text-decoration: none;
            }

            .navigation-desktop ul li a:hover, .navigation-desktop ul li a:hover > span {
                color: #F2D750;
                text-decoration: none;
            }

            .navigation-desktop ul li a:active {
                color: #F2D750;
                text-decoration: none;
            }

            .navigation-desktop ul li a:focus {
                color: #F2D750;
                text-decoration: none;
            }

            .navigation-desktop ul li:last-child {
                padding-right: 1.25rem;
            }

                .navigation-desktop ul li:last-child a::after {
                    content: " →";
                    color: #F2D750;
                    padding-left: .5rem;
                    position: absolute;
                    transition: transform 250ms;
                }

                .navigation-desktop ul li:last-child a:hover::after {
                    transform: translate(.3rem);
                }

    .navigation-desktop .navigation-overlay-container {
        display: none;
        position: absolute;
        border: 1px solid #e7e7e7;
        border-radius: 8px;
        min-width: 280px;
        text-align: left;
        padding: 0.6rem;
        background: #FFF;
        left: -1rem;
        top: 1.7rem;
        gap: 0.15rem;
        box-shadow: 0 12px 24px rgba(0, 0, 0, 0.08);
        transition: all .3s ease-in;
    }

    .navigation-desktop .navigation-overlay-container--two-col {
        min-width: 480px;
        grid-template-columns: repeat(2, 1fr);
    }

        .navigation-desktop .navigation-overlay-container > a:link, .navigation-desktop .navigation-overlay-container > a:visited {
            text-transform: none;
            display: flex;
            align-items: flex-start;
            gap: 0.7rem;
            padding: 0.5rem;
            border-radius: 6px;
        }

        .navigation-desktop .navigation-overlay-container > a:hover {
            background: #f7f7f2;
        }

    .navigation-overlay-icon {
        flex: none;
        width: 2rem;
        height: 2rem;
        display: flex;
        align-items: center;
        justify-content: center;
        border-radius: 6px;
        background: #faf3d9;
        color: #c9a227;
        font-size: 0.85rem;
        margin-top: 0.1rem;
    }

    .navigation-overlay-title {
        display: block;
        color: #29292b;
        font-size: 0.92rem;
        font-weight: 700;
    }

    .navigation-overlay-desc {
        display: block;
        color: #8a8a8a;
        font-size: 0.78rem;
        font-weight: 400;
        margin-top: 0.15rem;
        transition: all .3s ease-out;
        }

.overlay-ozum ul li .arrow-icon::after, .navbar-collapse ul li .arrow-icon::after {
    display: inline-block;
    background: url(/assets/i/menu-arrow-icon.svg);
    vertical-align: middle;
    background-size: 30px;
    width: 30px;
    height: 30px;
    content: "";
    transform: rotate(90deg);
}

.overlay-ozum ul li span {
    color: #484747;
}

.overlay-ozum ul li .arrow-icon--active::after {
    transform: rotate(-90deg);
}

@media (min-width: 1024px) and (max-width: 1199px) {
    ul li .arrow-icon::after {
        background-size: 20px;
        width: 20px;
        height: 20px;
    }
}

@media (min-width: 1024px) and (max-width: 1199px) {
    .navbar-brand img {
        margin: 1rem 0;
        max-width: 7.3rem;
    }
}

@media (min-width: 768px) and (max-width: 992px) {
    .navigation-desktop ul {
        padding: 1.8rem 0 1.2rem;
    }

    .navbar-brand img {
        margin: 1rem 0;
        max-width: 7.3rem;
    }
}

@media (min-width: 420px) and (max-width: 575px) {
    header {
        padding: 2rem 0 0;
    }
}

@media (min-width: 0px) and (max-width: 419px) {
    header {
        padding: 0;
    }

    .navbar-brand img {
        margin: 1rem 0;
        max-width: 5.8rem;
    }
}

.navigation-desktop .nav.navbar-nav .nav-dropdown > span {
    display: block;
    cursor: pointer;
    height: 32px;
    font-weight: 700;
    color: #484747;
}

.navigation-desktop .nav.navbar-nav .nav-dropdown:hover .navigation-overlay-container {
    display: grid;
}

.navigation-desktop .nav.navbar-nav .nav-dropdown:hover .arrow-icon::before {
    position: absolute;
    background: #f2d750;
    display: block;
    content: "";
    width: 100%;
    height: 4px;
    bottom: 0;
    left: -0.2rem;
}

.navigation-desktop .nav.navbar-nav .nav-dropdown:hover .arrow-icon::before {
    position: absolute;
    background: #f2d750;
    display: block;
    content: "";
    width: 100%;
    height: 4px;
    bottom: 0;
    left: -0.2rem;
}

.navigation-desktop .nav.navbar-nav .nav-dropdown:hover .arrow-icon::after {
    transform: rotate(-90deg);
}

.nav-dropdown-mobile {
    cursor: pointer;
}

.navigation-overlay-accordion {
    display: none;
}

.navigation-overlay-accordion--active {
    display: flex;
    flex-flow: column;
}

.overlay ul li .navigation-overlay-accordion > a {
    font-size: 1.3rem;
}

/*/////////////////////////////////////////////////
                   Footer
/////////////////////////////////////////////////*/
footer {
    border-top: solid 1px #eee;
    padding: 4rem 0 0;
}

    footer a:link {
        border: none;
        padding: 0;
    }

.motif {
    color: #f2d750;
    font-family: Righteous;
    font-size: 3.25rem;
    line-height: 1;
    margin: 0 0 0.7rem 0;
}

.footer-tagline {
    font-size: 1.8em;
    font-weight: 700;
    line-height: 1.2;
    max-width: 25rem;
}

.footer-addresses {
    display: flex;
    justify-content: flex-end;
    margin: 6rem 0 1.25rem;
    text-align: right;
}

.footer-address {
    padding-left: 3rem;
}

    .footer-address p {
        font-size: 1rem;
        line-height: 1.2;
    }

    .footer-address .location {
        font-size: 1.5rem;
        font-weight: 700;
    }

.footer-links {
    line-height: 1.2;
    list-style-type: none;
    margin: 0;
    padding: 0;
}

    .footer-links li {
        display: inline;
        font-size: 0.85rem;
        padding: 0 0.8rem;
        position: relative;
    }

        .footer-links li:before {
            background: #2B363F;
            content: "";
            display: block;
            height: 0.85rem;
            left: 0;
            position: absolute;
            top: 0.1rem;
            width: 1px;
        }

        .footer-links li:first-child {
            padding-left: 0;
        }

            .footer-links li:first-child:before {
                display: none;
            }

.footer-umbraco {
    display: inline-block;
    margin: -4.2rem 1rem 1rem 0;
    max-width: 10rem;
}

.footer-iso, .footer-cyber, .footer-greengrowth {
    display: inline-block;
    margin: -4.2rem 1rem 1rem 0;
    max-height: 3.5rem;
}

.footer-contact-details {
    list-style-type: none;
    line-height: 1.1;
    margin: 0 0 2rem;
    padding: 0;
    text-align: right;
}

    .footer-contact-details li {
        display: inline;
        padding: 0;
    }

        .footer-contact-details li:before {
            display: none;
        }

        .footer-contact-details li a {
            display: inline-block;
            font-size: 0.85rem;
            font-weight: 700;
            padding-right: 20px;
            position: relative;
        }

            .footer-contact-details li a:before {
                background: #2B363F;
                border-radius: 50%;
                content: "";
                display: block;
                height: 3px;
                right: 5px;
                position: absolute;
                top: 50%;
                transform: translate(-50%, -50%);
                width: 3px;
            }

        .footer-contact-details li:last-child a {
            padding-right: 0;
        }

            .footer-contact-details li:last-child a:before {
                display: none;
            }

.calendly-badge-widget {
   bottom: 75px !important;
   right: 40px !important;
}

@media (min-width: 768px) and (max-width: 992px) {
    footer {
        padding: 3rem 0 0;
    }

    .footer-links li {
        padding: 0 0.6rem;
    }

    .footer-umbraco, .footer-iso, .footer-cyber, .footer-greengrowth {
        max-height: 3rem;
        margin: 0 .2rem 1rem 0;
    }
}

@media (min-width: 420px) and (max-width: 767px) {
    footer {
        padding: 2rem 0 1rem;
    }

    .footer-addresses {
        justify-content: flex-start;
        margin: 1rem 0 0;
        text-align: left;
    }

    .footer-address {
        padding: 0 3rem 0 0;
    }

    .footer-contact-details {
        margin: 0 0 5.5rem;
        text-align: left;
    }

    .footer-address p.location {
        margin-bottom: .3rem;
    }

    .footer-links li {
        font-size: 0.8rem;
        padding: 0 0.4rem;
    }

      .footer-umbraco, .footer-iso, .footer-cyber, .footer-greengrowth {
        max-height: 3rem;
        margin: 0 .2rem 1rem 0;
    }

    .calendly-badge-widget {
     bottom: 15px !important;
     right: 20px !important;
    }
}

@media (min-width: 0px) and (max-width: 419px) {
    footer {
        padding: 2rem 0 1rem;
    }

    .footer-tagline {
        font-size: 1.5rem;
        max-width: 90%;
    }

    .footer-addresses {
        justify-content: flex-start;
        margin: 1rem 0 0.25rem;
        text-align: left;
    }

    .footer-address {
        padding: 0 3rem 0 0;
    }

    .footer-contact-details {
        margin: 0 0 5rem;
        text-align: left;
    }

    .footer-address .location {
        font-size: 1.3rem;
    }

    .footer-address p {
        font-size: .85rem;
    }

        .footer-address p.location {
            margin-bottom: 0;
        }

    .footer-contact-details {
        text-align: left;
    }

    .footer-umbraco {
        margin-bottom: 1rem;
        width: 6rem;
    }

    .footer-iso, .footer-cyber {
        max-height: 2.7rem;
        margin: -4.3rem .2rem 1rem 0;
    }

    .footer-links li {
        font-size: 0.8rem;
        padding: 0 0.4rem;
    }

      .footer-umbraco, .footer-iso, .footer-cyber, .footer-greengrowth {
        max-height: 3rem;
        margin: 0 .2rem 1rem 0;
    }

    .calendly-badge-widget {
     bottom: 15px !important;
     right: 20px !important;
    }
}


/*/////////////////////////////////////////////////
                    Lede
/////////////////////////////////////////////////*/

.lede {
    margin-bottom: 6rem;
}

    .lede h1 {
        font-size: 3.15rem;
        font-family: basic-sans,sans-serif;
        line-height: 1;
        margin-bottom: 0;
    }

    .lede p {
        font-size: 1.25rem;
        margin-top: 1.5rem;
        max-width: 70%;
    }

        .lede p.lede-brackets {
            font-family: basic-sans,sans-serif;
            font-weight: 300;
            font-style: italic;
            font-size: 1.5rem;
            margin-top: 0;
        }

            .lede p.lede-brackets:before {
                content: "(";
            }

            .lede p.lede-brackets:after {
                content: ")";
            }

.lede-large-text {
    font-family: basic-sans,sans-serif;
    font-weight: 600;
    font-size: 2rem;
}

.lede-logos {
    margin-top: 60px;
}

.lede-umbraco {
    display: inline-block;
    margin: 0 1rem 1rem 0;
    max-width: 13rem;
}

.lede-iso, .lede-cyber {
    display: inline-block;
    margin: 0 1rem 1rem 0;
    max-height: 4rem;
}


@media (min-width: 768px) and (max-width: 992px) {

    .lede-umbraco {
        margin: 0 .8rem 1rem 0;
        max-width: 12rem;
    }

    .lede-iso, .lede-cyber {
        max-height: 3.5rem;
        margin: 0 .8rem 1rem 0;
    }
}

@media (min-width: 420px) and (max-width: 767px) {
    .lede-umbraco {
        margin: 0 .6rem 1rem 0;
        max-width: 10rem;
    }

    .lede-iso, .lede-cyber {
        max-height: 3rem;
        margin: 0 .6rem 1rem 0;
    }
}

@media (min-width: 420px) and (max-width: 575px) {
    .lede {
        margin-bottom: 1rem;
    }

        .lede h1 {
            font-size: 2rem;
        }

    .lede-large-text {
        font-size: 1.4rem;
    }

    .lede p.lede-brackets {
        font-size: 0.9rem;
    }

    .lede p {
        font-size: 1rem;
        max-width: 100%;
    }
}

@media (min-width: 0px) and (max-width: 419px) {
    .lede {
        margin-bottom: 1rem;
    }

        .lede h1 {
            font-size: 2rem;
        }

    .lede-large-text {
        font-size: 1.4rem;
    }

    .lede p.lede-brackets {
        font-size: 0.9rem;
        line-height: 1.1;
        margin-top: .3rem;
    }

    .lede p {
        font-size: 1rem;
        max-width: 100%;
    }

    .lede-umbraco {
        margin: 0 .6rem 1rem 0;
        max-width: 7rem;
    }

    .lede-iso, .lede-cyber {
        max-height: 2.7rem;
        margin: 0 .6rem 1rem 0;
    }
}

/*/////////////////////////////////////////////////
                 Home Slider
/////////////////////////////////////////////////*/

.home-slider-wrapper {
    border-bottom: solid 2px #f2d750;
    padding: 0 0 5rem 0;
    position: relative;
    width: 100%;
    z-index: 10;
}

    .home-slider-wrapper::before {
        background-color: #88898c;
        bottom: 0;
        content: "";
        left: 0;
        position: absolute;
        top: 400px;
        width: 100%;
        z-index: 20;
    }

.home-slider {
    color: #fff;
    margin: 0 auto;
    max-width: 1920px;
    overflow: hidden;
    position: relative;
    width: 100%;
    z-index: 100;
}

.home-slider-content {
    max-width: 1920px;
    margin: 0 auto;
    width: 100%;
    visibility: hidden
}

.slick-initialized {
    visibility: visible;
}

.slider-image-wrapper {
    position: relative;
}

.slider-image {
    margin-bottom: 0.5rem;
    position: relative;
    z-index: 10;
    background: black;
    overflow: hidden;
    max-width: 1600px;
    width: 95%;
}

    .slider-image img:nth-child(1) {
        object-fit: cover;
    }

.slider-logo {
    position: absolute;
    bottom: 1rem;
    z-index: 20;
    width: 100%;
}

    .slider-logo img {
        max-width: 150px;
    }

.slider-tag {
    position: absolute;
    top: 100%;
    width: 100%;
}

    .slider-tag p {
        font-style: italic;
        width: 80%;
        font-weight: 300;
        margin-top: 1.2rem;
    }

    .slider-tag span {
        font-weight: 700;
    }

.experience-section {
    padding: 6rem 0 3rem;
    position: relative;
}

    .experience-section h2 {
        font-weight: 700;
        padding-bottom: 1rem;
    }

    .experience-section img {
        margin-top: 2rem;
    }

.experience-years {
    bottom: 3rem;
    line-height: 0.3;
    position: absolute;
    right: 0;
    text-align: right;
}

p.experience {
    color: #9fa0a2;
    font-size: 10rem;
    font-weight: 700;
}

p.years {
    color: #f2d750;
    font-family: p22-underground, sans-serif;
    font-size: 22rem;
    font-weight: 900;
    position: relative;
    z-index: 100;
}

    p.years > span:nth-child(1) {
        font-size: 22rem;
        margin-left: -1rem;
    }

    p.years > span:nth-child(2) {
        color: #fff;
        font-size: 2.85rem;
        display: block;
        transform: translateY(-5rem);
    }

    p.years sup {
        left: 0.6rem;
        position: relative;
        top: -0.37em;
        vertical-align: baseline;
    }

.home-slider .slick-track {
    display: flex !important;
}

.home-slider .slick-slide {
    height: inherit !important;
}

.home-slider .slick-list {
    margin: 0 -2rem;
    overflow: visible;
}

.home-slider .slick-slide {
    height: 100vh;
    margin: 0 2rem;
    outline: none;
}

.home-dots {
    margin-top: 1.3rem;
}

.home-slick-dots {
    list-style: none;
    display: block;
    margin-left: 0;
    max-width: 1600px;
    text-align: right;
    padding: 0;
    width: 95.7%;
}

    .home-slick-dots li {
        position: relative;
        display: inline-block;
        height: 20px;
        width: 20px;
        margin: 0 4px;
        padding: 0;
        cursor: pointer;
    }

        .home-slick-dots li:before {
            display: none;
        }

        .home-slick-dots li button {
            border: 0;
            background: transparent;
            display: block;
            height: 20px;
            width: 20px;
            outline: none;
            line-height: 0;
            font-size: 0;
            color: transparent;
            padding: 5px;
            cursor: pointer;
        }

            .home-slick-dots li button:hover, .home-slick-dots li button:focus {
                outline: none;
            }

                .home-slick-dots li button:hover:before,
                .home-slick-dots li button:focus:before {
                    opacity: 1;
                }

            .home-slick-dots li button:before {
                position: absolute;
                top: 0;
                left: 0;
                content: "\2022";
                width: 20px;
                height: 20px;
                font-family: "slick";
                font-size: 3.4rem;
                text-align: center;
                color: #5a5a5d;
                -webkit-font-smoothing: antialiased;
                -moz-osx-font-smoothing: grayscale;
            }

        .home-slick-dots li.slick-active button:before {
            color: #f2d750;
        }

@media (min-width: 1200px) and (max-width: 1439px) {
    .home-carousel-item {
        width: 95%;
    }

    .slider-image {
        width: 95%;
    }

    p.experience {
        font-size: 7rem;
    }

    p.years {
        font-size: 18rem;
    }

        p.years > span:nth-child(2) {
            font-size: 2.85rem;
            transform: translateY(-3rem);
        }

        p.years sup {
            top: -0.30em;
        }
}

@media (min-width: 992px) and (max-width: 1199px) {
    .home-carousel-item {
        width: 95%;
    }

    .slider-image {
        width: 95%;
    }

    .experience-section {
        padding: 3.5rem 0 3rem;
    }

    p.experience {
        font-size: 6rem;
    }

    p.years {
        font-size: 16rem;
    }

        p.years > span:nth-child(1) {
            font-size: 16rem;
        }

        p.years > span:nth-child(2) {
            transform: translateY(-3rem);
        }
}

@media (min-width: 768px) and (max-width: 991px) {
    .home-carousel-item {
        width: 95%;
    }

    .slider-image {
        width: 95%;
    }

    .home-slider-wrapper {
        padding: 0 0 4rem 0;
    }

        .home-slider-wrapper::before {
            top: 180px;
        }

    .experience-section {
        padding: 4rem 0 3rem;
    }

        .experience-section img {
            max-width: 200px;
        }

    .experience-years {
        bottom: 1rem;
        right: 1rem;
    }

    p.experience {
        font-size: 5rem;
    }

    p.years {
        font-size: 10rem;
    }

        p.years > span:nth-child(1) {
            font-size: 10rem;
        }

        p.years > span:nth-child(2) {
            font-size: 1.1rem;
            transform: translateY(-2.6rem);
        }

    .home-dots {
        margin-top: 0.7rem;
    }

    .home-slick-dots li {
        margin: 0;
    }

    .slider-tag p {
        width: 78%;
        margin-top: 0.5rem;
    }
}

@media (min-width: 576px) and (max-width: 767px) {
    .slider-image {
        width: 95%;
    }

    .home-slider-wrapper::before {
        top: 180px;
    }

    .experience-section {
        padding: 3rem 0 3rem;
    }

        .experience-section img {
            margin-top: 1.2rem;
            max-width: 200px;
        }

    .experience-years {
        margin-top: 4rem;
        position: unset;
    }

    p.experience {
        font-size: 4rem;
    }

    p.years {
        font-size: 10rem;
    }

        p.years > span:nth-child(1) {
            font-size: 10rem;
        }

        p.years > span:nth-child(2) {
            font-size: 1.15rem;
            transform: translateY(-2.6rem);
        }

        p.years sup {
            top: -0.37em;
        }

    .home-dots {
        margin-top: 0.8rem;
    }

    .home-slick-dots li {
        margin: 0;
    }

    .slider-tag p {
        width: 75%;
        margin-top: 0.5rem;
    }
}

@media (min-width: 0px) and (max-width: 575px) {

    .slider-image {
        width: 95%;
    }

    .home-slider-wrapper {
        padding: 0 0 1rem 0;
    }

        .home-slider-wrapper::before {
            top: 80px;
        }

    .slider-logo {
        position: absolute;
        bottom: 0.5rem;
        width: 50%;
        z-index: 20;
    }

        .slider-logo img {
            max-width: 110px;
        }

    .experience-section {
        padding: 3rem 0 3rem;
    }

        .experience-section img {
            margin-top: 1.2rem;
            max-width: 180px;
        }

    .experience-years {
        margin-top: 4rem;
        position: unset;
    }

    p.experience {
        font-size: 3.5rem;
    }

    p.years {
        font-size: 8rem;
    }

        p.years > span:nth-child(1) {
            font-size: 8rem;
        }

        p.years > span:nth-child(2) {
            font-size: .85rem;
            transform: translateY(-2rem);
        }

        p.years sup {
            top: -0.37em;
        }

    .home-slick-dots li {
        margin: 0;
    }

    .home-dots {
        margin-top: 0.5rem;
    }

    .slider-tag p {
        width: 70%;
        margin-top: 0.2rem;
    }
}

/*/////////////////////////////////////////////////
            Choose Your Path
/////////////////////////////////////////////////*/

.choose-your-path {
    background: url(../assets/i/shapes.png), url(../assets/i/waves.png) repeat-x #f1f1f1;
    background-position: center bottom -242px;
    padding: 3rem 0;
    text-align: center;
}

    .choose-your-path h2::before {
        background-size: 100px 100px;
        background: url(../assets/i/path-arrow.svg);
        content: '';
        display: inline-block;
        height: 100px;
        width: 100px;
        vertical-align: text-top;
    }

    .choose-your-path h2::after {
        background-size: 100px 100px;
        background: url(../assets/i/path-arrow.svg);
        content: '';
        display: inline-block;
        height: 100px;
        width: 100px;
        transform: rotateY(180deg);
        vertical-align: text-top;
    }

.path {
    background: #fff;
    box-shadow: -1px 2px 13px 0px rgba(197,188,188,0.75);
    -webkit-box-shadow: -1px 2px 13px 0px rgba(197,188,188,0.75);
    -moz-box-shadow: -1px 2px 13px 0px rgba(197,188,188,0.75);
    padding: 4rem 2rem;
    position: relative;
}

    .path h3 {
        margin-bottom: 1rem;
    }

    .path span {
        background-color: #f2d750;
        padding: 0.15rem 0.5rem;
    }

.path-logo {
    margin: 3rem 0;
}


.umbraco-support-page .client-logos {
    margin-top: 50px;
}

.client-logos {
    background: #fff;
}

    .client-logos p {
        color: #959595;
        font-size: 1.25rem;
        font-weight: 600;
        margin-bottom: 2rem;
    }

.client-logo {
    height: 80px;
    padding: 0 0 1.5rem;
    position: relative;
}

    .client-logo img {
        position: absolute;
        left: 50%;
        top: 50%;
        transform: translate(-50%, -50%);
        max-width: 100%;
        max-height: 80%;
    }

@media (min-width: 992px) and (max-width: 1440px) {
    .path-logo img {
        max-width: 90%;
    }
}

@media (min-width: 768px) and (max-width: 991px) {
    .path {
        padding: 3rem 2rem;
    }

    .path-logo {
        margin: 1.5rem 0;
    }

        .path-logo img {
            max-width: 20%;
        }
}

@media (min-width: 420px) and (max-width: 767px) {
    .choose-your-path h2::before {
        display: none;
    }

    .choose-your-path h2::after {
        display: none;
    }

    .path {
        padding: 3rem 2rem;
    }

    .path-logo {
        margin: 1.5rem 0;
    }

        .path-logo img {
            max-width: 25%;
        }
}

@media (min-width: 0px) and (max-width: 419px) {
    .choose-your-path h2 {
        margin-bottom: 2rem;
    }

        .choose-your-path h2::before {
            display: none;
        }

        .choose-your-path h2::after {
            display: none;
        }

    .path {
        padding: 2.5rem 2rem;
    }

    .path-logo {
        margin: 1rem 0;
    }

        .path-logo img {
            max-width: 25%;
        }
}

/*/////////////////////////////////////////////////
            Text Section
/////////////////////////////////////////////////*/

.text-section {
    padding: 1rem 0 2.5rem 0;
    text-align: center;
}

.text-section a.standard-btn:link {
    margin: 0 0.8rem;
}

.text-section-home {
    padding: 2.5rem 0 3rem;
}

@media (min-width: 992px) and (max-width: 1199px) {
    .text-section {
        padding: 0 0 1.5rem 0;
    }

    .text-section-home {
        padding: 1.5rem 0 2rem 0;
    }
}

@media (min-width: 768px) and (max-width: 992px) {
    .text-section {
        padding: 0 0 1.5rem 0;
    }

    .text-section-home {
        padding: 1rem 0 1.5rem 0;
    }
}

@media (min-width: 420px) and (max-width: 575px) {
    .text-section {
        padding: 1rem 0 2rem;
        text-align: left;
    }

        .text-section a.standard-btn:link {
            margin: 0 0.8rem 0 0;
        }
}

@media (min-width: 0px) and (max-width: 419px) {
    .text-section {
        padding: 1rem 0 2rem;
        text-align: left;
    }

        .text-section a.standard-btn:link {
            margin: 0 0.8rem 0 0;
        }
}


/*/////////////////////////////////////////////////
        Trusted Clients Carousel
/////////////////////////////////////////////////*/

.trusted-clients-carousel {
    background-color: #88898c;
    color: #fff;
    padding: 4rem 0;
    position: relative;
    overflow: hidden;
}

    .trusted-clients-carousel h2 {
        margin-bottom: 4rem;
        text-align: center;
    }

.trusted-carousel-contents {
    max-width: 1300px;
    margin: 0 auto;
    cursor: grab;
}

.carousel-number {
    font-size: 1.1rem;
    margin: 0;
}

    .carousel-number span {
        color: #f2d750;
        font-size: 1.5rem;
    }

.carousel-title {
    font-size: 3.25rem;
    font-weight: 700;
    line-height: 1;
    max-width: 30rem;
}

.trusted-client-content p {
    width: 48%;
}

.trusted-client-details .carousel-screenshot {
    padding-right: 0.2rem;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 50%;
}

.trusted-client-details {
    background: #7c7c7f;
    border-left: solid 3px #f2d750;
    margin: 1rem 0 1.6rem;
    padding: 2rem;
    position: relative;
}

    .trusted-client-details .carousel-tags {
        width: 48%;
        margin-bottom: 20px;
    }

        .trusted-client-details .carousel-tags span {
            background-color: #fff;
            color: #000;
            text-transform: uppercase;
            font-size: 14px;
            font-weight: 700;
            padding: 2px 7px;
            margin-right: 5px;
            margin-bottom: 5px;
            display: inline-block;
        }

.trusted-clients-carousel .slick-list {
    margin: 0 -2rem;
    overflow: visible;
}

.trusted-clients-carousel .slick-slide {
    margin: 0 2rem;
    outline: none;
}

.trusted-clients-carousel .slick-dots {
    bottom: 0;
    list-style: none;
    display: block;
    margin-left: 0;
    text-align: center;
    padding: 3rem 0 0 0;
    width: 100%;
}

    .trusted-clients-carousel .slick-dots li {
        position: relative;
        display: inline-block;
        height: 20px;
        width: 56px;
        margin: 0 8px;
        padding: 0;
        cursor: pointer;
    }

        .trusted-clients-carousel .slick-dots li:before {
            display: none;
        }

        .trusted-clients-carousel .slick-dots li button {
            border: 0;
            background: #5a5a5d;
            display: block;
            height: 10px;
            width: 56px;
            outline: none;
            line-height: 0;
            font-size: 0;
            color: transparent;
            cursor: pointer;
        }

        .trusted-clients-carousel .slick-dots li.slick-active button {
            background-color: #f2d750;
        }

@media (min-width: 1200px) and (max-width: 1440px) {
    .trusted-clients-carousel::before, .trusted-clients-carousel::after {
        display: none;
    }


    .carousel-number {
        font-size: 0.9rem;
    }

        .carousel-number span {
            font-size: 1.2rem;
        }

    .carousel-title {
        font-size: 3rem;
    }

    .trusted-client-content p {
        width: 50%;
    }
}

@media (min-width: 992px) and (max-width: 1199px) {
    .trusted-clients-carousel::before, .trusted-clients-carousel::after {
        display: none;
    }

    .carousel-number {
        font-size: 0.9rem;
    }

        .carousel-number span {
            font-size: 1.2rem;
        }

    .carousel-title {
        font-size: 3rem;
    }

    .trusted-client-content {
        margin: 0 0 1rem;
    }

        .trusted-client-content p {
            width: 45%;
        }

    .trusted-clients-carousel .slick-dots {
        bottom: -60px;
    }
}


@media (min-width: 768px) and (max-width: 991px) {
    .trusted-clients-carousel::before, .trusted-clients-carousel::after {
        display: none;
    }

    .carousel-number {
        font-size: 0.9rem;
    }

        .carousel-number span {
            font-size: 1.2rem;
        }

    .carousel-title {
        font-size: 2.2rem;
    }

    .trusted-client-content {
        margin: 0 0 1rem;
    }

    .trusted-client-details .carousel-tags {
        width: 100%;
    }

    .trusted-client-content p {
        width: 100%;
    }

    .trusted-client-details .carousel-screenshot {
        position: relative;
        transform: unset;
        width: 100%;
    }

    .trusted-clients-carousel {
        padding: 3rem 0;
    }

        .trusted-clients-carousel h2 {
            margin-bottom: 2rem;
        }

        .trusted-clients-carousel .slick-dots {
            padding: 2rem 0 0 0;
        }
}

@media (min-width: 420px) and (max-width: 767px) {
    .trusted-clients-carousel::before, .trusted-clients-carousel::after {
        display: none;
    }

    .carousel-number {
        font-size: 0.9rem;
    }

        .carousel-number span {
            font-size: 1.2rem;
        }

    .carousel-title {
        font-size: 2.2rem;
    }

    .trusted-clients-carousel {
        padding: 3rem 0;
    }

        .trusted-clients-carousel h2 {
            margin-bottom: 2rem;
        }

    .trusted-client-details .carousel-tags {
        width: 100%;
    }

    .trusted-client-content p {
        width: 100%;
    }

    .trusted-client-details {
        padding: 1.5rem;
    }

        .trusted-client-details .carousel-screenshot {
            position: relative;
            transform: unset;
            width: 100%;
        }
}

@media (min-width: 0px) and (max-width: 419px) {
    .trusted-clients-carousel::before, .trusted-clients-carousel::after {
        display: none;
    }

    .carousel-number {
        font-size: 0.9rem;
    }

        .carousel-number span {
            font-size: 1.2rem;
        }

    .carousel-title {
        font-size: 2.2rem;
    }

    .trusted-clients-carousel {
        padding: 3rem 0;
    }

        .trusted-clients-carousel h2 {
            margin-bottom: 2rem;
        }

    .trusted-client-details {
        margin: 1rem 0;
        padding: 1.5rem;
    }

        .trusted-client-details .carousel-tags {
            width: 100%;
        }

    .trusted-client-content p {
        width: 100%;
    }

    .trusted-client-details .carousel-screenshot {
        position: relative;
        transform: unset;
        width: 100%;
    }
}

/*/////////////////////////////////////////////////
            Outro CTA
/////////////////////////////////////////////////*/

.outro-cta {
    margin: 0 auto;
    max-width: 80%;
    padding: 5rem 0 1rem 0;
    text-align: center;
}

    .outro-cta h2 {
        margin-bottom: 2rem;
    }

@media (min-width: 0px) and (max-width: 419px) {
    .outro-cta {
        padding: 2rem 0;
    }

        .outro-cta h2 {
            margin-bottom: 1rem;
        }
}

@media (min-width: 420px) and (max-width: 575px) {
    .outro-cta {
        padding: 2rem 0;
    }

        .outro-cta h2 {
            margin-bottom: 1rem;
        }
}

@media (min-width: 576px) and (max-width: 992px) {
    .outro-cta {
        padding: 3rem 0 2rem 0;
    }

        .outro-cta h2 {
            margin-bottom: 2rem;
        }
}

/*/////////////////////////////////////////////////
            Image Grid with Text
/////////////////////////////////////////////////*/

.image-grid-text {
    height: auto;
    margin-top: -2.4rem;
    padding: 11rem 0 6rem 0;
    position: relative;
    z-index: 0;
}

    .image-grid-text::before {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        opacity: .6;
        z-index: -1;
        background: url(/assets/i/papyrus.png) repeat;
    }

.image-text {
    padding-top: 4rem;
}

    .image-text img {
        margin-top: 2rem;
        max-width: 235px;
    }

.image-grid-text .image-grid img {
    box-shadow: -1px 2px 13px 0px rgba(197,188,188,0.75);
    -webkit-box-shadow: -1px 2px 13px 0px rgba(197,188,188,0.75);
    -moz-box-shadow: -1px 2px 13px 0px rgba(197,188,188,0.75);
}

.image-grid {
    position: relative;
}

    .image-grid img {
        width: 100%;
    }

.image-grid-top {
    display: flex;
    justify-content: flex-start;
    align-items: flex-end;
    margin-right: 5rem;
    margin-bottom: 1rem;
}

.image-grid .photo-top-left {
    display: inline-block;
    margin-right: 1rem;
}

.image-grid .photo-top-right {
    display: inline-block;
}

.image-grid-bottom {
    display: flex;
    justify-content: flex-end;
    align-items: flex-start;
    margin-left: 5rem;
}

.image-grid .photo-bottom-left {
    display: inline-block;
    margin-right: 1rem;
}

.image-grid .photo-bottom-right {
    display: inline-block;
}

.photo-top-left {
    width: 72%;
}

.photo-top-right {
    width: 27%;
}

.photo-bottom-left {
    width: 27%;
}

.photo-bottom-right {
    width: 72%;
}

@media (min-width: 1200px) and (max-width: 1440px) {
    .image-grid-text {
        margin-top: -2.4rem;
        padding-top: 5rem;
    }
}

@media (min-width: 993px) and (max-width: 1199px) {
    .image-grid-text {
        margin-top: -1.45rem;
        padding-top: 5rem;
    }

    .image-grid {
        margin-top: 3rem;
    }
}

@media (min-width: 768px) and (max-width: 992px) {
    .image-grid-text {
        margin-top: -1.45rem;
        padding-top: 5rem;
    }

    .image-text {
        padding-top: 0;
    }

        .image-text img {
            display: block;
            margin-top: 2rem;
        }

    .image-grid {
        margin-top: 3rem;
    }
}

@media (min-width: 576px) and (max-width: 767px) {
    .image-grid-text {
        margin-top: -1.45rem;
        padding-top: 3rem;
    }

    .image-text {
        padding-top: 0;
    }

        .image-text img {
            margin-top: 2rem;
        }

    .image-grid {
        margin: 3rem auto 0 auto;
    }
}

@media (min-width: 420px) and (max-width: 575px) {
    .image-grid-text {
        margin-top: -2rem;
        padding: 3.5rem 0;
    }

    .image-text {
        padding-top: 0;
    }

        .image-text img {
            margin-top: 2rem;
        }

    .image-grid {
        margin: 3rem auto 0 auto;
    }
}

@media (min-width: 0px) and (max-width: 419px) {
    .image-grid-text {
        margin-top: -2.4rem;
        padding: 3.5rem 0;
    }

    .image-text {
        padding-top: 0;
    }

        .image-text img {
            margin-top: 2rem;
            width: 50%;
        }

    .image-grid {
        margin: 3rem 0 0 0;
    }
}

/*/////////////////////////////////////////////////
            Image Carousel
/////////////////////////////////////////////////*/

.image-carousel, .image-carousel-support {
    cursor: grab;
}

.image-carousel-wrapper {
    overflow: hidden;
    padding: 1rem 0;
    position: relative;
    z-index: 10;
}

    .image-carousel-wrapper::before {
        background: #ead55b;
        bottom: 2.5rem;
        content: "";
        left: 0;
        position: absolute;
        top: 190px;
        width: 100%;
    }

.image-carousel, .image-carousel-support {
    position: relative;
    z-index: 30;
}

    .image-carousel .slick-track, .image-carousel-support .slick-track {
        display: flex !important;
        align-items: center !important;
    }

.image-carousel-item.slick-slide {
    margin: 0 1.5rem;
}

.image-carousel .slick-list, .image-carousel-support .slick-list {
    overflow: visible;
}

.image-carousel .image-carousel-item-portrait, .image-carousel-support .image-carousel-item-portrait {
    outline: none;
}

.image-carousel .image-carousel-item-square, .image-carousel-support .image-carousel-item-square {
    margin-top: -4.5rem;
    outline: none;
}

.image-carousel .image-carousel-item-portrait-large, .image-carousel-support .image-carousel-portrait-large {
    margin-top: 7rem;
    outline: none;
}

.image-carousel .image-carousel-item-landscape, .image-carousel-support .image-carousel-item-landscape {
    margin-top: -6.25rem;
    outline: none;
}

.image-carousel .image-carousel-item-large-square, .image-carousel-support .image-carousel-item-large-square {
    margin-top: -3.65rem;
    outline: none;
}

@media (min-width: 992px) and (max-width: 1199px) {
    .image-carousel-wrapper::before {
        top: 115px;
        bottom: 1.5rem;
    }

    .image-carousel.slick-slide, .image-carousel-support.slick-slide {
        width: 50%;
    }

    .image-carousel-item.slick-slide {
        margin: 0 1rem;
    }

    .image-carousel .image-carousel-item-square, .image-carousel-support .image-carousel-item-square {
        margin-top: -2.5rem;
    }

    .image-carousel .image-carousel-item-portrait-large, .image-carousel-support .image-carousel-item-portrait-large {
        margin-top: 5rem;
    }

    .image-carousel .image-carousel-item-landscape, .image-carousel-support .image-carousel-item-landscape {
        margin-top: -4.75rem;
    }

    .image-carousel .image-carousel-item-large-square, .image-carousel-support .image-carousel-item-large-square {
        margin-top: -2.65rem;
    }

    .image-carousel-item-large-square img {
        width: 280px;
    }

    .image-carousel-item-portrait img {
        width: 250px;
    }

    .image-carousel-item-square img {
        width: 250px;
    }

    .image-carousel-item-landscape img {
        width: 350px;
    }
}

@media (min-width: 576px) and (max-width: 991px) {
    .image-carousel-wrapper::before {
        top: 115px;
        bottom: 1.5rem;
    }

    .image-carousel.slick-slide, .image-carousel-support.slick-slide {
        width: 50%;
    }

    .image-carousel-item.slick-slide {
        margin: 0 1rem;
    }

    .image-carousel .image-carousel-item-square, .image-carousel-support .image-carousel-item-square {
        margin-top: -1.8rem;
    }

    .image-carousel .image-carousel-item-portrait-large, .image-carousel-support .image-carousel-item-portrait-large {
        margin-top: 5rem;
    }

    .image-carousel .image-carousel-item-landscape, .image-carousel-support .item-carousel-item-large {
        margin-top: -3.75rem;
    }

    .image-carousel .image-carousel-item-large-square, .image-carousel-support .image-carousel-item-large-square {
        margin-top: 0rem;
    }

    .image-carousel-item-large-square img {
        width: 280px;
    }

    .image-carousel-item-portrait img {
        width: 250px;
    }

    .image-carousel-item-square img {
        width: 250px;
    }

    .image-carousel-item-landscape img {
        width: 350px;
    }
}

@media (min-width: 420px) and (max-width: 575px) {
    .image-carousel-wrapper::before {
        top: 115px;
        bottom: 1.5rem;
    }


    .image-carousel-item.slick-slide {
        margin: 0 .6rem;
    }

    .image-carousel .image-carousel-item-square, .image-carousel-support .image-carousel-item-square {
        margin-top: -2.5rem;
    }

    .image-carousel .image-carousel-item-portrait-large, .image-carousel-support .image-carousel-item-portrait-large {
        margin-top: 5rem;
    }

    .image-carousel .image-carousel-item-landscape, .image-carousel-support .image-carousel-item-landscape {
        margin-top: -4rem;
    }

    .image-carousel .image-carousel-item-large-square, .image-carousel-support .image-carousel-item-large-square {
        margin-top: -1rem;
    }

    .image-carousel-item-large-square img {
        width: 220px;
    }

    .image-carousel-item-portrait img {
        width: 200px;
    }

    .image-carousel-item-square img {
        width: 200px;
    }

    .image-carousel-item-landscape img {
        width: 280px;
    }
}

@media (min-width: 0px) and (max-width: 419px) {
    .image-carousel-wrapper::before {
        top: 65px;
    }

    .image-carousel-item.slick-slide {
        margin: 0 .6rem;
    }

    .image-carousel .image-carousel-item-square, .image-carousel-support .image-carousel-item-square {
        margin-top: -2rem;
    }

    .image-carousel .image-carousel-item-landscape, .image-carousel-support .image-carousel-item-landscape {
        margin-top: -3.75rem;
    }

    .image-carousel .image-carousel-item-large-square, .image-carousel-support .image-carousel-item-large-square {
        margin-top: -2.45rem;
    }

    .image-carousel-item-large-square img {
        width: 200px;
    }

    .image-carousel-item-portrait img {
        width: 155px;
    }

    .image-carousel-item-square img {
        width: 160px;
    }

    .image-carousel-item-landscape img {
        width: 230px;
    }
}

/*/////////////////////////////////////////////////
            Numbered Cards
/////////////////////////////////////////////////*/

.numbered-cards {
    margin: 0 0 3rem 0;
    position: relative;
    display: flex;
}

    .numbered-cards::before {
        background: #faf9f8 url(/assets/i/papyrus.png) repeat;
        content: "";
        opacity: 0.4;
        position: absolute;
        top: 5rem;
        left: 0;
        bottom: 6rem;
        right: 0;
        z-index: -1;
    }

    .numbered-cards .row > div {
        margin-bottom: 1.5rem;
    }

.numbered-card {
    background: #fff;
    box-shadow: -1px 2px 13px 0px rgba(197,188,188,0.75);
    -webkit-box-shadow: -1px 2px 13px 0px rgba(197,188,188,0.75);
    -moz-box-shadow: -1px 2px 13px 0px rgba(197,188,188,0.75);
    margin-bottom: 1.4rem;
    padding: 2.2rem;
    height: 100%;
    border-radius: .3rem;
    min-height: 300px;
}

    .numbered-card ul {
        padding-left: 0;
        margin-top: 20px;
    }

        .numbered-card ul li {
            padding-left: 40px;
            margin-bottom: 15px;
        }

            .numbered-card ul li:before {
                background: url(/assets/i/tick.svg) no-repeat;
                background-size: cover;
                width: 30px;
                height: 30px;
                position: absolute;
                top: 0;
                left: 0;
            }

.card-number {
    background: #ead55b;
    border-radius: 50%;
    font-size: 1.6rem;
    font-weight: 700;
    height: 4rem;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 4rem;
}

@media (min-width: 0px) and (max-width: 575px) {

    .numbered-cards {
        padding: 3rem 0 2rem;
    }

        .numbered-cards:before {
            top: 0;
            bottom: 0;
        }

    .numbered-card {
        margin: 0 auto;
        padding: 2rem;
        width: 95%;
    }

    .card-number {
        font-size: 1.2em;
        height: 2.5rem;
        width: 2.5rem;
        margin-bottom: 1.5rem;
    }
}

/*/////////////////////////////////////////////////
            Testimonial Slider
/////////////////////////////////////////////////*/

.testimonial-carousel-wrapper {
    height: auto;
    margin: 0 auto;
    padding-bottom: 1rem;
    position: relative;
    max-width: 1920px;
}

.testimonial-carousel {
    overflow: hidden;
}

.testimonial-slide {
    display: flex;
    justify-content: flex-end;
}

.testimonial-image {
    height: 45.375rem;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    width: 72%;
}

.testimonial-content-wrapper {
    min-height: 300px;
    bottom: 0;
    position: absolute;
    width: 100%;
}

.testimonial-content {
    background: #fff;
    margin-bottom: 3rem;
    padding: 5rem 4rem 4rem 5rem;
    position: relative;
    z-index: 2;
}

    .testimonial-content p {
        font-size: 1.3rem;
        font-weight: 600;
    }

        .testimonial-content p:first-of-type::before {
            color: #f9ecb5;
            content: "";
            background: url(/assets/i/quotation-right.png) no-repeat;
            background-size: 100%;
            height: 95px;
            width: 118px;
            opacity: 0.7;
            position: absolute;
            left: 1rem;
            top: 2.5rem;
            z-index: -1;
        }



.testimonial-name {
    font-weight: 700;
    line-height: normal;
    margin: 0;
}

.testimonial-role {
    font-weight: 700;
    line-height: normal;
}

    .testimonial-role span {
        color: #f2d750;
    }

.testimonial-arrows {
    margin: -4.5rem 0 0 3rem;
    position: relative;
    z-index: 100;
}

.testimonials-arrows img {
    width: 19px;
    height: 31px;
}

.testimonial-arrows ul {
    list-style-type: none;
    margin: 2rem 0;
}

    .testimonial-arrows ul li {
        color: #f2d750;
        display: inline;
        font-size: 2rem;
        padding: 0;
    }

        .testimonial-arrows ul li:before {
            display: none;
        }

        .testimonial-arrows ul li:hover, .testimonial-arrows ul li:active {
            color: #e3c946;
        }

        .testimonial-arrows ul li:visited {
            color: #f2d750;
        }

        .testimonial-arrows ul li:first-child {
            margin-right: 1.5rem;
        }

.testimonial-next, .testimonial-prev {
    cursor: pointer;
}

@media (min-width: 1440px) and (max-width: 1599px) {
    .testimonial-image {
        width: 80%;
    }
}

@media (min-width: 1200px) and (max-width: 1439px) {
    .testimonial-image {
        width: 80%;
    }
}

@media (min-width: 992px) and (max-width: 1199px) {
    .testimonial-image {
        width: 75%;
        height: 600px
    }

    .testimonial-content {
        padding: 5rem 3rem 3rem 5rem;
    }

        .testimonial-content p:first-of-type::before {
            background-size: 70%;
            position: absolute;
            left: 1.7rem;
            top: 3.5rem;
        }
}

@media (min-width: 768px) and (max-width: 991px) {
    .testimonial-slide {
        padding-bottom: 3rem;
    }

    .testimonial-image {
        height: 500px;
        width: 80%;
    }

    .testimonial-content {
        margin: 0;
        padding: 3.5rem 2rem 3rem 5rem;
    }

        .testimonial-content p:first-of-type::before {
            background-size: 70%;
            position: absolute;
            left: 1.7rem;
            top: 1.5rem;
        }
}

@media (min-width: 420px) and (max-width: 767px) {
    .testimonial-slide {
        padding-bottom: 12rem;
    }

    .testimonial-image {
        height: 300px;
        width: 85%;
    }

    .testimonial-content {
        margin: 0;
        padding: 2.3rem 1.5rem 3rem 2rem;
    }

        .testimonial-content p {
            font-size: 1rem;
            font-weight: 400;
        }

            .testimonial-content p.testimonial-name {
                font-weight: 700;
            }

            .testimonial-content p.testimonial-role {
                font-weight: 700;
            }

            .testimonial-content p:first-of-type::before {
                background-size: 50%;
                position: absolute;
                left: 0.5rem;
                top: 1rem;
            }

    .testimonial-arrows {
        margin: -4.5rem 0 0;
    }

        .testimonial-arrows ul li {
            font-size: 1.5rem;
        }

        .testimonial-arrows img {
            width: 13px;
        }
}

@media (min-width: 320px) and (max-width: 419px) {
    .testimonial-slide {
        padding-bottom: 15rem;
    }

    .testimonial-image {
        height: 240px;
        width: 85%;
    }

    .testimonial-content {
        margin: 0;
        padding: 2.3rem 1rem 3rem 1.6rem;
    }

        .testimonial-content p {
            font-size: 1rem;
            font-weight: 400;
        }

            .testimonial-content p.testimonial-name {
                font-weight: 700;
            }

            .testimonial-content p.testimonial-role {
                font-weight: 700;
            }

            .testimonial-content p:first-of-type::before {
                background-size: 50%;
                position: absolute;
                left: 0.5rem;
                top: 1rem;
            }

    .testimonial-arrows {
        margin: -4.5rem 0 0;
    }

        .testimonial-arrows ul li {
            font-size: 1.5rem;
        }

        .testimonial-arrows img {
            width: 12px;
        }
}


/*/ //////////////////////////////////////////////// 
                Image Text Section 
//////////////////////////////////////////////// /*/

.image-text-section {
    margin-bottom: 2rem;
}

.image-text-section--imageright .row {
    flex-direction: row-reverse;
}

.image-text-section img {
    height: 400px;
    width: 100%;
    object-fit: contain;
}

.image-text-content {
    margin-left: 5rem;
    position: relative;
}

.image-text-content-number {
    color: #f2d750;
    display: inline-block;
    font-weight: 700;
    font-size: 1.5rem;
    line-height: 1.8;
    margin: 0;
    position: absolute;
    left: -4rem;
}

@media (min-width: 768px) and (max-width: 991px) {

    .image-text-section img {
        height: 240px;
    }

    .image-text-content {
        margin-left: 2rem;
    }

    .image-text-content-number {
        left: -2.4rem;
        line-height: 1.7;
    }
}

@media (min-width: 420px) and (max-width: 767px) {

    .image-text-section img {
        height: 240px;
    }

    .image-text-content {
        margin-left: 2.5rem;
    }

    .image-text-content-number {
        left: -2.4rem;
        line-height: 1.1;
    }
}

@media (min-width: 0px) and (max-width: 419px) {

    .image-text-section img {
        height: 240px;
    }

    .image-text-content {
        margin-left: 2.2rem;
    }

    .image-text-content-number {
        left: -2.4rem;
        line-height: 1.1;
    }
}

/*/ //////////////////////////////////////////////// 
                     Profiles 
//////////////////////////////////////////////// /*/

.profiles {
    margin-bottom: 1rem;
}

.profile {
    margin-bottom: 0;
}

.profiles div:nth-of-type(2n+2) {
    margin-top: 1.5rem;
}

.profile img {
    box-shadow: -1px 2px 5px 0px rgba(197,188,188,0.75);
    -webkit-box-shadow: -1px 2px 5px 0px rgba(197,188,188,0.75);
    -moz-box-shadow: -1px 2px 5px 0px rgba(197,188,188,0.75);
    margin-bottom: 0.7rem;
}

.profile p {
    color: #bcbcbc;
}

.profile h3 {
    color: initial;
    font-weight: 700;
    font-size: 1.1rem;
    line-height: 1.1;
    margin: 0;
}

@media (min-width: 768px) {
    .profiles {
        margin-bottom: 2rem;
    }

        .profiles div:nth-of-type(2n+2) {
            margin: 0;
        }

        .profiles div:nth-of-type(3n+2) {
            margin-top: 2rem;
        }

    .profile {
        margin-bottom: 0;
    }

        .profile img {
            margin-bottom: 1rem;
        }

        .profile h3 {
            font-size: 1.2rem;
        }
}

@media (min-width: 991px) {
    .profile h3 {
        font-size: 1.3rem;
    }
}

/*/ //////////////////////////////////////////////// 
         Colour Alternating Image Text 
//////////////////////////////////////////////// /*/



.colour-alternating-image-text-wrapper {
    margin: 7rem 0;
    position: relative;
}

.colour-alternating-image-text {
    max-width: 1920px;
    margin: 0 auto;
}

    .colour-alternating-image-text .image-text-top, .colour-alternating-image-text .image-text-bottom {
        position: relative;
    }

    .colour-alternating-image-text .image-background {
        min-height: 20rem;
    }


    .colour-alternating-image-text p, .colour-alternating-image-text h3 {
        margin-bottom: 2rem;
        position: relative;
        z-index: 20;
    }

    .colour-alternating-image-text .image-text-top {
        background: #f2d750;
    }

        .colour-alternating-image-text .image-text-top::before {
            content: "";
            background: #f2d750;
            position: absolute;
            height: 2rem;
            top: -2rem;
            right: 0;
            width: 80%;
            z-index: 10;
        }

    .colour-alternating-image-text .row .colour-alternating-image-text-section {
        overflow: hidden;
        position: relative;
        padding: 3rem 1rem 0;
        min-height: 25rem;
    }

.image-text-top .colour-alternating-image-text-section::before {
    content: "You";
    color: #edd24b;
    font-size: 11rem;
    font-weight: 700;
    line-height: normal;
    position: absolute;
    top: -1rem;
    left: 1rem;
    z-index: 10;
}

.colour-alternating-image-text .image-text-bottom {
    background: #88898c;
    color: #fff;
}

.image-text-bottom .colour-alternating-image-text-section::before {
    content: "Us";
    color: #8e8e91;
    font-size: 11rem;
    font-weight: 700;
    line-height: normal;
    position: absolute;
    top: -1rem;
    left: 0;
    z-index: 10;
}

.colour-alternating-image-text .image-text-bottom::after {
    content: "";
    background: #88898c;
    position: absolute;
    height: 2rem;
    bottom: -2rem;
    left: 0;
    width: 80%;
    z-index: 10;
}

@media (min-width: 420px) {

    .colour-alternating-image-text .row .colour-alternating-image-text-section {
        min-height: 20rem;
    }

    .image-text-bottom .row .colour-alternating-image-text-section {
        padding: 3rem 1rem 1rem 1.5rem
    }
}

@media (min-width: 768px) {

    .colour-alternating-image-text .image-background {
        position: absolute;
        top: 0;
        left: 0;
        width: 50%;
        height: 100%;
    }

    .colour-alternating-image-text .image-text-bottom .image-background {
        right: 0;
        left: unset;
    }

    .image-text-top .colour-alternating-image-text-section::before {
        font-size: 12rem;
        top: -2rem;
    }

    .image-text-bottom .colour-alternating-image-text-section::before {
        font-size: 12rem;
        top: -2rem;
    }

    .colour-alternating-image-text .row .colour-alternating-image-text-section {
        overflow: hidden;
        position: relative;
        padding: 2.5rem 1rem 0 1.5rem;
        min-height: 25rem;
    }

    .image-text-bottom .row .colour-alternating-image-text-section {
        padding: 3rem 1rem 1rem 0;
    }
}

@media (min-width: 1024px) {
    .colour-alternating-image-text .row .colour-alternating-image-text-section {
        padding: 4rem 1rem 0 1.5rem;
    }

    .image-text-bottom .row .colour-alternating-image-text-section {
        padding: 4rem 1rem 1rem 0;
    }

    .image-text-top .colour-alternating-image-text-section::before {
        font-size: 16rem;
        top: -3rem;
    }

    .image-text-bottom .colour-alternating-image-text-section::before {
        font-size: 16rem;
        left: -.9rem;
        top: -2rem;
    }
}

@media (min-width: 1440px) {
    .colour-alternating-image-text .row .colour-alternating-image-text-section {
        padding: 6rem 3rem 0 1.25rem;
    }

    .image-text-bottom .row .colour-alternating-image-text-section {
        padding: 6rem 3rem 1rem 1.9rem;
    }

    .image-text-top .colour-alternating-image-text-section::before {
        font-size: 18rem;
        top: -3rem;
    }

    .image-text-bottom .colour-alternating-image-text-section::before {
        font-size: 18rem;
        left: 0rem;
        top: -2rem;
    }
}




/*/////////////////////////////////////////////////
                     Benefits
/////////////////////////////////////////////////*/

.benefits {
    overflow: hidden;
    padding: 1rem 0 3rem 0;
    position: relative;
}

.benefits--background::before {
    background: #faf9f8 url(/assets/i/papyrus.png) repeat;
    content: "";
    opacity: 0.4;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    top: 0;
    z-index: -1;
}

.benefits-intro {
    margin: 2rem auto;
    text-align: center;
}

.benefits-image {
    margin: 1rem 0;
}

.benefit-item {
    margin-left: 3rem;
    padding: 0.5rem 0 1rem 0.5rem;
    position: relative;
}

    .benefit-item h3 {
        font-size: .2rem;
    }

    .benefit-item:last-of-type {
        padding-bottom: 0;
    }

    .benefit-item::before {
        background-color: #faf9f8;
        border-radius: 50%;
        color: #f2d750;
        content: "+";
        font-size: 2.75rem;
        display: flex; /* or inline-flex */
        align-items: center;
        justify-content: center;
        height: 40px;
        width: 40px;
        position: absolute;
        left: -3.2rem;
        padding-bottom: .3rem;
        top: 0;
        z-index: 10;
    }

.benefits--background .benefit-item::before {
    background-color: #fff;
}

.benefit-item:not(:last-of-type)::after {
    content: "";
    display: block;
    position: absolute;
    z-index: 1;
    top: 0;
    left: -2rem;
    bottom: 0;
    border: 1px solid #f2d750;
    border-width: 0 0 0 1px;
}


@media (min-width: 320px) {
    .benefit-item h3 {
        font-size: 1.4rem;
    }
}

@media (min-width: 768px) {
    .benefits-intro {
        margin-bottom: 4rem;
    }

    .benefits-image {
        height: 100%;
        position: relative;
    }

        .benefits-image img {
            max-width: 45rem;
            position: absolute;
            top: 50%;
            transform: translateY(-50%);
        }

    .benefits--background .benefits-image img {
        right: 0;
        left: unset;
    }

    .benefit-item {
        padding: 0.6rem 0 1rem 0.5rem;
    }

        .benefit-item::before {
            font-size: 3rem;
            height: 45px;
            width: 45px;
            left: -3.35rem;
        }
}

@media (min-width: 1024px) {
    .benefits-image img {
        max-width: 55rem;
    }

    .benefit-item::before {
        font-size: 3.3rem;
        height: 50px;
        width: 50px;
        padding-bottom: .4rem;
        left: -3.55rem;
    }

    .benefit-item h3 {
        font-size: 1.6rem;
    }
}

@media (min-width: 1200px) {
    .benefits-image img {
        max-width: 55rem;
    }
}

@media (min-width: 1440px) {
    .benefits {
        padding: 3rem 0;
    }

    .benefit-item::before {
        left: -3.35rem;
    }

    .benefits-image img {
        max-width: 65rem;
    }
}

/*/////////////////////////////////////////////////
            Alternating Image/Text
/////////////////////////////////////////////////*/

.alternate-image-text-wrapper {
    margin: 4rem 0 0;
}

    .alternate-image-text-wrapper .row {
        margin-bottom: 2rem;
    }

.alternate-image-text {
    padding: 1rem 0 2rem 0;
}

    .alternate-image-text div {
        margin-bottom: 3rem;
    }

        .alternate-image-text div:last-of-type {
            margin-bottom: 0;
        }

    .alternate-image-text h3 {
        margin-bottom: 1.5rem;
    }

.alternate-image-text-wrapper img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.alternate-image-text-wrapper .umbraco-logo {
    margin: 1rem 0 1.5rem;
    height: unset;
    object-fit: unset;
    width: unset;
    max-width: 10rem;
}

@media (min-width: 425px) {
    .alternate-image-text {
        padding: 1rem 0;
    }
}

@media (min-width: 768px) {
    .alternate-image-text {
        padding: 1rem 0;
    }

        .alternate-image-text div {
            margin: 3rem 0;
        }
}

@media (min-width: 1024px) {
    .alternate-image-text-wrapper {
        margin: 4rem 0 3rem
    }

    .alternate-image-text {
        padding: 0 3rem;
    }
}

@media (min-width: 1440px) {
    .alternate-image-text-wrapper {
        margin: 8rem 0 0;
    }

    .alternate-image-text {
        padding: 0 3rem 0 6rem;
    }
}

/*/////////////////////////////////////////////////
        Case Study Banner
/////////////////////////////////////////////////*/

.case-study-banner {
    background-color: #88898c;
    color: #fff;
    padding: 4rem 0;
    overflow: hidden;
}

.case-study-banner-contents {
    max-width: 1300px;
    margin: 0 auto;
}

.case-study-location {
    color: #f2d750;
    font-size: .9rem;
    margin: 0;
}

.case-study-title {
    font-size: 2.25rem;
    font-weight: 700;
    line-height: 1;
    max-width: 30rem;
}

.case-study-content p {
    width: 50%;
}

.case-study-details .case-study-screenshot {
    padding-right: 0.2rem;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 50%;
}

.case-study-details {
    background: #7c7c7f;
    border-left: solid 3px #f2d750;
    margin: 1rem 0 1.6rem;
    padding: 2rem;
    position: relative;
}

    .case-study-details img.case-study-logo {
        margin-bottom: 1rem;
    }



@media (min-width: 1200px) and (max-width: 1440px) {
    .case-study-title {
        font-size: 3rem;
    }

    .case-study-banner-contents p {
        width: 50%;
    }
}

@media (min-width: 992px) and (max-width: 1199px) {

    .case-study-title {
        font-size: 3rem;
    }

    .case-study-banner-contents {
        margin: 0 0 1rem;
    }

        .case-study-banner-contents p {
            width: 45%;
        }
}


@media (min-width: 768px) and (max-width: 991px) {
    .case-study-title {
        font-size: 2rem;
    }

    .case-study-banner-contents {
        margin: 0 0 1rem;
    }

        .case-study-banner-contents p {
            width: 100%;
        }

    .case-study-details .case-study-screenshot {
        position: relative;
        transform: unset;
        width: 100%;
    }

    .case-study-banner {
        padding: 3rem 0;
    }
}

@media (min-width: 420px) and (max-width: 767px) {

    .case-study-title {
        font-size: 2rem;
    }

    .case-study-banner {
        padding: 3rem 0;
    }

    .case-study-banner-contents p {
        width: 100%;
    }

    .case-study-details {
        padding: 1.5rem;
    }

        .case-study-details .case-study-screenshot {
            position: relative;
            transform: unset;
            width: 100%;
        }
}

@media (min-width: 0px) and (max-width: 419px) {

    .case-study-title {
        font-size: 2rem;
    }

    .case-study-banner {
        padding: 3rem 0;
    }


    .case-study-details {
        margin: 1rem 0;
        padding: 1.5rem;
    }

    .case-study-banner-contents p {
        width: 100%;
    }

    .case-study-details .case-study-screenshot {
        position: relative;
        transform: unset;
        width: 100%;
    }
}


/*/////////////////////////////////////////////////
                Case Study Text 
/////////////////////////////////////////////////*/

.case-study-text h3 {
    padding-top: 8rem;
    margin-bottom: 1.8rem;
    position: relative;
}

    .case-study-text h3::before {
        content: "";
        border-left: 2px solid #F2D750;
        height: 6rem;
        opacity: 0.4;
        margin-top: .6rem;
        position: absolute;
        left: 50%;
        margin-left: -1px;
        top: 0;
    }

.case-study-text p {
    position: relative;
}

    .case-study-text p:last-of-type {
        margin-bottom: 2rem;
        padding-bottom: 7.8rem;
    }

        .case-study-text p:last-of-type::after {
            content: "";
            border-left: 2px solid #F2D750;
            height: 6rem;
            opacity: 0.4;
            position: absolute;
            left: 50%;
            margin-left: -1px;
            bottom: 0;
        }

@media (min-width: 993px) {
    .case-study-text {
        margin: 0 auto;
        max-width: 65%;
    }
}

/*/////////////////////////////////////////////////
              Work Overview
/////////////////////////////////////////////////*/

.case-study-banner.work-overview--case-study-banner {
    padding: 1.5rem 0;
}

.work-overview--case-study-banner .case-study-banner-contents {
    max-width: 1920px;
}

a.standard-btn.case-study-details-btn {
    margin-bottom: 2rem;
}

a.standard-btn.case-study-btn {
    display: none;
}

.work-overview {
    margin: 2rem 0;
}

.work-overview-item {
    margin: 0 0 3rem 0;
}

.work-overview-image {
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    margin: 0 0 1rem 0;
    z-index: 10;
}

.work-overview-logo {
    max-height: 40%;
    max-width: 70%;
    position: absolute;
    z-index: 100;
}

.work-overview-location {
    color: #484747;
    font-size: .7rem;
    margin: 0 0 1rem 0;
    background-color: #f7f7f7;
    display: inline-block;
    padding: .2rem 1rem .12rem 1rem;
    border-radius: .2rem;
    font-weight: 700;
    text-transform: uppercase;
}

@media (min-width: 768px) {

    .case-study-banner.work-overview--case-study-banner {
        padding: 4rem 0 3rem 0;
    }

    .work-overview {
        margin: 4rem 0;
    }

        .work-overview div:nth-of-type(2n+2) {
            margin-top: 3rem;
        }
}

@media (min-width: 1024px) {
    a.standard-btn.case-study-details-btn {
        display: none;
    }

    a.standard-btn.case-study-btn {
        display: inline-block;
    }

    .work-overview {
        margin: 5rem 0;
    }
}

@media (min-width: 1440px) {
    .case-study-banner.work-overview--case-study-banner {
        padding: 6rem 0;
    }
}

/*/////////////////////////////////////////////////
                    Case Study
/////////////////////////////////////////////////*/

.individual-case-study-banner {
    margin: 0 auto;
    max-width: 1920px;
}

.individual-case-study-overview {
    position: relative;
    height: 100%;
    margin: 0 auto;
    max-width: 1920px;
    z-index: 10;
    overflow: hidden;
}

.individual-case-study-overview-text {
    padding: 2rem 0;
    position: relative;
    z-index: 100;
    background: #faf9f9;
}

    .individual-case-study-overview-text:before {
        background: #faf9f9;
        content: "";
        display: block;
        height: inherit;
        left: -300px;
        position: absolute;
        width: 300px;
        top: 0;
        bottom: 0;
        z-index: 50;
    }

    .individual-case-study-overview-text:after {
        background: #faf9f9;
        content: "";
        display: block;
        height: inherit;
        right: -300px;
        position: absolute;
        width: 300px;
        top: 0;
        bottom: 0;
        z-index: 50;
    }

.individual-case-study-overview-details {
    background: #fff;
    height: 100%;
    padding: 1.5rem 1rem;
    position: relative;
    width: 100%;
    z-index: 100;
}

    .individual-case-study-overview-details dd {
        margin: 0 0 1.25rem 0;
    }

@media (min-width: 768px) {
    .individual-case-study-overview::before {
        width: 58.3333333333%;
    }

    .individual-case-study-overview-text {
        padding: 2.5rem 1.8rem 4rem 1rem;
    }

    .individual-case-study-overview-details {
        padding: 2.5rem 1rem 1.5rem 2rem;
    }

    .individual-case-study-overview-text:after {
        display: none;
    }
}

@media (min-width: 992px) {
    .individual-case-study-overview-text {
        padding: 3.5rem 2rem 3rem 1rem;
    }

    .individual-case-study-overview-details {
        padding: 3.5rem 1rem 1.5rem 3rem;
    }
}

@media (min-width: 1200px) {
    .individual-case-study-overview-text {
        padding: 4.5rem 3rem 4rem 1rem;
    }

    .individual-case-study-overview-details {
        padding: 4.5rem 1rem 1.5rem 5rem;
    }
}

/*/////////////////////////////////////////////////
                  Case Study Stats
/////////////////////////////////////////////////*/

.individual-case-study-stats {
    position: relative;
    height: auto;
    padding-bottom: 1rem;
}

.individual-case-study-laptop {
    background: #faf9f9;
    padding: 2rem 0 0 0;
}

    .individual-case-study-laptop img {
        max-width: 85%;
    }

.case-study-curve {
    position: relative;
    bottom: 0;
    left: 0;
    width: 100%;
    overflow: hidden;
    line-height: 0;
}

    .case-study-curve svg {
        position: relative;
        display: block;
        width: calc(100% + 1.3px);
        height: 50px;
    }

    .case-study-curve .shape-fill {
        fill: #FAF9F9;
    }

.case-study-stats {
    margin: 1.5rem 0;
}

    .case-study-stats dt {
        color: #F2D750;
        font-size: 1.8rem;
    }

    .case-study-stats dd {
        font-size: 0.8rem;
        font-weight: 700;
        line-height: 1.3;
    }

@media (min-width: 576px) {
    .case-study-curve svg {
        height: 60px;
    }

    .case-study-stats dt {
        font-size: 2.2rem;
        line-height: normal;
    }

    .case-study-stats dd {
        font-size: 0.9rem;
        font-weight: 700;
        line-height: 1.3;
    }
}

@media (min-width: 768px) {
    .individual-case-study-laptop {
        padding: 3rem 0 0 0;
    }

    .case-study-curve svg {
        height: 80px;
    }

    .case-study-stats dt {
        font-size: 2.5rem;
    }

    .case-study-stats dd {
        font-size: 1rem;
    }
}

@media (min-width: 993px) {
    .individual-case-study-laptop {
        padding: 4rem 0 0 0;
    }

    .case-study-curve svg {
        height: 110px;
    }

    .case-study-stats dl {
        margin: 0 auto;
        max-width: 70%;
    }

    .case-study-stats dt {
        font-size: 2.8rem;
    }

    .case-study-stats dd {
        font-size: 1.2rem;
    }
}

@media (min-width: 1200px) {
    .case-study-curve svg {
        height: 120px;
    }

    .case-study-stats dt {
        font-size: 3.8rem;
    }
}

@media (min-width: 1441px) {
    .case-study-curve svg {
        height: 150px;
    }
}

/*/////////////////////////////////////////////////
           Case Study Image Grid 
/////////////////////////////////////////////////*/

.individual-case-study-image-grid {
    margin-bottom: 2rem;
    padding: 1.75rem 0;
    position: relative;
}

    .individual-case-study-image-grid::before {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        opacity: .4;
        z-index: -1;
        background: url(/assets/i/papyrus.png) repeat;
    }


.case-study-image-grid-left img:first-of-type {
    float: right;
    margin-bottom: .5rem;
    width: 97%;
}

.case-study-image-grid-left img:nth-child(2n+2) {
    float: right;
    margin-left: .5rem;
    width: 45%;
}

.case-study-image-grid-left img:nth-child(2n+3) {
    float: right;
    width: 42%;
}

.case-study-image-grid-right img {
    float: left;
}

    .case-study-image-grid-right img:first-of-type {
        margin: 2rem 0 .5rem;
    }

    .case-study-image-grid-right img:nth-child(2n+2) {
        width: 80%;
    }

@media (min-width: 768px) {
    .individual-case-study-image-grid {
        padding: 2.25rem 0;
    }
}

@media (min-width: 1024px) {
    .case-study-image-grid-left img:first-of-type {
        width: 99%;
    }
}

@media (min-width: 1441px) {
    .individual-case-study-image-grid {
        padding: 2.75rem 0;
    }
}

/*/////////////////////////////////////////////////
              Case Study Devices 
/////////////////////////////////////////////////*/

.case-study-devices {
    background-color: #88898c;
    padding: 1rem 0;
}

/*/////////////////////////////////////////////////
              Vertical Line 
/////////////////////////////////////////////////*/

.vertical-line {
    height: 6rem;
    margin: 2rem 0;
    position: relative;
}

    .vertical-line::after {
        content: "";
        border-left: 2px solid #F2D750;
        height: 6rem;
        opacity: 0.4;
        position: absolute;
        left: 50%;
        margin-left: -1px;
        bottom: 0;
    }

/*/////////////////////////////////////////////////
                Contact Form 
/////////////////////////////////////////////////*/
.contact-wrapper {
    margin: 0 auto;
    max-width: 1920px;
    padding-top: 2rem;
    position: relative;
}

.contact-content {
    padding: 0 15px;
}

.contact-content-background::before {
    background: #fafafa;
    bottom: 0;
    content: "";
    left: 0;
    position: absolute;
    top: 3.5rem;
    width: 40%;
    z-index: 0;
}

.contact-content .contact-image {
    position: absolute;
    top: 0;
    left: 10px;
    width: 46%;
    height: 700px;
    z-index: 1;
}

.contact-text {
    padding: 750px 0 4rem;
    width: 65%;
    z-index: 1;
    position: relative;
}

.contact-form {
    position: relative;
    z-index: 1;
}

    .contact-form .form-group {
        margin-bottom: 1rem;
    }

        .contact-form .form-group:last-of-type {
            margin-bottom: 0;
        }

        .contact-form .form-group label {
            font-weight: 700;
            margin-bottom: 0.5rem;
        }

        .contact-form .form-group input {
            border-radius: 0;
        }

    .contact-form .cf-label {
        display: block;
    }

    .contact-form .cf-input {
        border: solid 1px #ddd;
        padding: .5rem;
        width: 100%;
    }

    .contact-form .cf-large-input {
        border: solid 1px #ddd;
        height: 10rem;
        padding: .5rem;
        width: 100%;
    }

        .contact-form .cf-input:focus, .contact-form .cf-large-input:focus {
            outline-color: #F2D750;
        }

    .contact-form small {
        display: block;
        font-size: 0.7rem;
    }

    .contact-form .cf-button {
        background: #f2d750;
        color: #484747;
        display: inline-block;
        border: none;
        border-radius: 3px;
        padding: 0.6rem 3rem 0.6rem 2rem;
        margin-top: 1rem;
        font-size: 1rem;
        font-weight: 700;
        position: relative;
        text-decoration: none;
        cursor: pointer;
        -webkit-appearance: none;
        -moz-appearance: none;
    }

        .contact-form .cf-button::after {
            content: " →";
            padding-left: .5rem;
            position: absolute;
            right: 1.5rem;
            transition: transform 250ms;
        }

        .contact-form .cf-button:hover::after {
            transform: translate(.3rem);
        }

        .contact-form .cf-button:visited {
            color: #484747;
        }

        .contact-form .cf-button:hover {
            background: #efcf3a;
            color: #484747;
        }

        .contact-form .cf-button:focus {
            outline-color: #efcf3a;
        }

    .contact-form .field-validation-error span,
    .contact-form p.rc-fail {
        color: red;
        font-size: 0.8rem;
        text-transform: uppercase;
    }

    .contact-form p.rc-fail {
        margin: 0.5rem 0;
    }

    .contact-form input.input-validation-error, .contact-form textarea.input-validation-error {
        border-color: red;
    }

#thanks {
    text-align: center;
    position: relative;
    z-index: 1;
}

    #thanks img {
        margin: 6rem 0 2rem 0;
        max-width: 10rem;
    }

@media (min-width: 1200px) and (max-width: 1440px) {
    .contact-content-background::before {
        top: 2rem;
    }

    .contact-content .contact-image {
        height: 600px;
    }

    .contact-text {
        padding: 650px 0 4rem;
    }

    .contact-form {
        padding-top: 1rem;
    }
}

@media (min-width: 993px) and (max-width: 1199px) {
    .contact-wrapper {
        padding-top: 0;
    }

    .contact-content-background::before {
        top: 1.6rem;
    }

    .contact-content .contact-image {
        height: 500px;
    }

    .contact-text {
        padding: 550px 0 4rem;
    }

    .contact-form {
        padding-top: 3rem;
    }
}

@media (min-width: 768px) and (max-width: 991px) {
    .contact-wrapper {
        padding-top: 0;
    }

    .contact-content-background::before {
        top: -3.5rem;
        width: 100%;
    }

    .contact-content .contact-image {
        position: relative;
        height: 600px;
        width: 100%;
        margin-top: 4rem;
        left: 0;
    }

    .contact-text {
        width: 100%;
        padding: 4rem 0;
    }

    .contact-form {
        margin: 0 auto;
    }
}

@media (min-width: 576px) and (max-width: 767px) {
    .contact-wrapper {
        padding-top: 0;
    }

    .contact-content-background::before {
        top: -3.5rem;
        width: 100%;
    }

    .contact-content .contact-image {
        position: relative;
        height: 500px;
        width: 100%;
        margin-top: 4rem;
        left: 0;
    }

    .contact-text {
        width: 100%;
        padding: 4rem 0;
    }

    .contact-form {
        margin: 0 auto;
    }
}

@media (min-width: 420px) and (max-width:575px) {
    .contact-wrapper {
        padding-top: 0;
    }

    .contact-content-background::before {
        top: -1rem;
        width: 100%;
    }

    .contact-content .contact-image {
        position: relative;
        height: 400px;
        width: 100%;
        margin-top: 4rem;
        left: 0;
    }

    .contact-text {
        width: 100%;
        padding: 2rem 0;
    }
}

@media (min-width: 0px) and (max-width:419px) {
    .contact-wrapper {
        padding-top: 0;
    }

    .contact-content-background::before {
        top: -1rem;
        width: 100%;
    }

    .contact-content .contact-image {
        position: relative;
        height: 380px;
        width: 100%;
        margin-top: 4rem;
        left: 0;
    }

    .contact-text {
        padding: 2rem 0;
        width: 100%;
    }
}

/*/////////////////////////////////////////////////
              Standard Content
/////////////////////////////////////////////////*/

.standard-content {
    margin: 3rem 0;
}

/*/////////////////////////////////////////////////
                Blog overview
/////////////////////////////////////////////////*/

.blog-listing {
    padding: 3rem 0;
}

    .blog-listing .col-md-4 {
        margin-bottom: 2rem;
    }

.blog-card {
    background: #fff;
    height: 100%;
}

.blog-card-image {
    display: block;
    height: 300px;
    margin-bottom: 1rem;
    overflow: hidden;
    width: 100%;
}

    .blog-card-image img {
        display: block;
        height: 100%;
        object-fit: cover;
        width: 100%;
    }

.blog-card h2 {
    font-size: 1.5rem;
    margin-bottom: 1rem;
}

    .blog-card h2 a {
        color: inherit;
        text-decoration: none;
    }

.blog-card-date {
    font-style: italic;
    margin-bottom: 0.5rem;
}

/*/////////////////////////////////////////////////
                Blog page
/////////////////////////////////////////////////*/

.blog-article-image {
    margin-bottom: 2rem;
}

    .blog-article-image img {
        display: block;
        height: auto;
        max-width: 100%;
        width: 100%;
    }

.blog-article-content {
    padding-right: 2rem;
}

.blog-article-meta {
    background: #f1f1f1;
    padding: 1.5rem;
}

    .blog-article-meta dl {
        margin: 0;
    }

    .blog-article-meta dt {
        font-size: 1.1rem;
        margin-top: 1rem;
    }

        .blog-article-meta dt:first-child {
            margin-top: 0;
        }

    .blog-article-meta dd {
        margin-bottom: 0;
    }

@media (max-width: 767px) {
    .blog-article-content {
        padding-right: 0;
    }

    .blog-article-meta {
        margin-top: 2rem;
    }
}

/*/////////////////////////////////////////////////
                 Icon Columns
/////////////////////////////////////////////////*/


.icon-columns {
    margin: 2rem 0;
}

.icon-column-item {
    margin-bottom: 1rem;
}

    .icon-column-item img {
        display: block;
        margin: .2rem auto 0 auto;
        max-width: 32px;
    }

@media (min-width: 1200px) {
    .icon-column-item img {
        max-width: 40px;
    }
}

@media (min-width: 1441px) {
    .icon-column-item img {
        max-width: 42px;
    }
}

/*/////////////////////////////////////////////////
                Our Locations
/////////////////////////////////////////////////*/

.our-locations {
    background: url(../assets/i/waves.png) repeat-x #f1f1f1;
    background-position: center bottom -242px;
    position: relative;
    padding: 3rem 0;
    text-align: center;
}

.choose-location {
    margin: 1rem 0;
    position: relative;
}

    .choose-location h3, .choose-location p {
        margin: 0;
    }

    .choose-location p {
        font-style: italic;
    }

.location {
    position: relative;
}

    .location picture {
        display: flex;
        position: relative;
        z-index: 0;
    }

        .location picture img {
            object-fit: contain;
            width: 100%;
            height: 100%;
        }

    .location dl {
        background: #fff;
        margin: 0;
        opacity: 0.75;
        padding: 1.5rem 0.65rem;
        z-index: 10;
    }

        .location dl dt {
            font-size: 1.3rem;
            margin-bottom: 0.5rem;
        }

        .location dl a {
            line-height: 2;
        }

        .location dl dd {
            line-height: .9;
        }

            .location dl dd:last-of-type {
                margin-top: 0.5rem;
            }

@media (min-width: 576px) {
    .our-locations h3::before {
        background-size: 100px 100px;
        background: url(../assets/i/path-arrow.svg);
        content: '';
        display: inline-block;
        height: 100px;
        width: 100px;
        vertical-align: text-top;
    }

    .our-locations h3::after {
        background-size: 100px 100px;
        background: url(../assets/i/path-arrow.svg);
        content: '';
        display: inline-block;
        height: 100px;
        width: 100px;
        transform: rotateY(180deg);
        vertical-align: text-top;
    }

    .choose-location {
        margin: 1rem 0 2.5rem;
    }

        .choose-location p {
            position: absolute;
            left: 50%;
            top: 50%;
            transform: translate(-50%, -50%);
        }

    .location dl {
        left: 50%;
        bottom: 0;
        position: absolute;
        transform: translate(-50%, 0%);
        width: 70%;
    }

    .our-locations {
        padding: 3rem 0 6rem;
    }
}

@media (min-width: 1441px) {
    .our-locations {
        padding: 3rem 0 9rem;
    }
}

/*/////////////////////////////////////////////////
              Three Column Content
/////////////////////////////////////////////////*/

.three-column-content {
    margin-bottom: 3rem;
    padding: 2rem 0;
    position: relative;
}

    .three-column-content h2 {
        margin-bottom: 2rem;
        text-align: center;
    }

    .three-column-content::before {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        opacity: .4;
        z-index: -1;
        background: url(/assets/i/papyrus.png) repeat;
    }

@media (min-width: 576px) {
    .three-column-content {
        padding: 3.5rem 0;
    }
}

@media (min-width: 768px) {
    .three-column-content h2 {
        margin-bottom: 2.5rem;
    }

    .three-column-content .container .row div {
        margin-bottom: 1rem;
    }

    .three-column-content h2 {
        margin-bottom: 3rem;
    }

    .three-column-content .container .row div {
        margin-bottom: 1.5rem;
    }
}

@media (min-width: 1024px) {
    .three-column-content {
        margin-bottom: 5rem;
    }
}

@media (min-width: 1200px) {
    .three-column-content {
        margin-bottom: 6rem;
    }
}

@media (min-width: 1441px) {
    .three-column-content {
        margin-bottom: 7rem;
    }
}

/*/////////////////////////////////////////////////
                   Vacancies
/////////////////////////////////////////////////*/

.vacancies {
    background: #faf9f9;
    padding: 3rem 0;
}

.vacancy {
    border: solid 1px #cfcece;
    border-radius: 5px;
    margin: .5rem 0;
    padding: 1.25rem 1.25rem;
    position: relative;
    display: flex;
    align-items: center;
}

    .vacancy a:link, .vacancy a:visited, .vacancy a:hover, .vacancy a:active {
        border: none;
    }

    .vacancy p {
        font-weight: 700;
        margin: 0;
    }

    .vacancy a::after {
        display: block;
        content: ' ';
        background-image: url('../assets/i/arrow-right.svg');
        background-size: 25px 25px;
        height: 25px;
        position: absolute;
        right: .25rem;
        transform: translate(-50%, -50%);
        top: 50%;
        width: 25px;
    }

    .vacancy a:hover::after {
        background-image: url('../assets/i/arrow-right-gold.svg');
        -webkit-transition: all .3s ease-out;
        -moz-transition: all .3s ease-out;
        -o-transition: all .3s ease-out;
        -ms-transition: all .3s ease-out;
        transition: all .3s ease-out;
    }

/*/////////////////////////////////////////////////
               Text/Image Shape
/////////////////////////////////////////////////*/

.text-image-shape {
    margin-bottom: 2rem;
    padding: 0;
}

.image-shape {
    margin: 2rem 0 4rem;
    position: relative;
}

.text-image-shape picture {
    height: 100%;
    z-index: 10;
}

    .text-image-shape picture::before {
        background: #f5f5f5;
        content: "";
        height: 130%;
        position: absolute;
        right: 0;
        top: 50%;
        transform: translate(0, -50%);
        width: 80%;
        z-index: -10;
    }

@media (min-width: 425px) {
    .image-shape {
        margin: 3rem 0 5rem;
    }
}

@media (min-width: 576px) {
    .image-shape {
        margin: 5rem 0 6rem;
    }
}

@media (min-width: 768px) {
    .text-image-shape {
        margin-bottom: 3rem;
    }
}

@media (min-width: 1024px) {

    .text-image-shape {
        margin-bottom: 4rem;
    }

    .text-image-shape--text {
        margin-top: 2rem;
    }

    .image-shape {
        margin: 2rem 0 6rem;
    }
}

.text-image-shape--offset {
    margin-bottom: 2rem;
    padding: 0;
}

.image-shape--offset {
    margin: 2rem 0 4rem;
    position: relative;
}

.text-image-shape--offset picture {
    height: 100%;
    z-index: 10;
}

.text-image-shape--offset img {
    width: 95%;
}

.text-image-shape--offset picture::before {
    background: #fbf7ed;
    content: "";
    height: 130%;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translate(0, -50%);
    width: 80%;
    z-index: -10;
}

@media (min-width: 425px) {
    .image-shape--offset {
        margin: 3rem 0 5rem;
    }
}

@media (min-width: 576px) {
    .image-shape--offset {
        margin: 5rem 0 6rem;
    }
}

@media (min-width: 768px) {
    .text-image-shape--offset {
        margin-bottom: 3rem;
    }
}

@media (min-width: 1024px) {
    .text-image-shape--offset {
        margin-bottom: 4rem;
    }

    .text-image-shape--text--offset {
        margin-top: 2rem;
    }

    .image-shape--offset {
        margin: 2rem 0 6rem;
    }
}

/*/////////////////////////////////////////////////
             Career Overview Page
/////////////////////////////////////////////////*/

.job-overview {
    border: solid 1px #eee;
    margin: 0 0 4rem;
    padding: 0 1.5rem 1.5rem;
}

    .job-overview h2 {
        border-bottom: solid 1px #eee;
        line-height: 2.5;
        width: 100%;
    }

/*/////////////////////////////////////////////////
                  Career Page
/////////////////////////////////////////////////*/

.career-intro {
    margin: 2rem 0 3rem;
}

    .career-intro a.standard-btn {
        float: left;
        margin-top: 1rem;
    }

.career-slice {
    padding: 2.5rem 0 2rem;
}

.career-slice--aligncenter{
    text-align: center;
}

    .career-slice h2 {
        margin-bottom: 2.5rem;
    }

.career-slice--bgimage {
    height: auto;
    position: relative;
    z-index: 0;
}

    .career-slice--bgimage::before {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        opacity: .6;
        z-index: -1;
        background: url(/assets/i/papyrus.png) repeat;
    }

.career-slice--grey {
    background: #898A8E;
    color: #fff;
}

.career-slice--yellow {
    background-color: #F1D655;
}

.career-slice--twopanels{
}

.career-slice:not(.career-slice-panels) ul {
    column-count: 1;
    column-gap: 4rem;
}

.career-slice h2 {
    column-span: all;
}

.career-slice h3 {
    line-height: 2;
}

.career-slice ul li::before {
    background-color: #F1D655;
    content: "";
    display: inline-block;
    top: .4rem;
    margin-left: -3.2rem;
    width: .6rem;
    height: .6rem;
    border-radius: 50%;
}

.career-slice--yellow ul li::before {
    background-color: #515d68;
}

.career-slice .usercontent ol li::before{
    display:none;
}

.career-slice .usercontent ol li
{
    padding-left:0;
}

.career-slice .usercontent ol{
    padding-left:2rem;
}

.career-slice--yellow .standard-btn,
.career-slice--yellow .standard-btn:visited {
    background-color: #898A8E;
    color: white;
}

.career-slice--yellow .standard-btn:hover,
.career-slice--yellow .standard-btn:focus {
    background-color: #898A8E;
}

.career-slice ul li {
    padding-left: 0;
    text-indent: -.5rem;
}

.career-apply {
    padding: 4rem 0;
}

    .career-apply a.standard-btn {
        display: inline-block;
        margin: 1rem auto 0;
    }

@media (min-width: 567px) {
    .career-slice:not(.career-slice-panels) ul {
        column-count: 2;
    }
}

@media (min-width: 768px) {
    .career-apply a.standard-btn {
        float: right;
        margin-top: 0;
    }

    .career-slice .usercontent{
        display: flex;
    }

    .career-slice--twopanels .usercontent .career-slice-textblock {
        width: 50%;
    }

    .career-slice--twopanels .usercontent .career-slice-textblock--left {
        margin-right: 20px;
    }

    .career-slice--twopanels .usercontent .career-slice-textblock--right {
        margin-left: 20px;
    }
}

@media (min-width: 1024px) {
    .career-intro a.standard-btn {
        float: right;
        margin-top: 0;
    }

    .career-slice:not(.career-slice-panels) ul {
        column-gap: 3rem;
    }
}

/*/////////////////////////////////////////////////
          Umbraco Support Client Cards
/////////////////////////////////////////////////*/


.client-cards {
}

    .client-cards .client-card {
        padding: 0.5rem;
        margin-bottom: 60px;
        min-height: 500px;
    }

.cc-row {
    min-height: inherit;
}

.cc-list {
    display: flex;
    align-items: flex-start;
    align-self: flex-start;
}

    .cc-list ul li {
        padding-left: 0.8rem;
        color: #272b2e;
    }

        .cc-list ul li:before {
            left: 0;
            background-color: #020202;
            top: 0.48rem;
            height: 6px;
            width: 6px;
        }

.cc-feedback {
    display: flex;
    align-items: flex-end;
    min-height: 315px;
}

.client-since {
    float: right;
}

.client-card ul {
    margin-left: 0;
    padding-left: 0;
}

    .client-card ul li {
        margin-left: 0;
    }

        .client-card ul li span {
            color: #3544B1;
            font-weight: bold;
        }

.cc-testimonial {
    background: url(/assets/i/quotation-mark.png) 2.5% 9% no-repeat;
    color: #fff;
    opacity: 0.9;
    padding: 1rem;
}

    .cc-testimonial > p {
        font-size: 0.9rem;
        font-weight: 300;
    }

.cc-testimonial-attribution {
    margin: 0;
}

    .cc-testimonial-attribution span {
        font-weight: bold;
    }

.client-card-gc {
    background: url(/assets/i/cc-bg-gc.jpg) no-repeat #fafafa bottom;
    background-size: 100%;
}

.cc-testimonial.cc-testimonial-gc {
    background-color: #6B7599;
}

.client-card-bcs {
    background: url(/assets/i/cc-bg-bcs.png) no-repeat #fff bottom;
    border: solid 1px #f2f2f2;
    background-size: 100%;
}

.cc-testimonial.cc-testimonial-bcs {
    background-color: #bccf00;
    color: #1B161F;
}

.client-card-mhs {
    background: url(/assets/i/cc-bg-mhs.jpg) no-repeat #fffcf3 bottom;
    background-size: 100%;
}

.client-card.client-card-mhs img {
    max-width: 280px;
}

.cc-testimonial.cc-testimonial-mhs {
    background-color: #5657a2;
}

.client-card-centek {
    background: url(/assets/i/cc-bg-centek.png) no-repeat #529dba bottom;
    background-size: 100%;
}

.client-card.client-card-centek ul li {
    color: #fff;
    list-style-type: none;
}

.client-card.client-card-centek .cc-list ul li:before {
    background-color: #fff;
}

.client-card.client-card-centek ul li::before {
    list-style-type: none;
}

.client-card.client-card-centek ul li span {
    color: #fff;
    font-weight: bold;
}

.cc-testimonial.cc-testimonial-centek {
    background-color: #3988a6;
}

.client-card-cas {
    background: url(/assets/i/cc-bg-cas.png) no-repeat #37aea9 bottom;
    background-size: 100%;
}

.client-card.client-card-cas img {
    max-width: 280px;
}

.client-card.client-card-cas ul li {
    color: #fff;
    list-style-type: none;
}

    .client-card.client-card-cas ul li::before {
        list-style-type: none;
    }

.client-card.client-card-cas .cc-list ul li:before {
    background-color: #fff;
}

.client-card.client-card-cas li span {
    color: #fff;
    font-weight: bold;
}

.cc-testimonial.cc-testimonial-cas {
    background-color: #2d9590;
}

.client-card-nudge {
    background: url(/assets/i/cc-bg-nudge.png) no-repeat #fff bottom right;
    border: solid 1px #f2f2f2;
}

.cc-testimonial.cc-testimonial-nudge {
    background-color: #ff1aa8;
}


/*/////////////////////////////////////////////////////////////
          Responsive media queries Support Client Cards
/////////////////////////////////////////////////////////////*/
@media screen and (min-width: 576px) {
    .client-cards .client-card {
        padding: 2rem;
        min-height: 500px;
    }

    .client-card-gc {
        background: url(/assets/i/cc-bg-gc--tablet.jpg) no-repeat #fafafa center bottom;
        background-size: auto 100%;
    }

    .client-card-bcs {
        background: url(/assets/i/cc-bg-bcs--tablet.jpg) no-repeat #fafafa center bottom;
        background-size: auto 100%;
    }

    .client-card-mhs {
        background: url(/assets/i/cc-bg-mhs--tablet.jpg) no-repeat #fafafa center bottom;
        background-size: auto 100%;
    }

    .client-card.client-card-mhs img {
        max-width: unset;
    }

    .client-card-centek {
        background: url(/assets/i/cc-bg-centek--tablet.jpg) no-repeat #529dba center bottom;
        background-size: auto 100%;
    }

    .client-card-cas {
        background: url(/assets/i/cc-bg-cas--tablet.jpg) no-repeat #37aea9 center bottom;
        background-size: auto 100%;
    }

    .client-card.client-card-cas img {
        max-width: unset;
    }

    .client-card-nudge {
        background: url(/assets/i/cc-bg-nudge--tablet.jpg) no-repeat #fff center bottom;
        border: solid 1px #f2f2f2;
        background-size: auto 100%;
    }

    .cc-testimonial {
        padding: 40px 40px 30px;
    }
}

@media screen and (min-width: 992px) {
    .client-cards .client-card {
        padding: 2rem;
        min-height: 330px;
    }

    .cc-testimonial > p {
        font-size: 1.1rem;
    }

    .cc-feedback {
        justify-content: center;
    }

    .client-card-gc {
        background: url(/assets/i/cc-bg-gc.jpg) no-repeat #fafafa center right;
        background-size: auto 100%;
    }

    .client-card-bcs {
        background: url(/assets/i/cc-bg-bcs.png) no-repeat #fff center right;
        border: solid 1px #f2f2f2;
        background-size: auto 100%;
    }

    .client-card-nudge {
        background: url(/assets/i/cc-bg-nudge.png) no-repeat #fff center right;
        border: solid 1px #f2f2f2;
        background-size: auto 100%;
    }

    .client-card-cas {
        background: url(/assets/i/cc-bg-cas.png) no-repeat #37aea9 center right;
        background-size: auto 100%;
    }

    .client-card-mhs {
        background: url(/assets/i/cc-bg-mhs.jpg) no-repeat #fffcf3 center right;
        background-size: auto 100%;
    }

    .client-card-centek {
        background: url(/assets/i/cc-bg-centek.png) no-repeat #529dba center right;
        background-size: auto 100%;
    }

    .cc-testimonial {
        max-width: 770px;
    }
}

/*/////////////////////////////////////////////////////////////
          End responsive media queries Support Client Cards
/////////////////////////////////////////////////////////////*/

/*/////////////////////////////////////////////////////////////
                         Membership
/////////////////////////////////////////////////////////////*/

.membership-grid-text .image-grid-text {
    margin-top: 0 !important;
    padding: 4rem 0 6rem 0 !important;
}

    .membership-grid-text .image-grid-text::before {
        height: 95%;
    }

/*/////////////////////////////////////////////////////////////
                         Calendly Module
/////////////////////////////////////////////////////////////*/

.calendlymodule {
    padding: 2rem 0 2rem;
}

.calendlymodule-host{
    height: 100px;
    width: 100px;
    border-radius: 50%;
}

.calendlymodule-text ul{
    padding-left:0;
}

.calendlymodule-title,
.calendlymodule-subtitle,
.calendlymodule-host,
.calendlymodule-text,
.calendlymodule-link {
    margin-bottom: 1.5rem;
}

.calendlymodule--bgimage {
    height: auto;
    position: relative;
    z-index: 0;
}

    .calendlymodule--bgimage::before {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        opacity: .6;
        z-index: -1;
        background: url(/assets/i/papyrus.png) repeat;
    }

.calendlymodule--grey {
    background: #898A8E;
    color: #fff;
}

.calendlymodule--grey ul li::before {
    background-color: #F1D655;
}

.calendlymodule--grey a {
    color: #F1D655;
}

.calendlymodule--yellow {
    background-color: #F1D655;
}

.calendlymodule--yellow .standard-btn,
.calendlymodule--yellow .standard-btn:visited {
    background-color: #898A8E;
    color: white;
}

.calendlymodule--yellow .standard-btn:hover,
.calendlymodule--yellow .standard-btn:focus {
    background-color: #898A8E;
}


/*/////////////////////////////////////////////////////////////
                         FAQ Block
/////////////////////////////////////////////////////////////*/


.faqblock {
    padding: 2.5rem 0 2rem;
    margin: 2rem 0 2rem;
}

.faqblock-title {
    margin-bottom: 2.5rem;
    text-align: center;
}

.faqblock-question{
    border:none;
    background: none;
    padding: 1rem 0;
    width: 100%;
    text-align: left;
    position: relative;
    padding-right: 2rem;
    cursor: pointer;
    color: #515d68;
    font-family: inherit;
    font-weight: 700;
}

.faqblock-questions h3 {
    margin: 0;
    border-bottom: 1px solid #E5E5E5;
}

.faqblock-questions h3:first-child {
    border-top: 1px solid #E5E5E5;
}

.faqblock-question span:before {
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    content: "\f078";
    display: inline-block;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-size: 1.1rem;
    color: #515d68;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.faqblock-question[aria-expanded="true"] span:before {
    content: "\f077";
}

.faqblock-answer {
    display: none;
    margin: 0;
    padding: 0.5rem 0 1.5rem;
}

.faqblock-answer p:last-child {
    margin-bottom: 0;
}

@media(min-width: 992px){
    .faqblock .container{
        margin: 0 auto;
    }

    .faqblock-content{
        display: flex;
        align-items: flex-start;
    }

    img.faqblock-image {
        width: 50%;
        padding-right: 30px;
    }

    .faqblock-questions{
        width: 50%;
    }

    .faqblock--fullwidth .faqblock-content{
        max-width: 50%;
        margin: 0 auto;
    }

    .faqblock--fullwidth .faqblock-questions {
        width: 100%;
    }
}