/* Minification failed. Returning unminified contents.
(5,28): run-time error CSS1039: Token not allowed after unary operator: '-body-background-color'
(14,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(15,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(16,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(17,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(18,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(19,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(20,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(148,28): run-time error CSS1039: Token not allowed after unary operator: '-body-background-color'
(156,26): run-time error CSS1039: Token not allowed after unary operator: '-headerLetterSpacingMed'
(219,21): run-time error CSS1039: Token not allowed after unary operator: '-width'
(220,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(221,17): run-time error CSS1039: Token not allowed after unary operator: '-width'
(222,18): run-time error CSS1039: Token not allowed after unary operator: '-width'
(386,75): run-time error CSS1039: Token not allowed after unary operator: '-menu-background-color'
(525,28): run-time error CSS1039: Token not allowed after unary operator: '-menu-background-color'
(672,22): run-time error CSS1039: Token not allowed after unary operator: '-liMenuItemRightWidth'
(696,21): run-time error CSS1039: Token not allowed after unary operator: '-liMenuItemRightWidth'
(1093,26): run-time error CSS1039: Token not allowed after unary operator: '-headerLetterSpacing'
(1681,24): run-time error CSS1046: Expect comma, found '34'
(1681,30): run-time error CSS1046: Expect comma, found '/'
(2462,17): run-time error CSS1039: Token not allowed after unary operator: '-ttBorder'
(2463,18): run-time error CSS1039: Token not allowed after unary operator: '-ttBorder'
(2467,15): run-time error CSS1039: Token not allowed after unary operator: '-ttBorder'
(2468,33): run-time error CSS1039: Token not allowed after unary operator: '-ttBorder'
(2472,15): run-time error CSS1039: Token not allowed after unary operator: '-ttBorder'
(2476,18): run-time error CSS1039: Token not allowed after unary operator: '-ttBorder'
(3398,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(3452,26): run-time error CSS1039: Token not allowed after unary operator: '-servicesBodyColTop'
(3456,22): run-time error CSS1039: Token not allowed after unary operator: '-servicesBodyColTop'
(3458,29): run-time error CSS1039: Token not allowed after unary operator: '-servicesBodyColTop'
(3750,21): run-time error CSS1039: Token not allowed after unary operator: '-liMenuItemRightWidth'
 */
body {
    font-family: SfLight;
    font-size: 1.5em;
    line-height: 1.5;
    background-color: var(--body-background-color);
    color: #2d2d2d;
}

html {
    scroll-padding-top: 60px;
}

:root {
    --liMenuItemRightWidth: 172px;
    --ttBorder: 12px;
    --servicesBodyColTop: 16vw;
    --headerLetterSpacingMed: -.26vw;
    --headerLetterSpacing: -.4vw;
    --body-background-color: #f6f7f3;
    --menu-background-color: hsl(0deg 0% 0% / 70%);
}

.detailsContainerFluid {
    width: calc(100vw - 30px);
}

a:focus {
    outline: none;
}

.position-relative {
    position: relative;
}

.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {
    font-family: SfBold;
}

.h1, h1 {
    font-size: 33px;
}

a {
    color: #ee1d52;
}

    a:hover {
        color: #f57a99
    }

    a.js-btnReadMore:hover {
        color: #ee1d52
    }

    a:hover, a:focus {
        text-decoration: none;
    }

a, button, input {
    transition: .3s all ease;
}

.btn.active.focus, .btn.active:focus, .btn.focus, .btn:active.focus, .btn:active:focus, .btn:focus {
    outline: none;
}

.btn-default:hover {
    color: white;
    background-color: #ee1d52;
    border-color: #ee1d52;
}

.btn-default:focus:active {
    color: white;
    background-color: #c20f3c;
    border-color: #c20f3c;
}

.form-control {
    border-color: #dbdbdb;
    box-shadow: none;
    -webkit-box-shadow: none;
    background-color: hsl(75deg 20% 96.08% / 29%);
    font-size: 15px;
    border-radius: 0;
}

.bootstrap-select .dropdown-menu {
    max-width: 100%;
}

.ds-inline-block {
    display: inline-block;
}

.text-overflow {
    white-space: normal;
    overflow: hidden;
    text-overflow: ellipsis;
}

.flexrow-gap-3 {
    gap: 3px;
}

body:not(.js-bodyIndex)
.detailsContainerFluid {
    margin-top: 100px;
}

.spreadDescriptionAccordion .accordion-arrow {
    transition: transform 0.2s ease-in-out;
    transform: rotate(0deg); /* Explicitly set base */
}

/* Flipped state: Target the active/expanded target content directly */
.spreadDescriptionAccordion .panel-heading[aria-expanded="true"] .accordion-arrow {
    transform: rotate(180deg);
}

.splistRow {
    align-items: center
}

.servicesBody .white-overlay-container {
    height: auto; /*var(--servicesBodyColTop);*/
    /* background-color: #ee1d52;
    mix-blend-mode: darken;*/
}

.servicesBody .cutout-text {
    /*color: white;*/
}

.parallax-section {
    width: 100%;
    height: 72vh;
}

    .parallax-section.text-view {
        position: relative;
        z-index: 2;
    }

.white-overlay-container {
    width: 100%;
    height: calc(100vh - 100px);
    background-color: var(--body-background-color);
    display: grid;
    align-content: center;
}

.cutout-text {
    background-image: url('/img/ALL-PROJETCS.jpg');
    font-size: 18vw;
    letter-spacing: var(--headerLetterSpacingMed);
    font-family: SfHeavy;
    margin: 0;
    background-repeat: repeat;
    background-attachment: fixed;
    background-position: center;
    background-size: contain;
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    color: transparent;
    line-height: 1;
    padding-bottom: 0.2em; /* Forces room for the bottom tails caused by small line-height */
    margin-bottom: -0.2em; /* Forces room for the bottom tails caused by small line-height*/
    margin-top: -0.17em; /*aligned flex-center but needs to go a bit up*/
}

.spreadsList .cutout-text {
    overflow: hidden;
    font-size: 14vw;
    position: relative;
}

.spreadsList .swapSmallColRight .cutout-text {
    left: 7px;
    text-align: right;
}

.spreadsList .swapSmallColLeft .cutout-text {
    left: -30px;
}

.spreadsList .white-overlay-container {
    height: auto;
}


.parallax-section.image-view {
    background-image: url('/img/ALL-PROJETCS.jpg');
    position: sticky;
    bottom: 0;
    z-index: 1;
    background-repeat: repeat;
    background-attachment: fixed;
    background-position: center;
    background-size: contain;
}

.servicesBody .parallax-section {
    height: 70vh;
    background-position: center;
    background-repeat: no-repeat;
    background-attachment: initial;
}

.servicesBody .cutout-text {
    font-size: 4.3vw;
}

.pageInHeader {
    background-size: contain;
    background-repeat: no-repeat;
    background-position: 50%;
    min-width: var(--width);
    --width: 80px;
    width: var(--width);
    height: var(--width);
    position: relative;
    top: 0;
    margin-right: 7px;
    vertical-align: middle;
    display: inline-block;
    border: 1px solid #e5e5e5;
}

.detailsReviewArticle {
    column-count: 3;
    column-gap: 20px;
}

.caseLink .caseTitle {
    background: linear-gradient(to right, #000000 50%, #c0c0c0 50%);
    background-size: 200% 100%;
    background-position: 100% 0;
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    transition: background-position 0.2s ease-out;
}

/* On hover, slide the background to the left to reveal the black half */
.caseLink:hover .caseTitle {
    background-position: 0 0;
    /* MOUSE ENTER SPEED: Keeps the onward sweep at its original speed */
    transition: background-position 0.5s ease-in-out;
}

.js-expandableText {
    margin-bottom: 0;
}

    .js-expandableText.clamped {
        display: -webkit-box;
        -webkit-line-clamp: 6;
        -webkit-box-orient: vertical;
        overflow: hidden;
    }

.js-btnReadMore {
    color: black;
    cursor: pointer;
    font-family: SfMedium;
    font-size: 14.5px;
    margin-top: 2px;
    margin-bottom: 15px;
    display: inline-block;
}

.detRow {
    margin-top: 60px;
}

.js-caseStudiesDDLContainer {
    margin-top: 15px;
}

.cutout-overlay {
    position: absolute;
    inset: 0;
    background-color: #2a2a2a; /* The background color you want to cut through */
    /* 1. Draw a base layer covering the whole element (linear-gradient) */
    /* 2. Layer your cutout shape over it (radial-gradient creates a circle) */
    mask-image: radial-gradient(circle 80px at center, transparent 100%, black 100%), linear-gradient(black, black);
    /* Exclude tells the browser to subtract the overlapping shapes, creating the hole */
    mask-composite: exclude;
    /* Webkit vendor prefixes for Safari support */
    -webkit-mask-image: radial-gradient(circle 80px at center, transparent 49%, black 50%), linear-gradient(black, black);
    -webkit-mask-composite: destination-in;
}

.navbar-nav {
    padding-top: 0;
    padding-bottom: 0;
    display: flex;
    display: -webkit-flex;
    flex-direction: column;
    -webkit-flex-direction: column;
    justify-content: left;
    -webkit-justify-content: left;
    flex-direction: row;
    flex-wrap: wrap;
    float: left;
    margin: 0 !important;
}

.stickyNavOuter {
    position: absolute;
    top: 435px;
    bottom: 0;
}

.stickyNavInner {
    top: 0;
}

.navbar-sticky {
    position: -webkit-sticky; /* Older Safari support */
    position: sticky;
    top: 0; /* Locks exactly at the top of the viewport */
    z-index: 1030; /* Ensures it stays above all body content */
}

body:not(.js-bodyIndex)
.navbar-sticky {
    position: -webkit-fixed; /* Older Safari support */
    position: fixed;
}

empty-box {
    min-height: 150px;
    border: 1px dashed;
}

.flex-menu-inner {
    column-gap: 30px;
    justify-content: space-between;
    float: none;
}

.navbar-nav.flex-menu {
    width: 473px;
}

.navbar-nav a.menua, .flex-menu-inner {
    font-family: SfHeavy;
    color: #2d2d2d;
    font-size: 12.5px;
    letter-spacing: 2.5px;
    padding: 11px 15px;
}

    .flex-menu-inner.navbar-nav a.menua {
        padding: 0;
    }

    .navbar-nav a.menua.active, .navbar-nav a.menua:focus, .navbar-nav a.menua:hover {
        color: #f57a99;
    }

.navbar-inverse {
    background-color: transparent;
    border-radius: 0;
}

    .navbar-inverse .navbar-nav > li > a {
        color: black;
    }

    .navbar-inverse .navbar-collapse {
        padding-right: 0;
        padding-left: 0;
    }

.navbar-nav.flex-menu li a {
    margin-right: 2px;
    margin-bottom: 2px;
}

.navbar-nav.flex-menu li a {
    /*background: linear-gradient(to right, hsl(0deg 0% 90% / 85%) 50%, hsl(0deg 0% 100% / 85%) 50%);*/
    background: linear-gradient(to right, hsl(0deg 0% 0% / 63%) 50%, var(--menu-background-color) 50%);
    color: white;
    background-size: 200% 100%;
    background-position: 100% 0;
    transition: background-position 0.2s ease-out;
}

    .navbar-nav.flex-menu li a:hover {
        background-position: 0 0;
        transition: background-position 0.2s ease-in-out;
        color: #a9a9a9;
    }

/*COLLAPSE MENU ON SCROLL*/

@media (min-width: 768px) {

    /* --- State Control: When Stuck At Top --- */
    .navbar-sticky.is-stuck .navbar-header .navbar-toggle {
        display: block;
        padding: 35px;
        background-color: black; /*hsl(0deg 0% 0% / 70%);*/
        border-radius: 0;
        margin: 0;
        margin-right: 2px;
    }
    /* Hide desktop horizontal menu structure when collapsed */
    .navbar-sticky.is-stuck #navbar-collapse-x.collapse {
        display: none !important;
    }

        /* Make the dropdown menu vertical and clean when clicked open */
        .navbar-sticky.is-stuck #navbar-collapse-x.collapsing,
        .navbar-sticky.is-stuck #navbar-collapse-x.collapse.in {
            display: block !important;
        }

            .navbar-sticky.is-stuck #navbar-collapse-x.collapse.in .navbar-nav > li > a {
                padding-bottom: 10px;
            }
}

/* --- ANIMATIONS FOR INDIVIDUAL LI ITEMS --- */

/* 1. Base state: Hide and nudge the items slightly down */
.navbar-sticky.is-stuck #navbar-collapse-x.collapsing .navbar-nav > li {
    transition: all 0.3s ease-in;
    opacity: 0;
}

/* 2. Target state: Fade in and slide up when the menu finishes opening */
.navbar-sticky.is-stuck #navbar-collapse-x.collapsing .navbar-nav > li {
    /*background-color: black*/
    opacity: 0;
}

    /* 3. OPTIONAL STAGGER: Creates a sequential "wave" effect for the links */
    .navbar-sticky.is-stuck #navbar-collapse-x.collapsing .navbar-nav > li:nth-child(1),
    .navbar-sticky.is-stuck #navbar-collapse-x.collapse.in .navbar-nav > li:nth-child(1) {
        transition-delay: 0s;
    }

    .navbar-sticky.is-stuck #navbar-collapse-x.collapsing .navbar-nav > li:nth-child(2),
    .navbar-sticky.is-stuck #navbar-collapse-x.collapse.in .navbar-nav > li:nth-child(2) {
        transition-delay: 0.07s;
    }

    .navbar-sticky.is-stuck #navbar-collapse-x.collapsing .navbar-nav > li:nth-child(3),
    .navbar-sticky.is-stuck #navbar-collapse-x.collapse.in .navbar-nav > li:nth-child(3) {
        transition-delay: 0.14s;
    }

    .navbar-sticky.is-stuck #navbar-collapse-x.collapsing .navbar-nav > li:nth-child(4),
    .navbar-sticky.is-stuck #navbar-collapse-x.collapse.in .navbar-nav > li:nth-child(4) {
        transition-delay: 0.21s;
    }

    .navbar-sticky.is-stuck #navbar-collapse-x.collapsing .navbar-nav > li:nth-child(5),
    .navbar-sticky.is-stuck #navbar-collapse-x.collapse.in .navbar-nav > li:nth-child(5) {
        transition-delay: 0.28s;
    }

    .navbar-sticky.is-stuck #navbar-collapse-x.collapsing .navbar-nav > li:nth-child(6),
    .navbar-sticky.is-stuck #navbar-collapse-x.collapse.in .navbar-nav > li:nth-child(6) {
        transition-delay: 0.35s;
    }

/*end Collapse menu on scroll*/

.flex-menu > li {
    float: none !important;
    flex: 0 0 33.3333%;
}

    .flex-menu > li.menuaMiddle {
        flex-basis: 28%;
    }

    .flex-menu > li.menuaRight {
        flex-basis: 34%;
    }

.sortable-chosen {
    background-color: #f0f7ff !important;
    border: 2px dashed #007bff !important;
    opacity: 0.8;
}

/* The actual element floating under your mouse cursor */
.sortable-drag {
    background-color: #ffffff !important;
    box-shadow: 0 10px 20px rgba(0,0,0,0.19), 0 6px 6px rgba(0,0,0,0.23);
    transform: rotate(2deg); /* Gives a nice "picked up" effect */
    cursor: grabbing !important;
}

/* The empty space indicator where the item will land if dropped */
.sortable-ghost {
    opacity: 0.4;
    background-color: #e9ecef !important;
}

.menuLogo {
    position: relative;
    top: -2px;
    width: 87px; /* 87 sharper than 86*/
    height: 86px;
    mask-image: url('/img/SUMMERCLIFF-LLAMA-BLACK.svg'), linear-gradient(black, black);
    /* Tell the browser to subtract the llama shape from the box */
    mask-composite: exclude;
    mask-repeat: no-repeat, no-repeat;
    mask-position: center, center;
    mask-size: 70% auto, 100% 100%;
    /* Critical Safari support rules */
    -webkit-mask-image: url('/img/SUMMERCLIFF-LLAMA-BLACK.svg'), linear-gradient(black, black);
    -webkit-mask-composite: destination-out;
    -webkit-mask-repeat: no-repeat, no-repeat;
    -webkit-mask-position: center, center;
    -webkit-mask-size: 70% auto, 100% 100%;
    background-color: var(--menu-background-color);
}

    .menuLogo img {
        height: 86px;
        margin: 0 auto;
        mix-blend-mode: multiply;
    }
/************SF-Pro************************/

@font-face {
    font-family: 'SfLight';
    src: url('../fonts/sfPro/SF-Pro-Text-Light.woff2') format('truetype');
}

@font-face {
    font-family: 'SfRegular';
    src: url('../fonts/sfPro/SF-Pro-Text-Regular.woff2') format('truetype');
}

@font-face {
    font-family: 'SfMedium';
    src: url('../fonts/sfPro/SF-Pro-Text-Medium.woff2') format('truetype');
}

@font-face {
    font-family: 'SfSemibold';
    src: url('../fonts/sfPro/SF-Pro-Text-Semibold.woff2') format('truetype');
}

@font-face {
    font-family: 'SfBold';
    src: url('../fonts/sfPro/SF-Pro-Text-Bold.woff2') format('truetype');
}

@font-face {
    font-family: 'SfHeavy';
    src: url('../fonts/sfPro/SF-Pro-Text-Heavy.woff2') format('truetype');
}

/***********************************************/
@font-face {
    font-family: 'Segoe';
    src: url('../fonts/segoe/segoeui.woff2') format('truetype');
}

@font-face {
    font-family: 'SegoeLight';
    src: url('../fonts/segoe/segoeuil.woff2') format('woff2');
}

@font-face {
    font-family: 'SegoeSemiLight';
    src: url('../fonts/segoe/segoeuisl.woff2') format('woff2');
}

@font-face {
    font-family: 'SegoeBlack';
    src: url('../fonts/segoe/seguibl.woff2') format('truetype');
}

@font-face {
    font-family: 'SegoeSemiBold';
    src: url('../fonts/segoe/seguisb.woff2') format('truetype');
}

@font-face {
    font-family: 'SegoeBold';
    src: url('../fonts/segoe/segoeuib.woff2') format('truetype');
}

@font-face {
    font-family: 'SegoeBoldItalic';
    src: url('../fonts/segoe/segoeuiz.woff2') format('truetype');
}

/*COOKIE POLICY POPUP*/

.footerCookies a {
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: 2.5px;
    color: hsl(26.97deg 91.6% 46.67%);
    font-family: SfHeavy;
}

.js-cookiesHome {
    position: absolute;
    bottom: 3px;
    left: 0;
    right: 0;
    padding: 0 4.6vw;
    display: none;
}

    .js-cookiesHome a {
        font-size: 12px;
        text-transform: uppercase;
        color: #7e7767;
        position: relative;
        top: -1px;
        padding: 0px 10px;
    }

.cc-revoke, .cc-window {
    font-size: 12px;
    line-height: 1.3em;
}

.cc-floating {
    border-radius: 0;
}

    .cc-floating .cc-message {
        color: #fffef5;
    }

.cc-link {
    padding: 0;
}

.cc-floating.cc-type-info.cc-theme-classic .cc-btn {
    color: hsla(36, 2%, 22%, 1);
    font-weight: normal;
    font-size: 14px;
}

@media screen and (max-width: 414px) and (orientation: portrait), screen and (max-width: 736px) and (orientation: landscape) {
    .cc-window.cc-floating {
        max-width: 53%;
    }

    .cc-floating.cc-theme-classic {
        padding: 1em;
    }

    .cc-btn {
        padding: .3em .8em;
    }
}
/*END COOKIE POLICY POPUP*/


/* Style the navigation menu */
.topnav {
    overflow: hidden;
    position: absolute;
    width: calc(var(--liMenuItemRightWidth) + 48px);
    right: 3vw;
    top: 50px;
}

    /* Hide the links inside the navigation menu (except for logo/home) */
    .topnav ul.topMenuLinks {
        list-style: none;
        padding: 0;
        max-height: calc(100vh - 123px);
        overflow: hidden;
        overflow-y: auto;
        display: none;
    }

    /* Style navigation menu links */
    .topnav a {
        padding: 7px 20px;
        text-decoration: none;
        font-size: 20px;
        line-height: 1.2;
        letter-spacing: 0;
        display: block;
        background-color: hsla(0,0%,10%,0.95);
        width: var(--liMenuItemRightWidth);
    }

    .topnav li:first-child a {
        padding-top: 32px;
    }

    .topnav li:last-child a {
        padding-bottom: 28px;
    }

    /* Style the hamburger menu */
    .topnav a.icon {
        display: block;
        position: absolute;
        right: 0;
        top: 0;
    }

    /* Add a grey background color on mouse-over */
    .topnav a:hover {
        color: #FFFEF5
    }

.partnersBadgeOuter {
    padding-left: 0.7vw;
    display: none
}

    .partnersBadgeOuter img {
        width: 65px;
    }

.toggleRightNav {
    padding-top: 0;
    margin-top: 0px;
    margin-right: 0;
    padding-right: 0;
    background: none;
    border: 0;
    float: right;
    width: 48px;
}

    .toggleRightNav:focus-visible {
        outline: 0;
    }

    .toggleRightNav img {
        width: 100%
    }

    .toggleRightNav.expanded img {
        transform: rotate(90deg);
    }

.linetxt {
    position: relative;
    top: 10px;
    padding: 0px 20px;
    font-family: myriad;
    font-size: 14px;
    text-transform: uppercase;
    letter-spacing: 0.25px;
    line-height: 17px;
    display: none;
    text-align: center;
    /*background: -webkit-radial-gradient(circle, #524942 16%, rgba(49, 49, 49, 0.12) 35%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;*/
}

.scLine {
    background: #524942;
    left: 0;
    right: 0;
    bottom: 0;
    top: 0;
    margin: auto;
    z-index: 10000;
    height: 1px;
    position: absolute;
    display: none;
}

.slidesLoader {
    background-position: center;
    background-image: url(../img/Fab-Loading.gif);
    background-repeat: no-repeat;
    background-size: 25%;
    padding-bottom: 37%;
    position: absolute;
    top: 50px;
    width: 100%;
}

@-webkit-keyframes spin {
    0% {
        -webkit-transform: translate(0, 0); /* Chrome, Opera 15+, Safari 3.1+ */
        -ms-transform: translate(0, 0); /* IE 9 */
        transform: translate(0, 0); /* Firefox 16+, IE 10+, Opera */
    }

    100% {
        -webkit-transform: translate(100px, 0); /* Chrome, Opera 15+, Safari 3.1+ */
        -ms-transform: translate(100px, 0); /* IE 9 */
        transform: translate(100px, 0); /* Firefox 16+, IE 10+, Opera */
    }
}

@keyframes spin {
    0% {
        -webkit-transform: translate(0, 0); /* Chrome, Opera 15+, Safari 3.1+ */
        -ms-transform: translate(0, 0); /* IE 9 */
        transform: translate(0, 0); /* Firefox 16+, IE 10+, Opera */
    }

    100% {
        -webkit-transform: translate(100px, 0); /* Chrome, Opera 15+, Safari 3.1+ */
        -ms-transform: translate(100px, 0); /* IE 9 */
        transform: translate(100px, 0); /* Firefox 16+, IE 10+, Opera */
    }
}

#loader-wrapper .loader-section {
    position: fixed;
    top: 0;
    /*width: 50%;
    height: 100%;*/
    width: 100%;
    height: 50%;
    /*background-color: #ee1d52;
    background-image: url(images/raster4.png);*/
    background: repeating-linear-gradient(-45deg, #e46c0a, #e46c0a 1px, #ee1d52 1.5px, #ee1d52 11px, #e46c0a 11.5px);
    z-index: 1000;
}

    #loader-wrapper .loader-section.section-left {
        /*left: 0;*/
        top: 0;
        height: 100%;
        /*background-image: url('../img/SUMMERCLIFF_TEXT GRAY.png');*/
        /*-webkit-animation: sk-rotate 3.0s infinite linear;
        animation: sk-rotate 3.0s infinite linear;*/
        /*background-position: center;
        background-repeat: no-repeat;*/
    }


    #loader-wrapper .loader-section.section-right {
        top: 50%;
        /*background-position-x: -0.2vw;*/
    }

/* Loaded styles */

/*.loaded #loader-wrapper .loader-section.section-left {
    opacity: 0;*/
/*-webkit-transform: translateY(-100%);*/ /* Chrome, Opera 15+, Safari 3.1+ */
/*-ms-transform: translateY(-100%);*/ /* IE 9 */
/*transform: translateY(-100%);*/ /* Firefox 16+, IE 10+, Opera */
/*-webkit-transition: all 1s 0.3s cubic-bezier(0.645, 0.045, 0.355, 1.000);*/ /* Android 2.1+, Chrome 1-25, iOS 3.2-6.1, Safari 3.2-6  */
/*transition: all 1s 0.3s cubic-bezier(0.645, 0.045, 0.355, 1.000);*/ /* Chrome 26, Firefox 16+, iOS 7+, IE 10+, Opera, Safari 6.1+  */
/*-webkit-transition: all 0.5s ease-out;
    transition: all 0.5s ease-out;
}*/

.loaded #loader-wrapper .loader-section.section-right {
    -webkit-transform: translateY(100%); /* Chrome, Opera 15+, Safari 3.1+ */
    -ms-transform: translateY(100%); /* IE 9 */
    transform: translateY(100%); /* Firefox 16+, IE 10+, Opera */
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}

/*.loaded #loader {
    opacity: 0;
    -webkit-transition: all 0.4s ease-out;*/ /* Android 2.1+, Chrome 1-25, iOS 3.2-6.1, Safari 3.2-6  */
/*transition: all 0.4s ease-out;*/ /* Chrome 26, Firefox 16+, iOS 7+, IE 10+, Opera, Safari 6.1+  */
/*}*/

.loaded #loader-wrapper {
    visibility: hidden;
    top: 0;
    /* -webkit-transition: all  4s ease-in-out;
    transition: all  4s ease-in-out;*/
}


/*Loader*/

#loader-wrapper {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 10000;
}

#loader {
    position: relative;
    left: calc(50% - 70px);
    top: calc(50% - 80px);
    width: 120px;
    height: 120px;
    z-index: 1001;
    display: none;
    /*zoom: .85;*/
}

.imgRot {
    -webkit-animation: sk-rotate 7.0s infinite linear;
    animation: sk-rotate 7.0s infinite linear;
    position: absolute;
    top: -36%;
    left: -31%;
    filter: brightness(3);
}

@-webkit-keyframes sk-rotate {
    100% {
        -webkit-transform: rotate(360deg);
    }
}

@keyframes sk-rotate {
    100% {
        transform: rotate(360deg);
        -webkit-transform: rotate(360deg);
    }
}

.stillLama {
    top: 5px;
    left: 3px;
    position: relative;
    width: 86%;
}

/*spinner*/
.spinner {
    height: 10px;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    margin: auto;
    text-align: center;
}

    .spinner > div {
        width: 10px;
        height: 10px;
        background-color: #404040;
        border-radius: 100%;
        display: inline-block;
        -webkit-animation: sk-bouncedelay 1.4s infinite ease-in-out both;
        animation: sk-bouncedelay 1.4s infinite ease-in-out both;
    }

    .spinner .bounce1 {
        -webkit-animation-delay: -0.32s;
        animation-delay: -0.32s;
    }

    .spinner .bounce2 {
        -webkit-animation-delay: -0.16s;
        animation-delay: -0.16s;
    }

@-webkit-keyframes sk-bouncedelay {
    0%, 80%, 100% {
        -webkit-transform: scale(0);
    }

    40% {
        -webkit-transform: scale(1.0);
    }
}

@keyframes sk-bouncedelay {
    0%, 80%, 100% {
        -webkit-transform: scale(0);
        transform: scale(0);
    }

    40% {
        -webkit-transform: scale(1.0);
        transform: scale(1.0);
    }
}
/*end spinner*/

.js-awardsDiv {
    position: absolute;
    right: 3vw;
    bottom: 70px;
    width: 20vw;
    display: none
}

.lamaOuter a {
    cursor: pointer;
}

.lamaOuter img {
    height: 173px;
    position: absolute;
    bottom: 0;
    margin: 0 1.2vw;
    filter: saturate(0) sepia(50%) brightness(0.6);
    -moz-transition: all 0.3s linear;
    -webkit-transition: all 0.3s linear;
    -o-transition: all 0.3s linear;
}

    .lamaOuter img.ee23 {
        height: 140px;
    }

    .lamaOuter img.vega23 {
        height: 151px;
    }

    .lamaOuter img.lit23 {
        height: 159px;
    }

.lamaOuter a:hover img {
    filter: none;
    transform: scale(1.2);
    transform-origin: bottom center;
}

.lamaOuter .slick-slide {
    min-height: 210px;
    position: relative;
}

.slick-slide:focus {
    outline: none
}

/*.lamaOuter .slick-slider:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 95px;
    bottom: 0;
    background: linear-gradient(to left, rgba(0, 0, 0, 0) 0%, rgb(45 45 45) 100%);
    z-index: 1;
}

.lamaOuter .slick-slider:after {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    width: 95px;
    bottom: 0;
    background: linear-gradient(to right, rgba(0, 0, 0, 0) 0%, rgb(45 45 45) 100%);
    z-index: 1;
}*/

.lamaOuter .slick-prev, .lamaOuter .slick-next {
    top: 61%;
}

    .lamaOuter .slick-prev:before,
    .lamaOuter .slick-next:before {
        /*font-size: 27px;
        color: #191a19;*/
        display: block;
        content: ' ';
        background-size: contain;
        width: 42px;
        height: 42px;
    }

    .lamaOuter .slick-prev:before {
        background-image: url(/img/chevron-left.png);
    }

    .lamaOuter .slick-next:before {
        background-image: url(/img/chevron-right.png);
    }

.idxWell {
    padding: 35px 0;
}

.ruDiv {
    font-size: 8.66vw;
    font-family: SfBold;
    letter-spacing: var(--headerLetterSpacing);
    color: black;
    line-height: 1.2;
    align-items: end;
    margin-bottom: 45px;
    padding: 0 1vw;
}

.awardsDiv {
    position: absolute;
    bottom: -11px;
    left: 10.3vw;
    width: 14.2vw;
}

.awardsRotBottom {
    zoom: 0.78;
    margin-bottom: 45px;
    margin-top: 40px;
    padding-right: 24vw;
    text-align: right;
    filter: invert(100%) invert(51%) sepia(93%) saturate(3019%) hue-rotate(6deg) brightness(100%) contrast(100%)
}

.awardsDivRot {
    position: relative;
    width: 290px;
    height: 155px;
    display: inline-block;
}

.imgRot2 {
    -webkit-animation: sk-rotate 8.0s infinite linear;
    animation: sk-rotate 8.0s infinite linear;
    position: absolute;
    top: 0;
    left: 0px;
}

.awardsDivOuter {
    margin-left: auto;
    position: relative;
    text-align: right;
}

.awardsRot {
    width: 150px;
    position: absolute;
    top: 35px;
    left: 25px;
    filter: brightness(0);
}

.awExcellence {
    width: 25%;
    padding-right: 35px;
}

.no-fouc {
    display: none;
}

.bgImage {
    background-size: cover !important;
    background-repeat: no-repeat;
}

.sectionTikTok {
    background-color: #ee1d52;
}

.sectionTikTokInner {
    min-height: 100vh;
    align-content: center;
    flex-wrap: wrap;
}

.sectionTikTok img {
    width: 80%;
}

.ttHeader {
    background-image: url('/img/tiktok/tiktok-hub-by-summercliff-19.png');
    background-position: right bottom;
    background-size: 1.2em;
    background-repeat: no-repeat;
    color: #ee1d52;
    font-family: SegoeBlack;
    font-size: inherit;
}

.sectionDeliver {
    background-image: url('/img/tiktok/tiktok-hub-by-summercliff-22.png');
    background-position: right bottom;
    background-size: 1.2em;
    background-repeat: no-repeat;
    margin-top: 1.5em;
    margin-bottom: .2em;
}

.ttHubContactForm {
    background-color: #ee1d52;
    max-width: calc(100% - 25px);
    width: 489px;
    margin: 0 auto;
    margin-top: 40px;
    margin-bottom: 70px;
    position: relative;
}

.ttHubContactFormBackLayerRight {
    background-color: #6ac9d2;
    width: 20px;
    position: absolute;
    bottom: -20px;
    right: -20px;
    top: 20px;
}

.ttHubContactFormBackLayerBotttom {
    background-color: #6ac9d2;
    height: 20px;
    left: 20px;
    position: absolute;
    bottom: -20px;
    right: -20px;
}

.ttHubContactForm:after {
    content: ' ';
    position: absolute;
    left: 50px;
    bottom: 0;
    right: 50px;
    top: 0;
    border-left: 1px solid white;
    border-right: 1px solid white;
    pointer-events: none;
}

.ttHubContactFormImgOuter {
    padding: 30px 85px;
}

.ttHubContactForm form {
    border-top: 1px solid white;
    padding: 25px 75px;
    padding-top: 15px;
}

.ttHubContactForm .form-control {
    color: white;
    font-family: Segoe;
    border-color: white;
}

    .ttHubContactForm .form-control::placeholder {
        color: rgba(255,255,255,0.7);
    }

.ttHubContactForm .realPersonCl {
    width: 100%;
}

textarea.form-control.ttHubMessage {
    height: 145px
}

.ttStar3 {
    width: 25px;
    float: right;
    position: relative;
    right: -18px;
}

.js-btnContactTTHub {
    border-radius: 0;
    background-color: white;
    border: 0;
    font-size: 29px;
    font-family: 'SegoeBold';
    width: 100%;
    color: #ee1d52;
    padding: 4px;
    margin-top: 10px;
}

.sectionFeatures,
.sectionPackages,
.sectionTTForm {
    padding-top: 80px;
    padding-bottom: 80px;
}

.sectionTTForm {
    background: rgb(249,188,198);
    background: linear-gradient(90deg, rgba(249,188,198,1) 0%, rgba(231,213,216,1) 35%, rgba(212,238,235,1) 100%);
}

.sectionTTCasesContainer {
    width: calc(100% - 90px);
    max-width: 1700px;
}

.js-slickTikToks .slick-prev:before,
.js-slickTikToks .slick-next:before {
    font-size: 30px;
}

.js-slickTikToks .slick-next {
    right: -15px;
}

.js-slickTikToks .slick-prev {
    left: -20px;
}

.js-slickTikToks .backgroundCoverIndex {
    -webkit-filter: none;
    filter: none;
    -o-filter: none;
}

.sectionTTCases {
    padding: 15px 0;
}

.ttFormContainer {
    background-image: url(/img/tiktok/tiktok-hub-by-summercliff-21.png);
    background-position: right bottom 37%;
    background-size: 4.5em;
    background-repeat: no-repeat;
}

.ttFormFirstRow {
    background-image: url(/img/tiktok/tiktok-hub-by-summercliff-12.png);
    background-position: left bottom 4.7%;
    background-size: 5.5em;
    background-repeat: no-repeat;
}

.ttStar1, .ttStar2 {
    width: 20px;
    position: relative;
}

.ttStar1 {
    left: 23.9%;
    top: 0px;
}

.ttStar2 {
    left: 90%;
    top: -5px;
}

.sectionPackages {
    color: white;
}

.ttPackagesCol {
    background-image: url('/img/tiktok/tiktok-hub-by-summercliff-15.png');
    background-position: left 1em bottom 0.2em;
    background-size: 0.8em;
    background-repeat: no-repeat;
}

.ttPackagesRow {
    background-image: url('/img/tiktok/tiktok-hub-by-summercliff-16.png');
    background-position: left 0 top 0.5em;
    background-size: 1.2em;
    background-repeat: no-repeat;
}

.ttFontS2 {
    line-height: 1;
}

.ttFootnote {
    font-size: 0.23em;
    font-family: Segoe;
    font-style: italic;
    margin-top: 1.5em;
}

.tt-main-content .caseHover h5 {
    display: block;
}

.ttPackagesOuter, .ttPackagesTitle {
    padding-left: .85em;
    padding-right: .85em;
}

.ttPackagesExtPad {
    padding-left: 2em;
    padding-right: 2em;
    background-image: url('/img/tiktok/tiktok-hub-by-summercliff-17.png');
    background-position: right top 3em;
    background-size: 1.2em;
    background-repeat: no-repeat;
}

.ttPackagesOuter {
    border: 1px solid white;
    padding-top: 25px;
    padding-bottom: .55em;
    margin-top: 0.45em;
    column-gap: .4em;
}

    .ttPackagesOuter > div {
        flex: 1
    }

    .ttPackagesOuter ul {
        list-style: none;
        padding-left: 0;
        font-size: 14px;
        font-family: Segoe
    }

        .ttPackagesOuter ul li {
            margin-bottom: .2em;
        }

            .ttPackagesOuter ul li:before {
                content: '';
                display: inline-block;
                width: 15px;
                height: 17px;
                background-image: url(/img/tiktok/star.png);
                background-size: contain;
                background-repeat: no-repeat;
                margin-right: 5px;
                vertical-align: middle;
            }

.sectionFeatures {
    background-image: url(/img/tiktok/tiktok-hub-by-summercliff-03.png);
    background-position: right -4px bottom -1.5em;
    background-size: 12.5em;
    background-repeat: no-repeat;
}

.body-tt {
}

.tt-main-content {
    /*font-size: 3.4vw;*/
    font-size: 2.95em;
    color: #2d2d2d;
    font-family: SegoeBold;
}

.featuresTxt {
    font-size: 0.58em;
}

.ttDeliver {
    display: inline-block;
    vertical-align: middle;
    margin-top: 30px;
}

.ttSmallCaps {
    font-size: 0.36em;
    line-height: 1.1;
}

.ttPackagesOuter .ttSmallCaps {
    margin-top: 15px;
}

.ttBulIcons {
    flex-direction: column
}

    .ttBulIcons div {
        color: white;
        border-radius: 38px;
        padding: 0px 0.5em;
        padding-bottom: 2px;
        font-size: 0.76em;
        line-height: 1.2;
        margin-top: .6em;
        margin-right: auto;
    }

.timeTT {
    width: 10em;
    margin-top: 60px;
}

.teamDel {
    width: 9.5em;
    max-width: 100%;
    position: relative;
    top: -10px;
}

.smileyLeft {
    position: absolute;
    left: -0.5em;
    width: 1.2em;
    top: 1.3em;
}

.colorTTRed {
    color: #ee1d52;
}

.colorTTBlue {
    color: #7ae2e2;
}

.bgTTRed {
    background-color: #ee1d52;
}

.bgTTBlue {
    background-color: #6ac9d2;
}

.bgTTBeige {
    background-color: #c2b39c;
}

.ttItalic {
    font-family: SegoeBoldItalic;
}

h1, h2, h3, h4, h5, h6 {
    font-weight: normal;
}

h5, .h5 {
    font-size: 15px;
}

label {
    font-weight: normal;
}

.newsletterw {
    text-align: center;
}

#newslettermail-error {
    color: #b30202;
    font-family: verdana;
    font-weight: bold;
    font-size: 8px;
    position: relative;
    top: -11.5px;
    text-transform: uppercase;
    float: left;
    margin-bottom: 0px;
}

.siteDetails h4 {
    font-family: myriad;
    margin-top: 20px;
    margin-bottom: 3px;
    font-size: 22px;
}

.detailsContainer {
    padding-right: 15px;
    padding-left: 15px;
    margin-right: auto;
    margin-left: auto;
    width: 95%;
}

.detailsContainerInner {
    padding: 15px;
    padding-bottom: 0;
}

.btnContact {
    background-color: #181818;
    border-color: #181818;
    color: white;
    font-family: SfBold;
    border-radius: 0;
    font-size: 20px;
    padding: 3px 15px;
}

.contactForm {
    margin-top: 3.1vw;
}

.animatedBird h1.h1Contact {
    font-size: 150px;
    margin-top: 0
}

.srvCol {
    padding-top: 15px;
    padding-bottom: 30px;
}

    .srvCol:before {
        content: "";
        display: block;
        background: #2d2d2d;
        height: 3px;
        width: 15px;
        top: 0;
        position: absolute;
    }

    .srvCol .hypeTagsSpread {
        margin-bottom: 15px;
        margin-top: 10px;
    }

.sideBorderLeft {
    border-left: 1px solid #e8e5e3;
    padding-right: 52px;
    padding-left: 30px;
}

.sideBorderRight {
    padding-left: 15px;
    padding-right: 15px;
}

.siteDetails {
    font-size: 14px;
}

    .siteDetails a.text-underline {
        color: #524942;
        white-space: nowrap;
        text-overflow: ellipsis;
        overflow: hidden;
        display: block;
    }

    .siteDetails label {
        margin-bottom: 0;
    }

.casesIndex .siteDetails h5 {
    font-family: ftFont;
    font-size: 36px;
    display: inline-block;
    margin-top: 5px;
}

.detailsBody {
    /* border: 1px solid #e8e5e3;
    border-top: none;
    border-bottom: none;*/
}

hr, .detailsBody {
    border-color: #e8e5e3;
    margin-top: 10px;
}

.detailsBody {
    margin-bottom: 15px;
}

.scBlock {
    margin-top: 20px;
    margin-bottom: 20px;
    width: 15px;
    height: 5px;
    background-color: #212121;
}

.text-underline {
    text-decoration: underline;
}

.loaderSpin {
    display: none;
    position: fixed;
    z-index: 1030;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    background: rgb(34 34 34 / 26%) url(../img/loading.gif) 50% 50% no-repeat;
    background-size: 90px;
}

/* When the body has the loading class, we turn
   the scrollbar off with overflow:hidden */
body.loading {
    overflow: hidden;
}

    /* Anytime the body has the loading class, our
   modal element will be visible */
    body.loading .loaderSpin {
        display: block;
    }

.blue {
    color: #2886e0;
}

.slides {
    /*height: 70vh !important;*/
    height: auto !important;
    padding-bottom: 39.55%;
    /*border-radius: 0 0 50px 50px;*/
}

.modal-title {
    font-size: 26px;
}

.modal-content {
    border-radius: 0;
}

.modal .btn-primary {
    background-color: black;
    color: white;
}

    .modal .btn-primary:hover,
    .modal .btn-primary:active:focus {
        color: #333;
        background-color: #e6e6e6;
        border-color: #adadad;
    }

    .modal .btn-primary:focus {
        outline: none
    }

.modal .btn {
    border-radius: 0;
}

.js-csRow.editMode {
    background-image: url(/Content/images/raster.png);
}

.swapSmallGalleryLeft, .swapSmallGalleryRight {
    padding-left: 6px;
    margin-right: 10px;
    width: calc(100% - 6px);
}

.careerRow {
    margin-top: 60px;
    margin-bottom: 20px;
    text-align: justify;
}

.careers {
    font-size: 27px;
    color: #212121;
    margin-top: 5px;
}

    .careers.sm {
        font-size: 19px;
        display: inline-block;
    }

textarea {
    resize: none;
}


/* Override the default bootstrap behavior where horizontal description lists 
   will truncate terms that are too long to fit in the left column 
*/
.dl-horizontal dt {
    white-space: normal;
}

/* Set width on the form input elements since they're 100% wide by default */
select {
    max-width: 260px;
}

/************* pretty scrollbar ****************/
div::-webkit-scrollbar {
    width: 9px;
}

div::-webkit-scrollbar-track {
    border: 1px solid rgba(172, 172, 172, 0.54);
    border-radius: 4px;
    background-color: #f3f3f3;
}

div::-webkit-scrollbar-thumb {
    border: 1px solid #d7d7d7;
    border-radius: 50px;
    background-color: rgb(233, 234, 237);
}

/**************************************/
span.cke_skin_kama {
    width: 100% !important;
}

.hlCaseImageGallery {
    margin-bottom: 20px;
    font-family: SfLight;
    font-size: 13px;
    color: #878787
}

    .hlCaseImageGallery a {
        display: block;
        margin-bottom: 5px;
        width: 100%;
    }

        .hlCaseImageGallery a img {
            object-fit: cover;
            object-position: center;
            width: 100%;
            height: 100%;
        }

.divReview.srv {
    border-bottom: 1px solid #e8e5e3;
}

.splistRow {
    margin-top: 0px;
    margin-bottom: 30px;
}

.spreadsList .row:first-child {
    margin-top: 0;
}

.splistRowDetails {
    margin-bottom: 60px;
}

.detReview.srv {
    font-size: 28px;
}

.seeMore {
    cursor: pointer;
    font-family: myriad;
    margin-top: 10px;
    text-transform: uppercase;
}

.imgDef {
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    width: 100%;
    padding-bottom: 75%;
}


.smDim {
    font-size: 13px;
    color: green;
}

.photoUsedIn {
    font-size: 13px;
    line-height: 1.1;
    text-align: right;
}

.slick-list {
    /*padding-left: 70px!important;
    padding-right: 95px!important;*/
}

.casesIndex .siteDetails h5 {
    padding-left: 6px;
}

.casesIndex .divReview {
    padding: 10px;
    padding-top: 4px;
    background-color: #fffef5;
}

.searchInside {
    display: inline-block;
    width: 207px;
}

img.ui-datepicker-trigger {
    width: 32px;
    top: -2px;
    position: relative;
}

.numberBlock {
    padding: 0 15px;
    border-bottom: 1px solid #e8e5e3;
    margin-top: 15px;
}

    .numberBlock * {
        font-family: ftFont;
    }

    .numberBlock h3 {
        margin-top: 0;
    }

.spIndex {
    font-size: 92px;
    margin-top: 0;
    margin-bottom: 25px;
    line-height: 0.8;
    position: relative;
    display: inline-block;
    color: #212121;
}

    .spIndex:after {
        content: "";
        display: block;
        width: 15px;
        height: 6px;
        background: #212121;
        position: absolute;
        bottom: -12px;
    }

.text-right .spIndex:after {
    right: 0;
}

.gtGoatDetails {
    max-width: 10vw;
}

.galRow {
    margin: 0 -10px;
}

.galCol {
    padding: 0 4px;
}

.slistRi {
    line-height: 1.7;
    padding: 0;
    font-family: myriad;
    font-size: 17px;
    letter-spacing: 1.8px;
    display: inline-block;
}

.scLogo img {
    width: 45%;
    position: absolute;
    right: 0;
    top: -2px;
    bottom: auto;
    margin: auto;
    filter: brightness(9);
}

.bootstrap-select.form-control.ddlPhoto {
    max-width: 130px;
}

    .bootstrap-select.form-control.ddlPhoto .dropdown-menu {
    }

.dt1 {
    font-size: 18px;
    line-height: 1.6;
}

.dt2 {
    font-size: 14.5px;
}

.dt1, .dt2 {
    font-family: SfLight;
}

.detReview {
    font-size: 28px;
    line-height: 1.2;
    font-family: SfBold;
    margin-bottom: 20px;
}

    .detReview h2 {
        font-family: inherit;
        font-size: inherit;
        line-height: inherit;
        display: inline;
    }

    /* .detReview::before {
        display: block;
        height: 0;
        content: "“"; 
        font-family: Georgia,"Times New Roman", serif;
        line-height: 1;
        font-size: 230%;
        left: -35px;
        top: -6px;
        position: relative;
    }*/

    .detReview .rightQuote {
        font-family: Georgia,"Times New Roman", serif;
        font-size: 89px;
        line-height: 0;
        position: relative;
        top: 51px;
        right: -2px;
        vertical-align: top;
    }

.txtAbout {
    margin-bottom: 15px;
}

    .txtAbout p {
        margin-bottom: 20px;
    }


@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) /*IE10+*/ {
}

.tbul {
    font-size: 19px;
}

.sprTitle {
    /*padding: 0 80px;*/
}

.multiImages {
    margin-bottom: 20px;
}

#videoElement {
    background-position: center;
    background-repeat: no-repeat;
    background-color: #2d2d2d;
    /*background-size: cover;*/
    width: 100%;
    /*height: 100vh;*/
    padding-bottom: 56.27%;
    position: relative;
    top: 0;
    left: 0;
    z-index: 0;
    background-size: 100px;
    background-position-y: 37%;
}

.videoElementText {
    position: absolute;
    bottom: 170px;
    right: 0;
    text-shadow: 17px 4px 13px rgba(248, 248, 248, 0.60);
    z-index: 1;
}

.btnVideo {
    border: 2px solid #A9A9A9;
    background-color: #A9A9A9;
    color: #000;
    font-family: SfHeavy;
    font-size: 14px;
    line-height: 1;
    font-weight: 300;
    padding: 3px 5px;
}

.imgMultiDiv {
    background-color: #eeeff1;
    /*margin-bottom: 14px;*/
    float: left;
    width: 100%;
    /*padding: 5px;*/
    position: relative;
    /*-webkit-flex: 1;  
    -ms-flex: 1;  
    flex: 1;*/
}

    .imgMultiDiv span {
        font-size: 14px;
    }

.imgCaseFancy {
}

.imgCase {
    padding-bottom: 34%;
    width: 100%;
    background-repeat: no-repeat;
    background-position: left;
    background-size: contain;
}

.emptyList {
    font-style: italic;
    color: gray;
    margin-top: 20px;
    display: inline-block;
}

.mdInactive {
    position: absolute;
    background-color: rgba(255, 0, 0, 0.49);
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
}

.lblNo {
    /*position: absolute;
    left: 6px;
    top: 6px;*/
    padding: 0px 5px;
    z-index: 6;
    color: black;
    background-color: white;
    font-size: 12px;
    border: 0;
    width: 25px;
    text-align: center;
    border-right: 1px solid black;
    border-bottom: 1px solid black;
}

.divLeft {
    float: left;
    width: 100%;
}


.field-validation-error {
    font-size: 14px;
}

/*#Review {
    display: block !important;
    visibility: visible !important;
    height:0;
    opacity:0
}*/

.validation-summary-errors li, .validation-summary-valid li {
    padding: 4px 10px;
    margin-bottom: 1px;
    border: 1px solid #ebccd1;
    color: #a94442;
    background-color: #f2dede;
    font-size: 14px;
}

    .validation-summary-valid li a {
        color: black;
        text-decoration: underline;
    }


.validation-summary-valid ul {
    list-style-position: inside;
    list-style-type: decimal;
    padding: 0;
}

.btnDeleteImg {
    position: absolute;
    left: 7px;
    bottom: 8px;
    padding: 1px 4px;
    height: 18px;
    line-height: 0.5;
    font-size: 12px;
    color: white;
    background-color: #a8adb8;
    border: 1px solid #a5a5a5;
}

.tbDescription {
    resize: none;
    border: solid 1px #d5d5d5;
    background-color: #ffffff6b;
    border-radius: 2px;
    margin-top: 5px;
    font-family: Arial;
    font-size: 11px;
    padding: 2px;
    width: 100%;
    height: 20px;
    color: #91908B;
    float: left;
}

.navbar-collapse::-webkit-scrollbar-thumb, .navbar-collapse::-webkit-scrollbar-track {
    background-color: #2d2d2d;
}

.industryTagDiv {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    align-items: center;
    gap: 10px;
}

.industryTag {
    font-size: 10px;
    text-transform: uppercase;
    background-color: rgb(39, 39, 39);
    color: white;
    padding: 3px 5px;
    text-align: center;
    align-content: center;
    font-family: SfMedium;
}

.companyLogo {
    max-width: 250px;
    /*filter: contrast(1.1);*/
    mix-blend-mode: darken;
    margin-left: auto;
}

.hypeTagsSpread {
    border-radius: 0;
    line-height: 0.9;
    letter-spacing: 0.4px;
    font-size: 13px;
    font-family: 'SfSemibold';
    font-weight: normal;
    text-decoration: none;
    text-transform: uppercase;
    background-color: rgb(39, 39, 39);
    color: white;
    padding: 4px 5px;
    display: inline-block;
    margin-right: 3px;
    margin-bottom: 4px;
    width: auto;
    margin-top: 10px;
    margin-bottom: 15px;
    text-align: left;
}

.toTop {
    position: fixed;
    z-index: 1000;
    bottom: 15px;
    right: 10px;
    width: 34px;
    height: 34px;
    transition: background-color 300ms linear;
    background-image: url( data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGAAAAA8CAMAAACuCk+GAAAAVFBMVEUAAAD///////////////////////////////////////////////////////////////////////////////////////////////////////////8wXzyWAAAAHHRSTlMAv3FsR04ETZV7qzmMQwNjpYSBbbaedD8lCCghrxzLjAAAATlJREFUeAG10ctOwzAUhOHpBePYSdM2vbTw/u+JkIyUsmCU/5BZ+kjfv7AWLNVtn3M/1YNW2b1s2o51DX+3mW38f3+7edluZZ8XvM8L3ucF7/MC93nB+7zgfV7wPi9wnxe8zwve5wXv84L3eYH7vsB9X+A+L3DfF7jvC9z3Be7zAvd9gfu2wH1T4L4pcH//7gpBX7KFoL+ggPwFBeSDAvDlC9AHBeCDAvClN18APigAHxS8L1gAPijsqO8LoyQN3PeFKj0L933hmDSEfFu4q4v5rnDTNeibQlYJ+qZw1DXom0LWOeibQqd90DeFQc8L932hpHaK+n8yHfdd4abvpTP2TaE7qBWgbwo/vpROxDeF5rfC7B8ug/D2M397eD2V9t5/KrBHbkwZ9GupTn0+jQ8F9zGecj/VpLYvzkEQTeC4sD8AAAAASUVORK5CYII= );
    background-color: rgba(30, 30, 30, 0.8);
    background-size: 50%;
    background-position: 50% 50%;
    background-repeat: no-repeat;
}

.csStatus.alert {
    padding: 1px 10px;
    /*display: block;
    text-align: center; 
     font-weight: normal*/
}

.csImg, .csImgColoured {
    display: none;
}

.detailsListCoverWrapper {
    overflow: hidden; /*needed for hover effect*/
    display: block;
}

.backgroundCover {
    background-size: cover;
    background-position: center;
    display: inline-block;
    background-repeat: no-repeat;
    transition: transform 0.3s ease-in-out;
    -moz-transition: transform 0.3s ease-in-out;
    -webkit-transition: transform 0.3s ease-in-out;
    -o-transition: transform 0.3s ease-in-out;
}

.detailsListCoverWrapper:hover .backgroundCover {
    transform: scale(1.03);
}

.backgroundCoverIndex {
    display: block;
}
/*NEW*/
.backgroundCover {
    position: relative;
    overflow: hidden;
    background: #f2f2f2;
}

    /* Maintain your existing aspect ratio using padding-bottom */

    .backgroundCover.loading::before {
        content: "";
        position: absolute;
        inset: 0;
        background: linear-gradient( 90deg, #eeeeee 20%, #f8f8f8 40%, #eeeeee 60% );
        background-size: 250% 100%;
        animation: shimmer 1.3s linear infinite;
    }

@keyframes shimmer {
    from {
        background-position: 200% 0;
    }

    to {
        background-position: -200% 0;
    }
}

.csImg2 {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: 0;
    transition: opacity .35s ease;
}

    .csImg2.loaded {
        opacity: 1;
    }

.backgroundCover:not(.loading)::before {
    display: none;
}
/*end NEW*/

.indexRow {
    margin-bottom: 100px;
}

.caseLink {
    position: relative;
}

.csIndex .caseLink {
    width: 100%;
    /*max-width: 600px;*/
    margin: 0 auto;
    display: block;
}


.js-ddlCaseStudiesDDL .dropdown-menu > .disabled > a:focus,
.js-ddlCaseStudiesDDL .dropdown-menu > .disabled > a:hover {
    background-color: #f2dede;
}

.grayscale {
    filter: saturate(0);
    -webkit-filter: saturate(0);
    -o-filter: saturate(0);
    -webkit-transition: -webkit-filter .25s linear;
    -moz-transition: -moz-filter .25s linear;
    -o-transition: -o-filter .25s linear;
}

.caseLink:hover .grayscale {
    filter: none;
    -webkit-filter: none;
    opacity: 1;
}

.grayscale-fix { /*ie*/
    position: absolute !important;
    opacity: 1;
    z-index: 1;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    transition: opacity 0.25s linear;
}

.moreCS {
    font-size: 25px;
    font-family: SfHeavy;
    text-transform: uppercase;
    color: black;
    position: relative;
    margin-top: 30px;
    display: inline-block;
}

    .moreCS svg {
        width: 50px;
        height: 50px;
    }

.caseLink:hover .grayscale-fix { /*ie*/
    opacity: 0;
}

.caseHover {
    position: absolute;
    top: 0;
    word-wrap: break-word;
    width: 100%;
    background-color: #2d2d2d;
    z-index: 1;
    transition: all 0.6s ease-in-out;
    -moz-transition: all 0.6s ease-in-out;
    -webkit-transition: all 0.6s ease-in-out;
    -o-transition: all 0.6s ease-in-out;
    padding: 10px;
    opacity: 0;
    text-transform: uppercase;
}

.caseLink:hover .caseHover {
    overflow: auto;
    text-overflow: initial;
    white-space: normal;
    top: 0;
    opacity: 1;
}

.caseDetAlt {
    max-width: calc(100% - 24px);
    text-transform: uppercase;
    font-size: 12px;
    position: absolute;
    z-index: 1;
    padding: 0 8px;
    right: 0;
    bottom: 0;
    font-family: SfSemiBold;
    background-color: black;
    color: white;
    transition: all 0.6s ease-in-out;
    -moz-transition: all 0.6s ease-in-out;
    -webkit-transition: all 0.6s ease-in-out;
    -o-transition: all 0.6s ease-in-out;
    height: 30px;
}

.js-slickTikToks .caseDetAlt {
    right: var(--ttBorder);
    bottom: var(--ttBorder);
}

.js-slickTikToks .caseHover {
    top: var(--ttBorder);
    width: calc(100% - 2 * var(--ttBorder));
}

.js-slickTikToks .caseLink:hover .caseHover {
    top: var(--ttBorder);
}

.sectionTTCasesContainer .detailsListCoverWrapper {
    border: var(--ttBorder) solid transparent;
}

.caseDetAlt label {
    margin-bottom: 0;
    line-height: 31px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    float: left;
}

.caseDet {
    font-size: 28px;
    letter-spacing: -1px;
    line-height: 1.15;
    margin-top: 20px;
    margin-bottom: 10px;
    font-family: SfHeavy;
}

    .caseDet a {
        color: #c0c0c0;
    }

        .caseDet a.compName {
            color: black;
            text-transform: uppercase;
        }

.caseHover * {
    color: white;
}

.caseHover h3 {
    text-transform: uppercase;
    display: inline;
    font-size: 23px;
}

.caseHover h5 {
    display: inline;
    font-size: 14px;
    vertical-align: middle;
}

.boReview {
    max-height: 177px;
    overflow: hidden;
    float: left;
    position: relative;
    line-height: 18px;
    font-size: 17px;
}

.newslettert {
    font-size: 17px;
    letter-spacing: .04em;
    text-transform: uppercase;
    padding: 0 3px;
    display: inline-block;
}

    .newslettert a {
        color: #88774f;
    }

.newslettera {
    position: relative;
    width: 240px;
    height: 25px;
    display: inline-block;
    vertical-align: middle;
    display: none;
}

.newsletterd {
    color: #808080;
    padding-top: 0;
    font-size: 14px;
    line-height: 1;
    text-align: left;
    width: 225px;
    margin-right: 5px;
    display: none;
}

.newslettera input[type="email"] {
    color: #ccc;
    font-size: 16px;
    line-height: 1.55;
    padding: 4px 84px 3px 8px;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    margin: 0;
    height: 25px;
    background-color: #262626;
    border: 1px solid black;
}

.newslettea button {
    width: 84px;
    height: 23px;
    background: #333333;
    color: #f9f9f9;
    border: 1px solid #4d4d4d;
    position: absolute;
    top: 0;
    right: 0;
    font-size: 17px;
    letter-spacing: 0.1em;
}

.btnSignup {
    width: 84px;
    height: 23px;
    text-transform: uppercase;
    background: #333333;
    color: #f9f9f9;
    border: 1px solid #2a2a2a;
    position: absolute;
    top: 1px;
    right: 1px;
    font-size: 15px;
    letter-spacing: 0.1em;
}

    .btnSignup:hover {
        color: #7b6e65;
    }

#imgSuccess {
    right: 0;
    top: 3px;
    position: absolute;
    color: mediumseagreen;
}

.share-facebook {
    background-image: url('../img/FACEBOOK-ICON.png');
    background-size: cover;
}

.share-twitter {
    background-image: url('../img/TWITTER-ICON.png');
    background-size: cover;
}

.share-instagram {
    background-image: url('../img/INSTAGRAM-ICON.png');
    background-size: cover;
}

.share-linkedin {
    background-image: url('../img/LINKEDIN-ICON.png');
    background-size: cover;
}

.share-youtube {
    background-image: url('../img/YOUTUBE-ICON.png');
    background-size: cover;
}

.noPad {
    padding: 0 8px;
}

.noPadLeft {
    padding-left: 0;
}

.footer-valign {
    padding: 10px 5px;
    gap: 15px;
    justify-content: right;
}

a.footerBox, .footerSocial a {
    font-size: 18px;
    font-family: SfHeavy;
}

a.footerBox {
    border: 1px solid white;
    padding: 5px 12px;
    position: relative;
    cursor: pointer;
    color: white;
    width: 353px;
    max-width: 100%;
    display: inline-block;
}

    a.footerBox:hover {
        color: black;
        background-color: white;
        cursor: pointer;
    }

.footerSocial a {
    text-decoration: underline;
    color: black;
}

.footerSocialOuter {
    margin-right: auto;
}

.footerBoxSub {
    font-family: SfSemibold;
    font-size: 75%;
}

.footerArrow {
    width: 17px;
    height: 17px;
    position: absolute;
    right: 8px;
    top: 6px;
    color: black;
}

.footerSocial {
    display: flex;
    column-gap: 15px;
}

.footerCookies {
    justify-content: end;
    margin-bottom: 4px;
    margin-right: 3.1vw;
    column-gap: 38px;
    display: flex;
    align-items: baseline;
}

.footerLogo {
    width: calc(100% + 8px);
    left: -4px;
    position: relative;
}

.tgl span {
    display: none;
    color: #808080;
    font-family: myriad;
    letter-spacing: 0.15em;
    font-size: 15px;
}

.tgl a {
    width: 11.5%;
    padding: 0 1%;
    display: inline-block;
}

    .tgl a img {
        width: 100%;
        max-width: 23px;
    }

    .tgl a:hover {
        opacity: 0.8;
    }

#logoutForm {
    display: flex;
    gap: 38px;
}

.detailsListCover {
    width: 100%;
    padding-bottom: 100%;
    position: relative;
    background-color: #efefef;
}

.background-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: radial-gradient(ellipse farthest-corner at center center, rgba(0,0,0,0.2) 20%, rgba(0,0,0,0.75) 100%) repeat scroll 0% 0%;
    transition: 500ms;
}

.thumbLink {
    width: 50px;
    height: 38px;
}

.overflowTable {
    overflow-y: auto;
    width: 100%;
    padding-right: 22px;
    margin-top: 15px;
}

.spreadDiv {
    background-color: hsla(225, 10%, 94%, 1);
    padding: 15px 11px;
    margin-bottom: 0px;
    border: 3px solid white;
    cursor: move;
}


    .spreadDiv .form-control {
        background-color: white;
    }

/**************************override toggle******************************/
/*body {
    padding-top: 70px;
}

.navbar-header {
    float: none;
}

.navbar-toggle {
    display: block;
    float: none;
}

.navbar-collapse.collapse {
    display: none !important;
}

.navbar-nav {
    float: none !important;
}

    .navbar-nav > li {
        float: none;
    }

.navbar-collapse.collapse.in {
    display: block !important;
}

.navbar-collapse::-webkit-scrollbar {
    width: 1px;
}

.navbar-collapse::-webkit-scrollbar-thumb, .navbar-collapse::-webkit-scrollbar-track {
    border: 0;
    border-radius: 0;
    background-color: #272727;
}

    .navbar-inverse .navbar-toggle:hover, .navbar-inverse .navbar-toggle:focus {
        background-color: transparent;
    }

#navbar-close {
    color: white;
    line-height: 0.5;
}*/

.navbar-inverse .navbar-toggle {
    border: 0;
}

.collapsing {
    -webkit-transition-duration: 1s;
    -o-transition-duration: 1s;
    transition-duration: 1s;
}

.navbar-toggle {
    float: left;
}

.navbar {
    margin-bottom: 0;
    border: 0;
}

.navbar-collapse::-webkit-scrollbar {
    width: 1px;
}

.navbar-collapse::-webkit-scrollbar-thumb, .navbar-collapse::-webkit-scrollbar-track {
    border: 0;
    border-radius: 0;
}

.pen .navbar-toggle {
    border: none;
    background: transparent !important;
}

    .pen .navbar-toggle:hover {
        background: transparent !important;
    }

    .pen .navbar-toggle .icon-bar {
        width: 22px;
        -webkit-transition: all 0.2s;
        transition: all 0.2s;
        /*background-color: white;*/
    }

/* ANIMATED X */
.navbar-toggle.x .icon-bar:nth-of-type(1) {
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    -webkit-transform-origin: 10% 10%;
    -ms-transform-origin: 10% 10%;
    transform-origin: 10% 10%;
}

.navbar-toggle.x .icon-bar:nth-of-type(2) {
    opacity: 0;
    filter: alpha(opacity=0);
}

.navbar-toggle.x .icon-bar:nth-of-type(3) {
    -webkit-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg);
    -webkit-transform-origin: 10% 90%;
    -ms-transform-origin: 10% 90%;
    transform-origin: 10% 90%;
}

/* ANIMATED X COLLAPSED */
.navbar-toggle.x.collapsed .icon-bar:nth-of-type(1) {
    -webkit-transform: rotate(0);
    -ms-transform: rotate(0);
    transform: rotate(0);
}

.navbar-toggle.x.collapsed .icon-bar:nth-of-type(2) {
    opacity: 1;
    filter: alpha(opacity=100);
}

.navbar-toggle.x.collapsed .icon-bar:nth-of-type(3) {
    -webkit-transform: rotate(0);
    -ms-transform: rotate(0);
    transform: rotate(0);
}
/* END ANIMATED X */

/* FORCE NAVBAR-TOGGLE */

.pen .navbar-header {
    float: none;
    position: relative;
}

.pen .navbar-toggle {
    display: block;
    float: left;
}

.pen .navbar-collapse.collapse {
    display: none !important;
}

.navPartial {
    margin: 0;
    padding: 0;
}

.noMarginBottom {
    margin-bottom: 0;
}

.marginBottom10 {
    margin-bottom: 10px;
}

.marginBottom15 {
    margin-bottom: 15px;
}

.marginBottom30 {
    margin-bottom: 30px;
}

.marginTop5 {
    margin-top: 5px;
}

.marginTop10 {
    margin-top: 10px;
}

.marginTop15 {
    margin-top: 15px;
}

.marginTop30 {
    margin-top: 30px;
}

.marginTop70 {
    margin-top: 70px;
}

.footerShortlist {
    display: inline-block;
}

    .footerShortlist img {
        max-height: 160px;
        padding: 0 30px;
        padding-bottom: 5px;
    }

.pen .navPartial {
    position: absolute;
    left: 4vw;
    bottom: 0;
    height: auto;
    z-index: 1000;
    background-color: #2d2d2d;
}

.pen .navbar-nav > li {
    padding: 2vh 4vw;
    position: relative;
}

    .pen .navbar-nav > li.liGooglePartners {
        padding: 0 4vw;
    }

.pen .navPartial > li {
    display: inline-block;
}

.pen .navbar-nav > li > a {
    transition: color 0.3s;
    font-family: myriad;
    font-size: 12vh;
    line-height: 0.7;
    padding-top: 0;
    padding-bottom: 0;
    padding-left: 0.6vw;
    color: #FFFEF5;
    display: inline-block;
    opacity: 0;
}

.pen .navPartial > li > a {
    font-size: 16px;
    font-family: myriad;
    color: #525252;
}

.menua:after {
    color: white;
    position: absolute;
    white-space: nowrap;
    left: 0.8vw;
    letter-spacing: 0.1vw;
    font-size: 16px;
    font-family: arno,'Times New Roman';
    visibility: hidden;
    display: block;
}

.menua:hover:after {
    visibility: visible;
}

.menua-if:after {
    content: "it's not about us.";
}

.menua-you:after {
    content: "it's about you.";
}

.menua-blv:after {
    content: "our philosophy.";
}

.menua-in:after {
    content: "touch.";
}

.menua-magic:after {
    content: "case studies.";
}

.navbarInactive a {
    color: #333 !important;
}

.pen .navbar-collapse.collapse.in {
    display: block !important;
    /*overflow-y: auto !important;*/
    overflow-y: visible !important;
}

.pen .navbar-brand {
    font-size: 14px;
}

.navbar-fixed-top .navbar-collapse, .navbar-fixed-bottom .navbar-collapse {
    max-height: calc(100% - 48px);
    position: relative;
}

.mainnav .sublink {
    color: white;
    position: absolute;
    bottom: 0;
    left: 4vw;
    padding-left: 0.8vw;
    letter-spacing: 0.1vw;
    font-size: 4.2vw;
    font-family: ftFont;
    display: none;
}

.navbar-collapse {
    -webkit-transition-duration: 1s;
    -o-transition-duration: 1s;
    transition-duration: 1s;
    border: 0;
    box-shadow: none;
}
/********************************************************************/

.indexurl {
    font-size: 16px;
}

.sectionFullImg {
    background-color: #2d2d2d;
    position: relative;
    /*padding: 0 17px;*/
}

/*.deepBackground {
    background-size: cover !important;
    background-position: center bottom !important;
    overflow: hidden;
    height: 400px;
}*/

.gtFlip {
    -moz-transform: scaleX(-1);
    -o-transform: scaleX(-1);
    -webkit-transform: scaleX(-1);
    transform: scaleX(-1);
    filter: FlipH;
    -ms-filter: "FlipH";
}

    .gtFlip .sassy {
        left: -1vw;
    }

.animatedBirdcol {
    position: relative;
    top: -17px;
    left: 0;
}

.animatedBird {
    font-size: 40px;
    margin-bottom: 20px;
    margin-top: 5px;
    position: relative;
    /*border-bottom: 1px solid #e8e5e3;*/
}

    .animatedBird.dtlOnly {
        margin-top: 0;
    }

    .animatedBird .gtGoatDetails {
        position: absolute;
        left: calc(100% + 24px);
        top: -1px;
        height: 67px;
    }

    .animatedBird .gtGoatDetailsTop {
        position: absolute;
        left: -215px;
        top: 32px;
        width: 740px;
        /* filter: contrast(1.1); */
        z-index: -1;
        mix-blend-mode: luminosity;
    }

.shareFB {
    background-image: url('../img/share.png');
    background-repeat: no-repeat;
    background-size: contain;
    width: 78px;
    height: 31px;
    float: left;
    margin-top: 20px;
}

.casesIndex .animatedBird {
    padding-left: 0;
    padding-top: 60px;
    padding-bottom: 0;
    margin-bottom: 0;
    border: 0;
}

.breadLink {
    font-size: 12px;
    line-height: 0.8;
    text-transform: uppercase;
    display: block;
    position: relative;
    padding-top: 16px;
    font-family: SfRegular;
}

.blFe {
    color: #212121;
}

/*.breadLink:before {
    content: "";
    display: inline-block;
    vertical-align: top;
    height: 8px;
    width: 28px;
    margin-right: 6px;
    background: #212121;
}*/

.animatedBird h1 {
    font-size: 40px;
    word-break: break-word;
    text-transform: lowercase;
    margin-top: 3px;
    margin-bottom: 0px;
    color: #181818;
}

.animatedBird h4 {
    font-size: 20px;
    margin-bottom: 10px;
    margin-top: 5px;
    color: #181818;
}

.animatedBird h5 {
    font-size: 20px;
    margin-bottom: 10px;
    color: #181818;
}

.animatedBird.dtlOnly h1, .animatedBird.dtlOnly h4 {
    margin-bottom: 0;
}

.sassy {
    position: relative;
    bottom: 0;
    left: 0;
    max-width: 9vw;
}

.gtgt .sassy {
    left: 15px;
}

.aboutPage .sassy {
    left: 0;
}

.sassy.srv {
    float: left;
    left: 18px;
    top: -13px;
}

/***************************************/
.lama {
    width: 154px;
    height: 140px;
    background: url(../img/lama1.png) 0 top;
    animation: play 3s steps(116);
}

.innerCover {
    /*border: 1px solid #eeeeec;
    padding: 30px;*/
}

.mobileImg {
    display: none;
    position: relative;
}

.mobimg {
    background-size: cover;
    background-position: center;
    padding-top: 100%;
}

@keyframes play {
    100% {
        background-position: -17052px top;
    }
}

/*********/
@media screen and (max-width:1199px) {
    .spreadsList .cutout-text {
        font-size: 12vw;
    }

    .awardsDiv {
        bottom: -3px;
    }

    .smileyLeft {
        left: 0;
    }

    .detailsReviewArticle {
        column-count: 2;
    }

    .awardsRotBottom {
        zoom: 0.56;
        margin-bottom: 70px;
    }
}

@media screen and (max-width:1023px) {
}

@media screen and (max-width:991px) {

    .cutout-text {
        font-size: 26vw;
    }

    .animatedBird h1.h1Contact {
        font-size: 110px;
    }

    .md-margin-top-0 {
        margin-top: 0 !important;
    }

    .indexRow.flexrow {
        display: block;
    }

    .indexRow {
        margin-bottom: 0;
    }

    .js-bodyIndex .detailsListCover {
        padding-bottom: 100% !important;
    }

    .awardsRotBottom {
        zoom: 0.6;
        margin-bottom: 50px;
        padding-right: 28vw;
    }

    .awardsDivRot {
        /*zoom: 0.67;*/
        width: 230px;
    }

    .ttPackagesExtPad {
        padding-left: 1em;
        padding-right: 1em;
        background-position: right top;
    }

    .tt-main-content {
        font-size: 2.5em;
    }

    .ttPackagesRow {
        background-position: right 3em top;
        background-size: .7em;
    }

    .ttPackagesCol {
        background-position: left 0 bottom 0.2em;
    }

    .ttPackagesOuter, .ttPackagesTitle {
        padding-left: .5em;
        padding-right: .5em;
    }

    .sectionFeatures, .sectionPackages, .sectionTTForm {
        padding-top: 50px;
        padding-bottom: 50px;
    }

    .sectionFeatures {
        background-size: 10.5em;
    }

    .js-awardsDiv {
        bottom: 30px;
    }
}

@media screen and (max-width:767px) {
    :root {
        --liMenuItemRightWidth: 140px;
    }

    body > .container {
        padding-left: 30px;
        padding-right: 30px;
    }

    body:not(.js-bodyIndex) .detailsContainerFluid {
        margin-top: 80px;
    }

    body.js-bodyIndex .detailsContainerFluid {
        padding-top: 55px;
    }

    .animatedBird .gtGoatDetailsTop {
        position: relative;
        left: 0;
        top: 0;
        width: 22%;
    }

    .hlCaseImageGallery a {
        aspect-ratio: unset !important;
    }

    .cutout-text,
    .spreadsList .cutout-text {
        font-size: 28vw;
    }

    .dt1, .dt2 {
        font-size: 15px;
    }

    .animatedBird h1.h1Contact {
        font-size: 40px;
    }

        .animatedBird h1.h1Contact br {
            display: none
        }

    .rocol {
        padding-top: 30px;
    }

    .servicesBody .parallax-section {
        height: initial;
        padding-bottom: 75%;
        background-attachment: initial;
        background-size: cover;
        position: relative;
        margin-top: var(--servicesBodyColTop);
    }

    .servicesBody .white-overlay-container {
        height: var(--servicesBodyColTop);
        position: absolute;
        top: calc(-1 * var(--servicesBodyColTop));
        mix-blend-mode: initial;
        background-color: transparent;
    }

    .industryTagDiv {
        align-items: end;
    }

    .companyLogo {
        margin-left: 0;
    }

    .white-overlay-container {
        height: calc(100vh - 80px);
        align-items: center;
    }

    .txtAbout {
        column-count: 1;
    }

    .footerCookies {
        column-gap: 25px;
    }

    .footerLogo {
        position: relative;
        top: -2px;
    }

    .scLogoInnerXs {
        display: block !important;
        right: 5vw;
        position: absolute;
        top: 12px;
        max-width: 252px;
    }

    .scLogo {
        display: none
    }

    .detRow {
        margin-top: 30px;
    }

    .idxWell {
        padding: 0;
    }

    .ruDiv {
        margin-top: 30px;
    }

    .awardsDivOuter {
        text-align: center;
        margin-top: 35px;
    }

    .js-bodyIndex .mobileImg {
        margin-top: 50px;
    }

    .ruDiv {
        font-size: 13vw;
        padding: 0;
    }

    .caseDet {
        margin-top: 15px;
        margin-bottom: 15px;
    }

    .js-btnReadMore {
        display: none;
    }

    .js-expandableText.clamped {
        display: block;
    }

    .moreCS {
        font-size: 15px;
    }

        .moreCS svg {
            width: 32px;
            height: 32px;
        }

    .footer-valign {
        flex-wrap: wrap;
        row-gap: 10px;
    }

    .footerSocialOuter {
        width: 100%;
    }

    a.footerBox {
        flex: 1;
        padding-right: 25px;
    }

    .flexrow.footer-valign {
        display: block;
    }

    .awardsRotBottom {
        zoom: 0.34;
        margin-bottom: 41px;
        padding-right: 43vw;
    }

    .detailsReviewArticle {
        column-count: 1;
    }

    .menuLogo {
        display: none;
    }

    .idxVideoWrapper {
        display: none;
    }

    .navbar-toggle:not(.collapsed) {
        width: 36px;
    }

    .navbar-nav.flex-menu {
        width: 100%;
        display: block;
    }

    .stickyNavOuter {
        position: initial;
    }

    .navbar-sticky {
        position: fixed;
        background-color: hsl(0deg 0% 76.47% / 96%);
        width: 100%
    }

    .navbar-toggle {
        border-radius: 0;
        margin-left: 8px;
    }

    .nav.navbar-nav.flex-menu-inner,
    .flex-menu-inner.navbar-nav a.menua {
        display: block;
    }

    .flex-menu-inner.navbar-nav a.menua {
        padding: 4px 0;
    }

    #loader {
        zoom: .8;
    }

    .partnersBadgeOuter {
        padding-top: 2vw;
    }

    .js-awardsDiv {
        right: 5vw;
        width: 26vh;
    }

    .flexrow.flexrow-xs-visible {
        display: flex;
    }

    .sectionTTForm .realperson-text {
        font-size: 8px;
    }

    .featuresTxt br {
        display: none
    }

    .sectionFeatures, .sectionPackages {
        padding-left: 30px;
        padding-right: 30px;
    }

    .sectionFeatures {
        background-position: right 0 bottom -1.3em;
    }

    .teamDel {
        width: 67vw;
        top: -15px;
    }

    .ttPackagesRow {
        background-position: right 2.5em top;
        background-size: .9em;
    }

    .ttPackagesCol {
        background-image: none;
    }

    .tt-main-content {
        font-size: 2.1em;
    }

    .ttBulIcons div {
        font-size: 0.6em;
    }

    .ttPackagesExtPad {
        padding-left: 0;
        padding-right: 0;
        background-position: right top 0.5em;
    }

    .smileyLeft {
        left: 0;
        top: 1.3em;
        position: relative;
    }

    .ttHubContactForm:after {
        left: 30px;
        right: 30px;
    }

    .imgTT04 {
        width: 87%;
    }

    .ttFormContainer,
    .ttFormFirstRow {
        background-image: none;
    }

    .ttHubContactForm form {
        padding: 17px 48px;
    }

    .ttStar3 {
        right: -8px;
    }

    .partnersBadgeOuter img {
        width: 30px;
    }

    .js-cookiesHome {
        text-align: right;
        /*right: 46vw;*/
        padding-right: 17px;
        bottom: 0;
    }

        .js-cookiesHome a {
            padding: 0px 1px;
            font-size: 6px;
        }

    .tgl {
        text-align: center;
    }

        .tgl a {
            width: 9%;
        }

    .cc-revoke, .cc-window {
        font-size: 11px;
        line-height: 1.1em;
    }

    .cc-floating.cc-type-info.cc-theme-classic .cc-btn {
        font-size: 12px;
    }

    .lamaOuter {
        display: none !important
    }

        .lamaOuter img {
            height: 11vh !important;
        }

    .topnav {
        width: var(--liMenuItemRightWidth);
        text-align: right;
        right: 5vw;
        top: -1px;
    }

        .topnav ul.topMenuLinks {
            padding: 0;
            text-align: left;
        }

    .toggleRightNav {
        float: none;
        padding: 0;
        margin-bottom: 3px;
    }

    .extPadxs {
        padding: 0 48px;
    }

    .slidesLoader {
        background-size: 11%;
        top: 0px;
    }

    .overflowTable {
        height: auto !important;
    }

    .swapSmallCol {
        min-height: 0 !important;
    }

    .row.reorder-xs {
        transform: rotate(180deg);
        direction: rtl; /* Fix the horizontal alignment */
    }

        .row.reorder-xs > .rocol {
            transform: rotate(-180deg);
            direction: ltr; /* Fix the horizontal alignment */
        }
}

@media screen and (max-width:425px) {
    a.footerBox, .footerSocial a {
        font-size: 4.1vw;
    }

    .h1, h1 {
        font-size: 28px;
    }
}

@media screen and (max-width:701px) {

    .extPadxs {
        padding: 0 15px;
    }
}

@media screen and (min-width:640px) {

    .tgl a {
        display: inline;
    }
}

@media screen and (min-width:768px) {

    .navbar-toggle {
        display: none;
    }

    .noPad {
        padding: 0 15px;
    }

    .ruItemLeft {
        text-align: right
    }

    .newslettert {
        font-size: 17px;
        letter-spacing: .1em;
        padding: 0 3px;
    }

    .linetxt br {
        display: none;
    }

    .padRight15 {
        padding-right: 15px;
    }

    /*#loader {
        left: calc(50% - 75px);
        top: calc(50% - 148px);
        width: 150px;
        height: 150px;
    }*/

    .linetxt {
        font-size: 15px;
        line-height: 18px;
    }

        .linetxt br {
            display: block;
        }

    .mainnav .sublink, .menua:after {
        font-size: 18px;
    }

    .sassy {
        left: -2.1vw;
    }

    .gtgt .sassy, .aboutPage .sassy {
        left: 22px;
    }

    .numberBlock h3 {
        margin-top: 20px;
    }

    .slistRi {
        padding: 9px 0;
    }

    .animatedBird h5 {
        font-size: 24px;
        margin-top: 5px;
    }

    .siteDetails {
        padding-top: 10px;
    }

    .numberBlock {
        padding: 0 30px;
        border: 0;
        margin-top: 0;
    }

    .sideBorderRight {
        border-right: 1px solid #e8e5e3;
        padding-left: 52px;
        padding-right: 30px;
    }

    .galCol {
        padding: 0 7px;
    }

    .coleight {
        padding-top: 45px;
    }

    .srvCol .hypeTagsSpread {
        margin-bottom: 25px;
    }

    .srvCol {
        padding-top: 30px;
    }

    .splistRow {
        margin-top: 40px;
        margin-bottom: 70px;
    }

    .careers {
        font-size: 3.1vw;
    }

    .detReview.srv {
        font-size: 31px;
        padding-left: 18px;
    }

    .divReview.srv {
        padding-top: 20px;
    }

    .slidesLoader {
        background-size: 7%;
        top: 17px;
    }

    .sassy {
        left: -2.1vw;
    }

    .animatedBird h1 {
        font-size: 5vw;
        margin-top: 10px;
    }

    .animatedBird h4 {
        font-size: 26px;
    }

    .detailsContainerInner {
        padding: 35px;
        padding-bottom: 0;
        padding-left: 70px;
    }

    .animatedBirdcol {
        top: -67px;
    }

    .animatedBird.dtlOnly {
        margin-top: 7px;
    }

    .detailsContainer {
        width: 750px;
    }

    .navbar-nav.navPartial > li > a {
        padding: 0;
    }

    .spDesc {
        max-width: 500px;
    }

    .carcol {
        float: right;
    }

    .share-widget-square {
        float: left;
    }

    .sassy.dtl {
        margin-top: -20px;
    }

    .sassy.srv {
        padding: 0 10px;
        left: 50px;
        top: 0;
    }

    .flex {
        display: -webkit-flex;
        display: flex;
        -webkit-box-align: flex-end;
        -webkit-align-items: flex-end;
        -ms-flex-align: flex-end;
        align-items: flex-end;
        -webkit-box-pack: flex-end;
        -webkit-justify-content: flex-end;
        -ms-flex-pack: flex-end;
        justify-content: flex-end;
    }

    .flexrow {
        display: -webkit-flex;
        display: flex;
    }

    .flex-direction-column {
        flex-direction: column;
    }

    .gtgt {
        padding: 0 31px;
    }

        .gtgt.blv {
            padding: 0 4.1vw;
        }

    .swapBorderRight {
        border-right: 1px solid #e8e5e3;
    }

    .swapBorderLeft {
        border-left: 1px solid #e8e5e3;
    }

    .swapSmallColLeft {
        float: left;
    }

    .swapSmallColRight {
        /*float: right;*/
        margin-left: auto;
        order: 2;
        -webkit-order: 2;
    }

    .swapSmallGalleryLeft {
        padding-left: 89px;
        margin-right: 7px;
        width: calc(100% - 7px);
    }

    .swapSmallGalleryRight {
        padding-right: 89px;
        margin-left: 7px;
        width: calc(100% - 7px);
    }

    .pen .navbar-toggle {
        float: none;
    }

    .pen .navPartial > li > a {
        padding-top: 0px;
        font-size: 30px;
    }

    .mainnav .sublink {
        visibility: visible;
    }

    .filterSort, .pagination {
        float: right;
    }

    .tgl a img {
        max-width: 23px;
    }
}

@media screen and (max-height:599px) {
}

@media screen and (min-width:992px) {


    .newslettert {
        padding: 0 5px;
    }

    .extPad {
        /*padding: 0 50px;*/
    }

    .extPad20 {
        padding: 0 20px;
    }

    .extPad25 {
        padding: 0 25px;
    }

    .extPad30 {
        /*padding: 0 30px;*/
    }

    .casesIndex .divReview {
        margin-top: -2vw;
    }

    .detailsContainer {
        width: 970px;
    }

    .tgl {
        margin-left: 0;
    }

    .newslettera {
        display: inline-block;
    }

        .newslettera input[type="email"] {
            padding: 7px 84px 3px 8px;
            height: 30px;
        }

    .newslettea button {
        height: 30px;
    }

    #newslettermail-error {
        font-size: 12px;
        top: 29px;
        text-transform: initial;
        font-family: ftFontBold;
    }

    .btnSignup {
        height: 26px;
        top: 2px;
        font-size: 16px;
    }

    .newslettera {
        height: 30px;
    }
}

@media screen and (min-width:1024px) {

    .pen .navbar-nav > li > a {
        font-size: 12vh;
    }

    .pen .navPartial > li {
        padding: 0;
    }

        .pen .navPartial > li > a {
            font-size: 20px;
        }
}

@media screen and (max-width:1100px) {

    .newslettert {
        font-size: 15px;
    }
}

@media screen and (max-device-width:1023px) {

    .mainnav .sublink, .menua:after {
        visibility: visible;
        color: rgba(222, 212, 199, 0.38);
    }

    .pen .navPartial > li > a {
        line-height: 0.4;
    }

    .sassy {
        max-width: 20.5vw;
    }
}

@media screen and (max-device-width:1023px) and (orientation: landscape) {
    .js-cookiesHome {
        text-align: right;
    }

        .js-cookiesHome a:last-child {
            padding-right: 0
        }

    .lamaOuter {
        display: none !important
    }

    .partnersBadgeOuter img {
        width: 30px;
    }

    .topnav {
        top: 0px;
    }
}

@media only screen and (min-device-width : 768px) and (max-device-width : 1024px) /* ipad   */
{
}

@media screen and (max-device-width:992px) and (max-device-height:992px) {
}

@media only screen and (min-device-width : 768px) and (max-device-width : 1366px) /* ipad & iphone "X" */
{
    .js-awardsDiv {
        width: 32vw;
    }

    .animatedBird h1 {
        font-size: 40px;
    }

    .sassy.dtl {
        margin-top: -7px;
    }

    .sassy.srv {
        padding: 0;
    }

    .gtgt {
        padding: 0 5px;
    }

    .detailsContainerInner {
        padding: 16px;
        padding-bottom: 0;
        padding-left: 35px;
    }

    .animatedBirdcol {
        top: 0;
    }

    .pen .navbar-nav > li > a {
        font-size: 12vh;
    }

    .cc-bottom {
        bottom: 3em;
    }

    .cc-window.cc-floating {
        max-width: 18em;
    }

    .pen .navPartial > li > a {
        font-size: 2vh;
    }

    .menua:after {
        font-size: 21px;
        visibility: visible;
    }

    .detReview .rightQuote {
        top: 60px;
    }

    .btnSignup {
        font-size: 15px;
        padding-top: 2px;
    }

    .newslettera input[type="email"] {
        padding: 6px 84px 3px 8px;
    }

    .caseDet {
        font-size: 15px;
    }

    .sassy.srv {
        left: 0;
    }

    .sassy {
        max-width: 11.5vw;
    }

    .detailsContainer {
        padding: 0px 30px 0;
    }

    .animatedBird.dtlOnly {
        margin-top: -30px;
    }

    .sideBorderRight {
        padding-left: 38px;
    }

    .animatedBird h1 {
        font-size: 44px;
    }

    .animatedBird h4 {
        font-size: 27px;
    }

    .gtgt .sassy {
        left: 7px;
    }

    .caseDet {
        font-size: 13px;
    }
}

@media only screen and (min-device-width : 768px) and (max-device-width : 1366px) and (orientation : landscape) /*ipad & iphone "X" landscape*/
{
    .tgl span {
        display: none !important;
    }

    .pen .navPartial > li > a {
        font-size: 2vh;
    }

    .menua:after {
        font-size: 13px;
        color: rgba(222,212,199,.38);
    }

    .sideBorderRight {
        padding-left: 44px;
    }

    .pen .navbar-nav > li {
        padding: 1.5vw 4vw;
    }

        .pen .navbar-nav > li > a {
            font-size: 10vh;
        }

    .tgl a {
        width: 8.5%;
        padding: 0 1%;
    }

    .noPad {
        padding: 0 5px;
    }

    .mobimg {
        padding-top: 30%;
    }
}

@media only screen and (min-device-width : 768px) and (max-device-width : 1024px) {
}

@media only screen and (min-device-width : 768px) and (max-device-width : 1024px) and (orientation : landscape) {
}

@media only screen and (max-device-width : 767px) and (orientation : landscape) /*all mobile landscape*/ {

    .pen .navbar-nav > li {
        padding: 2.5vh 4vw;
    }

        .pen .navbar-nav > li > a {
            font-size: 8.5vh;
            line-height: 0.8;
        }

    .pen .navPartial > li > a {
        font-size: 3vh;
    }

    .mainnav .sublink, .menua:after {
        font-size: 3.8vh;
    }

    .newslettert {
        font-size: 2.2vw;
    }

    .mobimg {
        padding-top: 30%;
    }
}

@media only screen and (min-device-width : 320px) and (max-device-width : 480px) /*iPhone 2G-4S in portrait & landscape*/
{
    .pen .navPartial > li > a {
        font-size: 3vh;
    }
}

/*********/
@media screen and (min-width:1200px) {

    .newsletterd {
        width: auto;
        display: inline-block;
    }

    .detailsContainer {
        width: 1170px;
    }

    .tgl span {
        display: inline-block;
        padding-right: 10px;
    }
}

@media screen and (min-width:1400px) {

    .container.detailsContainerFluid {
        width: 1370px;
    }

    .col-xl-3 {
        width: 25%;
        float: left;
        position: relative;
        min-height: 1px;
        padding-right: 15px;
        padding-left: 15px;
    }

    .col-xl-6 {
        width: 50%;
        float: left;
        position: relative;
        min-height: 1px;
        padding-right: 15px;
        padding-left: 15px;
    }

    .col-xl-offset-6 {
        margin-left: 50%;
    }

    .col-xl-offset-3 {
        margin-left: 25%;
    }
}

@media screen and (min-width:1500px) {

    .container.detailsContainerFluid {
        width: 1470px;
    }
}

@media screen and (min-width:1670px) {
    .contactForm {
        left: -6vw;
    }

    .container.detailsContainerFluid,
    .container-fluid.detailsContainerFluid {
        /*width: 1640px;*/ /*1640 fits exactly images width 1200 without spaces on homepage (the 9-column one is the problem - we max on that one)*/
        /*width: calc(100vw - 60px);*/
    }
}

@media screen and (min-width:1920px) {

    .caseHover {
        padding: 15px;
    }

        .caseHover h5 {
            font-size: 25px;
        }

        .caseHover.chDetails {
            padding: 10px;
        }

            .caseHover.chDetails h5 {
                font-size: 19px;
            }

    .sideBorderRight {
        padding-left: 62px;
    }

    .linetxt {
        font-size: 18px;
        line-height: 22px;
    }

    .animatedBird.dtlOnly {
        margin-top: -55px;
    }

    .btnContact {
        font-size: 25px;
    }

    .detReview::before {
        left: -1.5vw;
    }

    .detReview .rightQuote {
        font-size: 4.6vw;
        top: 3vw;
    }

    #videoElementText {
        bottom: -2px;
    }


    .galRow {
        margin: 0 -15px;
    }


    .sassy.srv {
        padding: 0 30px;
    }

    .detReview.srv {
        top: -10px;
    }

    .container, .detailsContainer {
        width: 61vw;
    }

    .pen .navPartial > li > a {
        font-size: 0.7vw;
    }

    .casesIndex .siteDetails h5 {
        font-size: 1.8vw;
    }

    .mainnav .sublink, .menua:after {
        font-size: 1.1vw;
    }

    .detReview.srv {
        font-size: 1.4vw;
    }

    .animatedBird h4 {
        font-size: 1.8vw;
    }

    .animatedBird h5 {
        font-size: 33.3px;
        margin-top: 0;
    }
}

@media screen and (min-width:3840px) { /*4K*/
    .caseIndexContainer {
        width: 2580px;
    }

    #videoElement {
        height: 73vh;
    }

    .slidesLoader {
        background-size: auto;
    }

    .tgl a img {
        max-width: 40px;
    }

    .newslettert {
        font-size: 0.9vw;
    }
}

