* {
    -webkit-tap-highlight-color: rgba(0,0,0,0);
}
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, sub, sup, var,
b, u, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline;
    box-sizing: border-box;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, menu, nav, section {
    display: block;
}
ol, ul {
    list-style: none;
}
blockquote, q {
    quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
    content: '';
    content: none;
}
table {
    border-collapse: collapse;
    border-spacing: 0;
}
* {
    outline: none;
}


@font-face {
    font-family: 'Idlewild';
    src: url('../fonts/Idlewild-Light-webfont.eot');
    src: url('../fonts/Idlewild-Light-webfont.eot?#iefix') format('embedded-opentype'),
         url('../fonts/Idlewild-Light-webfont.woff') format('woff'),
         url('../fonts/Idlewild-Light-webfont.ttf') format('truetype'),
         url('../fonts/Idlewild-Light-webfont.svg#Idlewild') format('svg');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'Idlewild';
    src: url(../fonts/Idlewild-Medium.eot?1610382526);
    src: url(../fonts/Idlewild-Medium.eot?&1610382526#iefix) format('embedded-opentype'), 
        url(../fonts/Idlewild-Medium.woff?1610382526) format('woff'), 
        url(../fonts/Idlewild-Medium.woff2?1610382526) format('woff2'), 
        url(../fonts/Idlewild-Medium.ttf?1610382526) format('truetype'), 
        url(../fonts/Idlewild-Medium.svg?1610382526) format('svg');
    font-weight: 500;
    font-style:normal
}

@font-face {
    font-family: 'Hanley';
    src: url(../fonts/Hanley-Sans.eot?1610400716);
    src: url(../fonts/Hanley-Sans.eot?&1610400716#iefix) format('embedded-opentype'), 
        url(../fonts/Hanley-Sans.woff?1610400716) format('woff'), 
        url(../fonts//Hanley-Sans.woff2?1610400716) format('woff2'), 
        url(../fonts/Hanley-Sans.ttf?1610400716) format('truetype'), 
        url(../fonts/Hanley-Sans.svg?1610400716) format('svg');
    font-weight: 400;
    font-style:normal
}

@font-face {
    font-family: 'Sentinel';
    src: url(../fonts/Sentinel-Light.eot?1610144632);
    src: url(../fonts/Sentinel-Light.eot?&1610144632#iefix) format('embedded-opentype'), 
        url(../fonts/Sentinel-Light.woff?1610144632) format('woff'), 
        url(../fonts/Sentinel-Light.woff2?1610144632) format('woff2'), 
        url(../fonts/Sentinel-Light.ttf?1610144632) format('truetype'), 
        url(../fonts/Sentinel-Light.svg?1610144632) format('svg');
    font-weight: 300;
    font-style:normal
}

@font-face {
    font-family: 'Sentinel';
    src: url(../fonts/Sentinel-Medium.eot?1610144942);
    src: url(../fonts/Sentinel-Medium.eot?&1610144942#iefix) format('embedded-opentype'), 
        url(../fonts/Sentinel-Medium.woff?1610144942) format('woff'), 
        url(../fonts/Sentinel-Medium.woff2?1610144942) format('woff2'), 
        url(../fonts/Sentinel-Medium.ttf?1610144942) format('truetype'), 
        url(../fonts/Sentinel-Medium.svg?1610144942) format('svg');
    font-weight: 500;
    font-style:normal
}

@font-face {
    font-family: "Gotham-Light";
    src: url("../fonts/Gotham-Light.eot");
    src: url("../fonts/Gotham-Light.eot?#iefix")format("embedded-opentype"),
        url("../fonts/Gotham-Light.woff") format("woff"),
        url("../fonts/Gotham-Light.ttf") format("truetype");
    font-style: normal;
    font-weight: normal;
}

@font-face {
    font-family: "Gotham-Book";
    src: url("../fonts/Gotham-Book.eot");
    src: url("../fonts/Gotham-Book.eot?#iefix")format("embedded-opentype"),
        url("../fonts/Gotham-Book.woff") format("woff"),
        url("../fonts/Gotham-Book.ttf") format("truetype");
    font-style: normal;
    font-weight: normal;
}

@font-face {
    font-family: "Gotham-Medium";
    src: url("../fonts/Gotham-Medium.eot");
    src: url("../fonts/Gotham-Medium.eot?#iefix")format("embedded-opentype"),
        url("../fonts/Gotham-Medium.woff") format("woff"),
        url("../fonts/Gotham-Medium.ttf") format("truetype");
    font-style: normal;
    font-weight: normal;
}

@font-face {
    font-family: "Gotham-Bold";
    src: url("../fonts/Gotham-Bold.eot");
    src: url("../fonts/Gotham-Bold.eot?#iefix")format("embedded-opentype"),
        url("../fonts/Gotham-Bold.woff2") format("woff2"),
        url("../fonts/Gotham-Bold.woff") format("woff"),
        url("../fonts/Gotham-Bold.ttf") format("truetype");
    font-style: normal;
    font-weight: normal;
}


body {
    font-family: "Gotham-Book", arial, sans-serif;
    font-size: 17px;
    line-height: 1.41;
    color: #fff;
    background: #424242;
}

.light-theme {
    color: #918C86;
    background: #fff;
}

.container {
    overflow: hidden;
}

.wrap {
    width: 100%;
    max-width: 1330px;
    padding: 0 25px;
    margin: 0 auto;
}

h1 {
    font-size: 44px;
}

h2 {
    margin-bottom: 25px;
    font-family: Sentinel;
    font-weight: 300;
    font-size: 44px;
}

p {
    margin-bottom: 25px;
}

.noscroll {
    height: 100vh;
    overflow: hidden;
}

.no-pointer-events {
    pointer-events: none;
}

a {
    text-decoration: none;
    color: #F88D0E;
}

a:hover {
    text-decoration: underline;
}

a.tel,
a.addr {
    color: #fff !important;
}

em, i {
    font-style: italic;
}

.btn {
    display: inline-block;
    -webkit-transition: all .3s;
    transition: all .3s;
    letter-spacing: .5em;
    text-decoration: none !important;
    padding: 1.35em 3.1em 1em;
    position: relative;
    font: 500 8px/1 Idlewild, sans-serif;
    text-align: center;
    background-color: transparent;
    text-transform: uppercase;
    box-shadow: none;
    text-shadow: none;
    color: #fff !important;
    outline: 0 none;
    cursor: pointer;
    border-radius: 0;
    border: 2px solid #f05d58;
}

.btn:focus {
    color: #424242 !important;
    background: rgba(240,93,88,.85);
}

.btn:hover {
    color: #424242 !important;
    background: #f05d58;
}

.color-red {
    color: #F05D58;
}

.color-orange {
    color: #F88D0E;
}

.color-cyan {
    color: #00A99D;
}


/* CUSTOM POINTER */

.mouse-cursor {
    top: 0;
    left: 0;
    cursor: none;
    z-index: 99999;
    position: absolute;
    pointer-events: none;
    will-change: transform;
    -moz-user-select: -moz-none;
    -ms-user-select: none;
    -webkit-user-select: none;
    user-select: none;
}

.cursor {
    width: 16px;
    height: 16px;
    position: fixed;
    top: -100px;
    left: -100px;
    z-index: 9999999;
    background: #20c7cc;
    border-radius: 50%;
    pointer-events: none;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    -webkit-animation: cursor-color 15s infinite alternate;
    animation: cursor-color 15s infinite alternate;
}

.cursor::before {
    display: block;
    width: 100%;
    height: 100%;
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    opacity: 0;
    background: rgba(255, 255, 255, 0.5);
    border: 1px solid #fff;
    border-radius: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    -webkit-transition: all 0.7s cubic-bezier(0.23, 1, 0.32, 1);
    -moz-transition: all 0.7s cubic-bezier(0.23, 1, 0.32, 1);
    transition: all 0.7s cubic-bezier(0.23, 1, 0.32, 1);
}

.cursor-over .cursor {
    width: 12px;
    height: 12px;
}

.cursor-over .cursor::before {
    width: 60px;
    height: 60px;
    opacity: 0.5;
}

.cursor-hide .cursor,
.cursor-out .cursor {
    display: none;
}

.js-cursor * {
    cursor: none;
}

@-webkit-keyframes cursor-color {
    0% {
        background: #00A99D;
    }
    22% {
        background: #E3414A;
    }
    48% {
        background: #F05D58;
    }
    65% {
        background: #F88D0E;
    }
    85% {
        background: #918C86;
    }
}
@keyframes cursor-color {
    0% {
        background: #00A99D;
    }
    22% {
        background: #E3414A;
    }
    48% {
        background: #F05D58;
    }
    65% {
        background: #F88D0E;
    }
    85% {
        background: #918C86;
    }
}



/* INTRO | TODO */

#intro {
    display: none;
}



/* HEADER / NAV */

header {
    width: 100%;
    padding: 30px;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 99;
    transition: background .5s ease, padding-top .5s ease;
}

.min-header header {
    padding: 10px 30px;
}

.min-header header {
    background: #424242;
}

.header-logo {
    width: 70%;
    max-width: 210px;
    margin: auto;
    transition: max-width .25s ease;
}

.min-header .header-logo {
    max-width: 150px;
}

.header-logo a {
    display: block;
    position: relative;
    text-decoration: none;
}

.header-logo a svg {
    display: block;
    max-width: 100%;
    height: auto;
    margin: auto;
}

.header-logo a::after {
    display: block;
    content: 'strategic creative';
    width: 300px;
    margin-top: 1.8em;
    margin-left: -150px;
    position: relative;
    left: 50%;
    bottom: 0;
    font-family: Idlewild;
    font-size: 11px;
    font-weight: 500;
    letter-spacing: .46em;
    line-height: .9;
    text-transform: uppercase;
    text-align: center;
    white-space: nowrap;
    color: #918C86;
    transition: all .5s ease;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}

.min-header .header-logo a::after {
    margin-top: 0;
    font-size: 0;
    transform: scale(0);
    opacity: 0;
}

.header-logo a svg .main-color {
    fill: #fff;
}

.page-home .header-logo {
    pointer-events: none;
}


.light-theme header {
    background: #fff;
}

.light-theme .header-logo a svg .main-color {
    fill: #5c5b59;
}


.page-project-elixir header {
    background: none;
}

.page-project-elixir.min-header header {
    background: #fff;
}


.nav-toggle {
    display: block;
    width: 130px;
    height: 110px;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 9999;
    transition: height .5s ease;
}

.min-header .nav-toggle {
    height: 58px;
}

.nav-toggle span {
    display: block;
    width: 30px;
    height: 36px;
    margin: -16px 0 0 -15px;
    position: absolute;
    overflow: hidden;
    top: 50%;
    left: 50%;
    transition: transform .5s ease;
}

.nav-toggle span i {
    display: block;
    width: 100%;
    height: 2px;
    margin-top: -1px;
    position: absolute;
    left: 0;
    top: 50%;
    background: #00A99D;
    transition: transform .35s ease, background .8s ease; 
}

.nav-toggle span i:nth-child(1){
    transform: translateY(-12px) translateX(-9px);
}
.nav-toggle span i:nth-child(2){
    transform: translateY(-4px);
}
.nav-toggle span i:nth-child(3){
    transform: translateY(4px) translateX(-9px);
}
.nav-toggle span i:nth-child(4){
    transform: translateY(12px);
}

.nav-toggle:hover span i:nth-child(1) {
    transform: translateY(-12px) translateX(0);
}
.nav-toggle:hover span i:nth-child(2){
    transform: translateY(-4px) translateX(-9px);
}
.nav-toggle:hover span i:nth-child(3) {
    transform: translateY(4px) translateX(0);
}
.nav-toggle:hover span i:nth-child(4) {    
    transform: translateY(12px) translateX(-9px);
}

.nav-opened .nav-toggle span {
    transform: rotate(180deg);
}

.nav-opened .nav-toggle span i:nth-child(1){
    transform: translateY(0) translateX(0) rotate(-227deg);
    background: #fff;
}
.nav-opened .nav-toggle span i:nth-child(2){
    transform: translateY(-17px) translateX(0);
    background: rgba(255,255,255,.43);
}
.nav-opened .nav-toggle span i:nth-child(3){
    transform: translateY(17px) translateX(0);
    background: rgba(255,255,255,.43);
}
.nav-opened .nav-toggle span i:nth-child(4){
    transform-origin: 50% 50%;
    transform: translateY(0) translateX(0) rotate(227deg);
    background: #fff;
}

.nav-opened .nav-toggle:hover span i:nth-child(1){
    transform: translateY(0) translateX(0) rotate(-137deg);
}
.nav-opened .nav-toggle:hover span i:nth-child(4){
    transform: translateY(0) translateX(0) rotate(317deg);
}

/* nav */
.nav {
    display: none;
    height: 100vh;
    height: 100dvh;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    xxbottom: 0;
    z-index: 999;
    overflow: hidden;
    background: #00a79d;
    background: -moz-linear-gradient(top, #00a79d 0%, #008aab 100%);
    background: -webkit-linear-gradient(top, #00a79d 0%, #008aab 100%);
    background: linear-gradient(to bottom, #00a79d 0%, #008aab 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00a79d', endColorstr='#008aab',GradientType=0 );
}

.nav canvas {
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 2;
    pointer-events: none;
}

.nav-scroll {
    width: 100%;
    height: 100%;
    padding: 160px 0 100px;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 5;
    overflow: auto;
}

.nav .wrap {
    max-width: unset;
    padding: 0 55px;
}

.nav ul {
    float: left;
    font-family: Sentinel;
    font-size: 100px;
    line-height: 1.2;
    font-weight: 300;
    columns: 2;
    column-gap: 1.3em;
}

.nav ul a {
    display: inline-block;
    position: relative;
    text-decoration: none;
    color: #fff;
    transition: all .3s ease;
}
.nav ul a::after {
    display: block;
    content: '';
    height: 1px;
    position: absolute;
    left: -15px;
    right: -25px;
    top: 54%;
    opacity: 0;
    background: #fff;
    transition: all .3s ease;
    transform: scaleX(0);
    transform-origin: 0 0;
}

.nav ul:hover a {
    color: rgba(255,255,255,.2);
}
.nav ul:hover a::after {
    opacity: 1;
    transform: scaleX(1);
}

.nav ul a:hover {
    text-decoration: none;
    color: #fff;
}
.nav ul a:hover::after {
    transform: scaleX(0);
}

@media (max-width: 1440px) {

    .nav ul {
        font-size: 7vw;
    }

}



/* HERO */

.hero {
    height: 100vh;
    height: 100dvh;
    min-height: 700px;
    position: relative;
    z-index: 4;
    overflow: hidden;
    color: #fff;
    background: center no-repeat;
    background-size: cover;
}

.hero-bg {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 0;
    background: center no-repeat;
    background-size: cover;
}

.hero-inner {
    display: flex;
    width: 100%;
    height: 100%;
    position: relative;
    z-index: 2;
    align-items: center;
}

.hero-content {
    width: 90%;
    max-width: 1050px;
    margin: auto;
    text-align: center;
}

.hero-content h2 {
    margin-bottom: 20px;
    font-family: "Gotham-Bold", arial, helvetica;
    font-size: 54px;
    line-height: 1.2;
}

.hero-content a {
    text-decoration: none;
    color: #F88D0E;
}

.hero-content a:hover {
    text-decoration: underline;
}

.btn-scroll {
    display: block;
    width: 50px;
    height: 20px;
    margin: 0 auto;
    position: relative;
    transition: transform 1s ease, opacity 1s ease;
}
.btn-scroll::before {
    display: block;
    content: '';
    width: 100%;
    height: 100%;
    position: absolute;
    background: url(../images/arr-down.svg) center no-repeat;
    -webkit-animation: arrowAnimation 1.5s infinite;
    -webkit-animation-timing-function: ease-out;
    animation: arrowAnimation 1.5s infinite;
    animation-timing-function: ease-out;
}

.btn-scroll-hide {
    opacity: 0;
    transform: scale(0);
    pointer-events: none;
}

@-webkit-keyframes arrowAnimation {
    0% { -webkit-transform: translate3d(0, -10px, 0); opacity: 1; }
    100% { -webkit-transform: translate3d(0, 10px, 0); opacity: 0; }
}

@keyframes arrowAnimation {
    0% { transform: translate3d(0, -10px, 0); opacity: 1; }
    100% { transform: translate3d(0, 10px, 0); opacity: 0; }
}

/* hero home */
.hero-home .hero-bg {
    background-color: #424242;
    background-image: url(../images/home-hero-bg.jpg);
    background-blend-mode: multiply;
}

.hero-home::before,
.hero-services::before,
.hero-leadership::before {
    display: block;
    content: '';
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: -4px;
    z-index: 1;
    background: url(../images/home-hero-shapes.svg) center 100% no-repeat;
    background-size: contain;
    pointer-events: none;
}

.hero-home::after {
    display: block;
    content: '';
    width: 100%;
    height: 40%;
    position: absolute;
    left: 0;
    right: 0;
    bottom: -4px;
    z-index: 0;
    background: linear-gradient(to bottom, rgba(0,0,0,0) 0%, rgba(0,0,0,1) 100%);
}

.hero-home .hero-content {
    padding-bottom: 95px;
    position: relative;
    z-index: 1;
}

.hero-home h1 {
    margin-bottom: 30px;
    font-family: "Gotham-Bold", arial, helvetica;
    font-size: 54px;
    line-height: 1.2;
}

.hero-home p {
    margin-bottom: 40px;
    font-size: 21px;
}

.hero-home .btn-scroll {
    margin: 65px auto 0;
}

/* work approach */
.hero-approach .hero-content {
    padding-top: 30vh;
    padding-top: 30dvh;
}

.hero-approach:before {
    display: block;
    content: '';
    width: 100%;
    height: 75%;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    z-index: 0;
    background: linear-gradient(to top, rgba(0,0,0,0) 0%, rgba(0,0,0,1) 100%);
}

.hero-approach:after {
    display: block;
    content: '';
    width: 98%;
    height: 70%;
    position: absolute;
    left: 2%;
    right: 0;
    top: -3px;
    z-index: 1;
    background: url(../images/approach-hero-shapes.svg) center 0 no-repeat;
    background-size: 100% auto;
}

.hero-approach .btn-scroll {
    margin-top: 20vh;
    margin-top: 20dvh;
}

/* work hero */
.hero-work .hero-bg {
    background-image: url(../images/work-hero-bg.jpg);
}

/* services hero */
.hero-services .hero-bg {
    background-image: url(../images/services-hero-bg.jpg);
}

.hero-services .hero-content {
    max-width: 850px;
}

.hero-services .btn-scroll {
    margin-top: 110px;
}

/* leadership hero */
.hero-leadership .hero-bg {
    background-color: #424242;
    background-image: url(../images/leadership-hero-bg.jpg);
    background-blend-mode: multiply;
}

.hero-leadership::before {
    background-image: url(../images/leadership-hero-shapes.svg);
}

.hero-leadership::after {
    display: block;
    content: '';
    width: 100%;
    height: 40%;
    position: absolute;
    left: 0;
    right: 0;
    bottom: -4px;
    z-index: 0;
    background: linear-gradient(to bottom, rgba(0,0,0,0) 0%, rgba(0,0,0,1) 100%);
}

.hero-leadership .hero-inner {
    display: block;
    padding-top: 220px;
}

.hero-leadership h2 {
    margin: 0 0 10px;
}

.hero-leadership p {
    max-width: 980px;
    margin: 0 auto;
}

.hero-leadership .btns {
    margin-top: 70px;
}

.hero-leadership .btn {
    width: 275px;
    margin: 0 11px 25px;
}

.hero-leadership .btn-scroll {
    margin-top: 170px;
}


/* SECTIONS ALL */

section {
    padding: 45px 0;
    position: relative;
    z-index: 5;
}

.section-intro {
    max-width: 1000px;
    margin: 0 auto;
    text-align: center;
}

.section-title {
    font-family: Idlewild;
    font-size: 12px;
    letter-spacing: 8px;
    text-transform: uppercase;
    color: #918C86;
}

.section-bg {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 0;
    background: #424242 center no-repeat;
    background-size: cover;
    background-blend-mode: multiply;
}



/* CLIENTS SLIDER */

.our-clients {
    text-align: center;
    background: #424242;
}

.section-title {
    padding: 0 20px;
    font-family: Hanley, sans-serif;
    font-size: 12px;
    line-height: 1.5;
    letter-spacing: .75em;
    text-transform: uppercase;
    text-align: center;
    color: #918c86;
}

.clients-slides {
    padding: 0 90px;
    position: relative;
    margin: 45px 0 50px;
    opacity: 0;
    -moz-transition: all .2s;
    -o-transition: all .2s;
    -webkit-transition: all .2s;
    transition:all .2s
}

.clients-slides:after, 
.clients-slides:before {
    content: '';
    width: 5%;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 89px;
    right: auto;
    z-index: 2;
    background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjEuMCIgeTE9IjAuNSIgeDI9IjAuMCIgeTI9IjAuNSI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzQyNDI0MiIgc3RvcC1vcGFjaXR5PSIwLjAiLz48c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiM0MjQyNDIiLz48L2xpbmVhckdyYWRpZW50PjwvZGVmcz48cmVjdCB4PSIwIiB5PSIwIiB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBmaWxsPSJ1cmwoI2dyYWQpIiAvPjwvc3ZnPiA=);
    background-size: 100%;
    background-image: -webkit-gradient(linear, 100% 50%, 0 50%, color-stop(0, rgba(66, 66, 66, 0)), color-stop(100%, #424242));
    background-image: -moz-linear-gradient(right, rgba(66, 66, 66, 0) 0, #424242 100%);
    background-image: -webkit-linear-gradient(right, rgba(66, 66, 66, 0) 0, #424242 100%);
    background-image:linear-gradient(to left, rgba(66, 66, 66, 0) 0, #424242 100%);
    pointer-events: none;
}

.clients-slides:after {
    right: 89px;
    left: auto;
    background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuMCIgeTE9IjAuNSIgeDI9IjEuMCIgeTI9IjAuNSI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzQyNDI0MiIgc3RvcC1vcGFjaXR5PSIwLjAiLz48c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiM0MjQyNDIiLz48L2xpbmVhckdyYWRpZW50PjwvZGVmcz48cmVjdCB4PSIwIiB5PSIwIiB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBmaWxsPSJ1cmwoI2dyYWQpIiAvPjwvc3ZnPiA=);
    background-size: 100%;
    background-image: -webkit-gradient(linear, 0 50%, 100% 50%, color-stop(0, rgba(66, 66, 66, 0)), color-stop(100%, #424242));
    background-image: -moz-linear-gradient(left, rgba(66, 66, 66, 0) 0, #424242 100%);
    background-image: -webkit-linear-gradient(left, rgba(66, 66, 66, 0) 0, #424242 100%);
    background-image:linear-gradient(to right, rgba(66, 66, 66, 0) 0, #424242 100%)
}

.clients-slides.slick-initialized {
    opacity:1
}

.clients-slides .slick-track {
    z-index: 1;
}

.client-slide.slick-slide {
    float: none;
    line-height: 0;
    display: inline-block;
    vertical-align:middle
}

.client-slide a {
    vertical-align: top;
    display:inline-block
}

.client-slide a img {
    display: block;
    width: 205px;
    height: auto;
    max-width: 100%;
    max-height: 80px;
    margin: 0 auto;
}

.slick-arrow {
    padding: 0;
    width: 45px;
    z-index: 50;
    height: 45px;
    margin-top: -22px;
    background: none;
    border: none;
    border-radius: 50%;
    position: absolute;
    top: 50%;
    bottom: auto;
    left: 10px;
    right: auto;
    opacity: 0;
    cursor: pointer;
    transition: transform .85s ease-out, opacity .5s ease;
}
.slick-arrow::after {
    display: none;
}

.slick-arrow.slick-prev {
    transform: translateX(-100px);
}

.slick-arrow.slick-next {
    left: auto;
    right: 10px;
    transform: translateX(100px);
}

.animate .slick-arrow.slick-prev,
.animate .slick-arrow.slick-next,
.no-animate .slick-arrow.slick-prev,
.no-animate .slick-arrow.slick-next {
    opacity: 1;
    transform: translateX(0);
}

.arr {
    display: block;
    width: 45px;
    height: 45px;
    padding: 2px;
    position: relative;
    overflow: hidden;
    background: #979797;
    border-radius: 50px;
    -webkit-mask-image: -webkit-radial-gradient(white, black);
}

.arr::after {
    display: block;
    content: '';
    width: 100%;
    height: 100%;
    position: relative;
    z-index: 2;
    background: #424242;
    border-radius: 50px;
}

.arr::before {
    display: block;
    content: '';
    width: 200%;
    height: 200%;
    position: absolute;
    bottom: 100%;
    left: -50%;
    background: #f05c5c;
    transition: transform .5s ease;
    transform-origin: 50% 100%;
    will-change: transform;
}

.arr:hover::before {
    transform: rotate(180deg) translateX(20px);
}

.arr b,
.arr u {
    display: block;
    width: 2px;
    height: 11px;
    position: absolute;
    z-index: 3;
    overflow: hidden;
    background: #fff;
    transform-origin: 50% 100%;
}

.arr b {
    top: 12px;
    left: 17px;
    transform: rotate(45deg);
}

.arr u {
    top: 11px;
    left: 17px;
    z-index: 3;
    transform: rotate(135deg);
}

.arr b::after,
.arr u::after {
    display: block;
    content: '';
    width: 100%;
    height: 100%;
    background: #f05c5c;
    transition: transform .18s ease-in .18s; 
    transform-origin: 0 100%;
    will-change: transform;
}

.arr u::after {
    transition: transform .18s ease-out;
    transform-origin: 100% 0; 
    transition-delay: 0s;
}

.arr:hover b::after {
    transform: scaleY(0);
    transition-delay: 0s;
}

.arr:hover u::after {
    transform: scaleY(0);
    transition-delay: .18s;
}

.slick-next .arr:hover::before {
    transform: rotate(-180deg) translateX(-20px);
}

.slick-next .arr b {
    left: auto;
    right: 17px;
    transform: rotate(-45deg);
}

.slick-next .arr u {
    left: auto;
    right: 17px;
    z-index: 3;
    transform: rotate(-135deg);
}


/* white btns */
.project-slider .arr,
.project-slider .arr::after {
    background: #fff;
}

.project-slider .arr::before,
.project-slider .arr:hover,
.project-slider .arr:hover::after {
    background: #F05D58;
}


/* dark btns */
.project-slider-alt .arr,
.project-slider-alt .arr::after,
.project-slider-alt .arr b,
.project-slider-alt .arr u {
    background: #5C5B59;
}

.project-slider-alt .arr::before,
.project-slider-alt .arr:hover,
.project-slider-alt .arr:hover::after {
    background: #F05D58;
}


.dots-slider {
    margin: 0 auto;
    max-width: 80px;
    position: relative;
    opacity: 0;
    transition: transform .5s ease-out, opacity 1s ease;
    transform: translateY(30px);
}

.animate + .dots-slider,
.no-animate + .dots-slider {
    opacity: 1;
    transition-delay: .25s;
    transform: translateY(0);
}

.dots-slider .slick-slide {
    padding: 5px 0;
    line-height: 1;
    outline: 0 none !important;
}

.dots-slider .slick-slide.slick-active + .slick-active .btn, 
.dots-slider .slick-slide.slick-active + .slick-active button, 
.dots-slider .slick-slide.slick-center + .slick-active .btn, 
.dots-slider .slick-slide.slick-center + .slick-active button {
    -moz-transform: scale(.8, .8);
    -ms-transform: scale(.8, .8);
    -webkit-transform: scale(.8, .8);
    transform: scale(.8, .8);
}

.dots-slider .slick-slide.slick-center .btn, 
.dots-slider .slick-slide.slick-center button {
    background: #00a99d;
    -moz-transform: scale(1) !important;
    -ms-transform: scale(1) !important;
    -webkit-transform: scale(1) !important;
    transform: scale(1) !important
}

.dots-slider .slick-slide.slick-center + .slick-active + .slick-active .btn, 
.dots-slider .slick-slide.slick-center + .slick-active + .slick-active button {
    -moz-transform: scale(.5, .5);
    -ms-transform: scale(.5, .5);
    -webkit-transform: scale(.5, .5);
    transform: scale(.5, .5);
}

.dots-slider .slick-slide .btn, 
.dots-slider .slick-slide button {
    border: 0;
    padding: 0;
    font-size: 0;
    width: 10px;
    height: 10px;
    margin: 0 4px;
    display: block;
    background: #918c86;
    -moz-border-radius: 50%;
    -webkit-border-radius: 50%;
    border-radius: 50%;
    -moz-transition: all .2s;
    -o-transition: all .2s;
    -webkit-transition: all .2s;
    transition: all .2s;
    -moz-transform: scale(.5);
    -ms-transform: scale(.5);
    -webkit-transform: scale(.5);
    transform: scale(.5);
}


/* HOME ABOUT */

.home-about {
    display: flex;
    min-height: 100vh;
    position: relative;
    overflow: hidden;
    align-items: center;
    text-align: center;
    background: #424242;
}

.home-about .cstar {
    margin-bottom: 50px;
}

.home-about .wrap {
    max-width: 1200px;
    z-index: 1;
}

.home-about p {
    margin-bottom: 50px;
    font-size: 38px;
    line-height: 1.184;
}

.home-about-btn {
    margin-top: 80px;
}

.home-about-link {
    margin-top: 90px;
}

.home-about-link a {
    color: #fff;
}

.home-about .section-bg {
    background-image: url(../images/home-about-bg.jpg);
}

.project-item {
    width: 100%;
    position: relative;
    overflow: hidden;
}

.project-item a {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 5;
}

.project-item > img {
    display: block;
    width: 100%;
    height: auto;
    visibility: hidden;
}

.project-bg {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: center no-repeat;
    background-size: cover;
    transform: scale(1.005);
    pointer-events: none;
}

.project-video-bg::after {
    display: block;
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    opacity: .25;
    background: #000;
}

.project-bg video {
    display: block;
    min-width: 100%;
    height: auto;
    min-height: 100%;
    position: relative;
    top: 50%;
    left: 50%;
    pointer-events: none;
    transform: translate(-50%,-50%);
}

.project-info {
    display: flex;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
    align-items: center;
    background: rgba(0,0,0,0);
    transition: background 1s ease-out;
}
.project-item:hover .project-info {
    background: rgba(0,0,0,.3);
}

.project-info .wrap {
    padding: 30px;
    opacity: 0;
    transition: transform 1s ease-out, opacity 1s ease;
    transform: translateY(100%);
}

.animate .project-info .wrap,
.no-animate .project-info .wrap {
    opacity: 1;
    transform: translateY(0);
}

.project-client {
    font-family: Idlewild;
    font-weight: 500;
    font-size: 11px;
    letter-spacing: 5px;
}

.project-tagline {
    margin-bottom: 50px;
    font-family: Sentinel;
    font-weight: 300;
    font-size: 44px;
    letter-spacing: 1px;
}

.project-more {
    margin-bottom: 30px;
    font-family: Hanley, sans-serif;
    font-size: 12px;
    line-height: 1.5;
    letter-spacing: .75em;
    text-transform: uppercase;
}

.project-more::after {
    display: inline-block;
    content: '';
    width: 25px;
    height: 25px;
    margin-left: 3px;
    margin-top: -1px;
    vertical-align: middle;
    background: url(../images/arr-right.svg) 57% 54% no-repeat;
    border-radius: 50%;
    transition: background .5s ease;
}

.project-item:hover .project-more::after {
    background-color: #F05D58;
    background-image: url(../images/arr-right-hover.svg);
}


/* TESTIMONIALS */

.testimonials {
    padding: 70px 0 100px;
    position: relative;
    z-index: 0;
    overflow: hidden;
}

.testimonials .wrap {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}

.testimonials-inner.fixed-top {
    position: fixed;
    top: 0;
    right: 0;
    left: 0;
}

.testimonials-inner.fixed-bottom {
    position: fixed;
    bottom: 0;
    right: 0;
    left: 0;
}

.section-title + .testimonials-slider {
    padding-top: 70px;
}

.testimonials-slides {
    position: relative;
    background: url(../images/quote.svg) 15% 0 no-repeat;
}

.testimonials-slides:after, 
.testimonials-slides:before {
    content: '';
    width: 10%;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: auto;
    z-index: 2;
    background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjEuMCIgeTE9IjAuNSIgeDI9IjAuMCIgeTI9IjAuNSI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzQyNDI0MiIgc3RvcC1vcGFjaXR5PSIwLjAiLz48c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiM0MjQyNDIiLz48L2xpbmVhckdyYWRpZW50PjwvZGVmcz48cmVjdCB4PSIwIiB5PSIwIiB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBmaWxsPSJ1cmwoI2dyYWQpIiAvPjwvc3ZnPiA=);
    background-size: 100%;
    background-image: -webkit-gradient(linear, 100% 50%, 0 50%, color-stop(0, rgba(66, 66, 66, 0)), color-stop(100%, #424242));
    background-image: -moz-linear-gradient(right, rgba(66, 66, 66, 0) 0, #424242 100%);
    background-image: -webkit-linear-gradient(right, rgba(66, 66, 66, 0) 0, #424242 100%);
    background-image:linear-gradient(to left, rgba(66, 66, 66, 0) 0, #424242 100%);
    pointer-events: none;
}
.testimonials-slides:after {
    right: 0;
    left: auto;
    background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuMCIgeTE9IjAuNSIgeDI9IjEuMCIgeTI9IjAuNSI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzQyNDI0MiIgc3RvcC1vcGFjaXR5PSIwLjAiLz48c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiM0MjQyNDIiLz48L2xpbmVhckdyYWRpZW50PjwvZGVmcz48cmVjdCB4PSIwIiB5PSIwIiB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBmaWxsPSJ1cmwoI2dyYWQpIiAvPjwvc3ZnPiA=);
    background-size: 100%;
    background-image: -webkit-gradient(linear, 0 50%, 100% 50%, color-stop(0, rgba(66, 66, 66, 0)), color-stop(100%, #424242));
    background-image: -moz-linear-gradient(left, rgba(66, 66, 66, 0) 0, #424242 100%);
    background-image: -webkit-linear-gradient(left, rgba(66, 66, 66, 0) 0, #424242 100%);
    background-image:linear-gradient(to right, rgba(66, 66, 66, 0) 0, #424242 100%)
}

.quote-inner {
    width: 70%;
    padding: 110px 0 60px;
    margin: auto;
}

.quote-slide p {
    margin-bottom: 15px;
    font-size: 17px;
    line-height: 1.41;
}

.quote-author {
    margin-top: 25px;
    font-family: Sentinel;
    font-size: 44px;
    font-weight: 300;
}

.quote-author-title {
    margin-top: 8px;
    font-family: Idlewild;
    font-weight: 500;
    font-size: 11px;
    letter-spacing: 5px;
    color: #918C86;
}

.quote-logo {
    margin-top: 55px;
}

.quote-logo > img {
    display: block;
    max-width: 100%;
    margin: 0;
}


/* HOME FINSIGHTS */

.home-finsights {
    display: flex;
    padding: 55px 0 120px;
    position: relative;
    overflow: hidden;
    align-items: center;
    text-align: center;
    background: #2e2e2e;
}

.home-finsights .wrap {
    max-width: 880px;
    z-index: 1;
}

.home-finsights .section-title {
    margin-bottom: 90px;
}

.finsights-logo {
    max-width: 90%;
    margin-bottom: 40px;
}

.home-finsights p {
    margin-bottom: 30px;
    line-height: 1.47;
}

.home-finsights .section-bg {
    background-color: #2e2e2e;
    background-image: url(../images/home-finsights-bg.png);
    background-size: auto 100%;
}



/* HOME BLOG */

.home-blog {
    padding: 60px 0 100px;
    background: #424242;
}

.home-blog .section-title {
    margin-bottom: 90px;
}

.home-blog-post {
    display: flex;
    align-items: center;
}

.home-blog-post + .home-blog-post {
    margin-top: 108px;
}

.home-blog-post > div {
    flex: 1;
}

.home-blog .post-img {
    max-width: 608px;
}

.home-blog .post-img a {
    display: block;
    overflow: hidden;
}

.home-blog .post-img img {
    display: block;
    width: 100%;
    height: auto;
    transition: transform 2s ease;
}

.home-blog .post-img a:hover img {
    transform: scale(1.1);
}

.home-blog .post-img + .post-text {
    padding-left: 82px;
}

.home-blog h2 {
    margin: 0 0 20px;
    font-size: 44px;
    line-height: 1.2;
    color: #fff;
}

.home-blog h2 a {
    color: inherit;
}

.home-blog h2 a:hover {
    color: #F88D0E;
    text-decoration: none;
}

.home-blog-author {
    margin-bottom: 50px;
    font-size: 10px;
    letter-spacing: 7px;
    text-transform: uppercase;
    color: #918C86;
}

.home-blog .read-more {
    font-family: Hanley, sans-serif;
    font-size: 12px;
    line-height: 1.5;
    letter-spacing: .75em;
    text-transform: uppercase;
    color: #fff;
}

.home-blog .read-more::after {
    display: inline-block;
    content: '';
    width: 25px;
    height: 25px;
    margin-top: -1px;
    vertical-align: middle;
    background: url(../images/arr-right.svg) 57% center no-repeat;
    border-radius: 50%;
    transition: background .5s ease, transform .3s ease;
}

.home-blog .read-more:hover {
    text-decoration: none;
}

.home-blog .read-more:hover::after {
    background-color: #F05D58;
    background-image: url(../images/arr-right-hover.svg);
    transform: translateX(5px);
}

.home-blog .blog-btn {
    margin-top: 82px;
    text-align: center;
}

.posts-loading {
    min-height: 300px;
    position: relative;
}

.posts-loading:before {
    display: block;
    content: '';
    width: 100px;
    height: 100px;
    margin: -50px 0 0 -50px;
    position: absolute;
    top: 50%;
    left: 50%;
    background: url(../images/loading.svg) center no-repeat;
    background-size: cover;
    animation: spin 3s linear infinite;
}
@keyframes spin { 
    50% {
        transform: rotate(180deg); 
    }
    100% { 
        transform: rotate(360deg); 
    } 
}



/* AWARDS */

.our-awards {
    padding: 90px 0 100px;
    background: #424242;
}

.our-awards .section-title {
    margin-bottom: 15px;
}

.our-awards h2 {
    font-family: Sentinel;
    font-size: 44px;
    font-weight: 300;
    text-align: center;
}

.award-logos {
    margin-top: 70px;
}

.award-logos ul {
    max-width: 1220px;
    margin: 0 auto;
}

.award-logos ul {
    display: flex;
    width: 100%;
    text-align: center;
    font-size: 0;
    justify-content: space-between;
}

.award-logos li {
    display: inline-block;
    padding: 0 40px;
}

.award-logos img {
    width: auto;
    height: 74px;
}

.awards-list {
    margin-top: 65px;
}

.awards-list::after {
    display: block;
    content: '';
    clear: both;
}

.awards-list .awards-col {
    float: left;
    width: 35%;
    padding-right: 35px;
}
.awards-list .awards-col:last-child {
    width: 30%;
}

.awards-list .awards-col:last-child {
    padding-right: 0;
}

.awards-list li { 
    margin-bottom: 40px;
}

.awards-list li strong {
    display: block;
    margin-bottom: 5px;
    font-family: 'Sentinel', sans-serif;
    font-size: 23px;
    font-weight: 300;
    color: #918C86;
}

.awards-list-animated {
    pointer-events: none;
}

.awards-list-animated .awards-col {
    opacity: 0;
    transition: transform .85s ease-out, opacity 1s ease;
    transform: translateY(300px);
}

.awards-list-animated.animate .awards-col:nth-child(2){
    transition-delay: .2s;
}

.awards-list-animated.animate .awards-col:nth-child(3){
    transition-delay: .4s;
}

.awards-list-animated.animate .awards-col {
    opacity: 1;
    transform: translateY(0);
}



/* SUBSCRIBE */

.subscribe {
    padding: 55px 0 140px;
    color: #fff;
    background: #424242;
}

.subscribe .wrap {
    position: relative;
    z-index: 1;
}

.subscribe h3 {
    max-width: 650px;
    margin-bottom: 15px;
    position: relative;
    font-family: Sentinel;
    font-size: 44px;
    line-height: 1.2;
    font-weight: 300;
}

.subscribe-white {
    color: #918C86;
    background: #fff;
}

.subscribe-white .btn {
    color: #5C5B59 !important;
}
.subscribe-white .btn:hover {
    color: #fff !important;
}

.subscribe p {
    margin: 0;
}

.subscribe-form {
    display: flex;
    gap: 26px;
    max-width: 650px;
    padding: 0;
    margin: 30px 0 0;
}

.subscribe-form input[type=email]{
    display: inline-block;
    height: 30px;
    flex: 1;
    padding: 5px 0;
    font-family: helvetica, arial, sans-serif;
    font-size: 17px;
    vertical-align: top;
    color: #fff;
    background: none;
    border: none;
    border-bottom: 1px solid #979797;
}

.light-theme .subscribe-form input[type=email] {
    color: #000;
}

.subscribe-form ::placeholder {
    opacity: 1;
    color: #918C86;
}

.subscribe-form .error {
    border-color: #f00;
}

.subscribe-form button {
    max-width: 132px;
}

.subscribe-form .btn-disabled {
    opacity: .5;
    filter: saturate(0);
    pointer-events: none;
}

.subscribe-success {
    display: none;
    width: 100vw;
    height: 100dvh;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 999999;
    align-items: center;
    background: rgba(0,0,0,.5);
}

.subscribe-success .msg-box {
    width: 90%;
    max-width: 783px;
    padding: 46px 50px 56px;
    margin: auto;
    position: relative;
    font-family: "Gotham-Medium";
    text-align: center;
    color: #000;
    background: #fff;
}

.subscribe-success .msg-title {
    margin: 15px 0 18px;
    font-family: "Gotham-Bold";
    font-size: 27px;
}

.subscribe-success .msg-box p {
    margin-bottom: 0;
}

.subscribe-success .msg-close {
    display: block;
    width: 54px;
    height: 54px;
    position: absolute;
    top: 0;
    right: 0;
    background: url(../images/btn-close.svg) center no-repeat;
}

.subscribe-success .msg-box svg #flag {
    transform-origin: 3.5% 55%;
    transform: translateX(25px) rotate(90deg);
    transition: transform .5s ease;
}

.subscribe-success .msg-box svg.open #flag {
    transform: translateX(25px) rotate(0deg);
}


/* FOOTER */

footer {
    padding-top: 190px;
    position: relative;
    overflow: hidden;
    background: #424242;
}

.light-theme footer {
    z-index: 5;
    color: #5C5B59;
    background: #fff;
}

footer::before {
    display: block;
    content: '';
    min-width: 1111px;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
    background: url(../images/footer-shapes.svg) 100% 100% no-repeat;
    background-size: contain;
    pointer-events: none;
}

.footer-contact {
    position: relative;
    z-index: 2;
    font-family: Sentinel;
    font-size: 23px;
    line-height: 1.21;
    font-weight: 300;
    color: #918C86;
}

.footer-ico {
    display: inline-block;
    margin: 0 0 16px 10px;
    position: relative;
    overflow: hidden;
}

.footer-ico::before {
    display: block;
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    right: 0;
    background: #00a89c;
    transform-origin: 100% 0;
    transform: rotate(-90deg);
    transition: transform .5s ease-in .5s;
    will-change: transform;
}

.footer-ico:hover::before {
    transform: rotate(0);
    transition-delay: 0s;
}

.footer-ico img {
    display: block;
    margin: 0;
    position: relative;
    z-index: 2;
}

.footer-ico .footer-ico-plus {
    position: absolute;
    top: 1px;
    right: 1px;
    z-index: 2;
    transition: transform .5s ease-in .5s;
    will-change: transform;
}

.footer-ico:hover .footer-ico-plus {
    transform: rotate(90deg);
    transition-delay: 0s;
}

.footer-contact p {
    padding-bottom: 20px;
}

.footer-contact p a {
    text-decoration: none;
    color: #fff;
}

.light-theme .footer-contact p a {
    color: #5C5B59;
}

.socials li {
    display: inline-block;
    margin: 0 10px 0 5px;
}

.socials li a {
    display: block;
    width: 22px;
    height: 22px;
    position: relative;
}

.socials li a::before {
    display: block;
    content: '';
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    opacity: .4;
    background: center no-repeat;
    background-size: auto 100%;
    transition: opacity .5s ease;
}

.socials li a:hover::before {
    opacity: 1;
}

.socials li a.li::before {
    background-image: url(../images/soc-li.svg);
}

.socials li a.spt::before {
    background-image: url(../images/soc-spt.svg);
}

.light-theme .socials {
    filter: invert(.7);
}

.copy {
    margin-top: 60px;
    margin-bottom: 0;
}


/* FINSIGHTS SECTIONS/FORM */

.finsights {
    padding: 0;
    background: #424242;
}

.finsights .finsights-logo {
    display: block;
    max-width: 617px;
    margin: 0 auto 30px;
}

.finsights-hero {
    padding: 162px 0 0;
    text-align: center;
    color: #fff;
    background: #2e2e2e;
}

.finsights-hero h1 {
    margin-bottom: 10px;
    font-family: "Gotham-Bold";
    font-size: 54px;
}

.finsights-hero p {
    font-size: 22px;
}

.finsights-hero p a {
    color: inherit;
}

.reasons {
    display: flex;
    margin: 60px 0 35px;
    align-items: start;
    gap: 47px;
}

.reasons > div {
    flex: 1;
}

.reason-img {
    display: flex;
    height: 140px;
    margin-bottom: 25px;
    align-items: end;
}

.reason-img img {
    display: block;
    max-width: 100%;
    margin: 0 auto;
}

.reason-text {
    max-width: 320px;
    margin: 0 auto;
}

.reasons-more {
    padding-bottom: 90px;
}

.reasons-more .btn-scroll {
    margin-top: 35px;
}

.finsights-form {
    padding: 210px 40px 66px;
    margin-top: -200px;
    margin-top: -10vw;
    color: #5C5B59;
    background: #424242 url(../images/finsights-page-bg.svg) center 0 no-repeat;
    background-size: 100% auto;
}

.finsights-form .wrap {
    padding: 100px 78px 62px;
    position: relative;
    overflow: hidden;
    background: #fff;
}

.finsights-form .wrap:before {
    display: block;
    content: '';
    width: 372px;
    max-width: 74%;
    height: 190px;
    position: absolute;
    top: 0;
    right: 0;
    z-index: 0;
    background: url(../images/book.svg) right top no-repeat;
    background-size: contain;
}

.finsights-form h3 {
    margin-bottom: 70px;
    position: relative;
    font-family: "Gotham-Light";
    font-size: 34px;
    color: #F05D58;
}

.finsights-form h3 img {
    margin-top: -.45em;
    vertical-align: middle;
}

.finsights-form p {
    max-width: 1090px;
    font-size: 22px;
    line-height: 1.4;
}

.req-info {
    margin-bottom: 20px;
    font-size: 12px;
    color: #F05D58;
}

.finsights-form form {
    max-width: 1124px;
}

.finsights-form fieldset {
    display: flex;
    margin-bottom: 35px;
    align-items: start;
    gap: 34px;
}

.finsights-form fieldset > div {
    flex: 1;
}

.finsights-form fieldset:last-child {
    margin: 0;
}

.form-field {
    position: relative;
}

.form-field-sm {
    max-width: 36.5%;
}

.form-field input[type=text],
.form-field input[type=email] {
    display: block;
    width: 100%;
    height: 29px;
    padding: 0;
    font-family: inherit;
    font-size: 17px;
    background: none;
    border: none;
    border-bottom: 1px solid #979797;
}

.form-field label {
    display: block;
    height: 100%;
    padding: 3px 0;
    position: absolute;
    top: 0;
    left: 0;
    transform-origin: 0 0;
    pointer-events: none;
    transition: transform .25s ease;
}

.form-field input:focus + label,
.form-field input:valid + label,
.form-field input:not(:placeholder-shown) + label,
.form-field.label-up label {
    transform: translateY(-17px) scale(.8);
}

.form-field label span {
    color: #F05D58;
}

.form-field input.error,
.form-field input:user-invalid,
.form-field input.wpcf7-not-valid {
    border-color: #F05D58;
}

.form-note {
    max-width: 880px;
    padding-left: 55px;
    margin-bottom: 30px;
    font-size: 12px;
    line-height: 1.66;
    background: url(../images/papers.svg) -15px -11px no-repeat;
}

.finsights-form .form-submit {
    margin-bottom: 15px;
}

.finsights-form .wpcf7-form-control-wrap {
    display: block;
}

.finsights-form .wpcf7-not-valid-tip {
    padding-top: 5px;
}

.finsights-form .wpcf7-list-item {
    margin-left: 0;
}

.form-submit .btn {
    color: #5C5B59 !important;
}
.form-submit .btn:hover {
    color: #fff !important;
}

.form-field-cb label {
    display: inline-block;
    min-height: 15px;
    padding: 1px 0 0 27px;
    position: relative;
    pointer-events: all;
    transform: none !important;
}

.form-field-cb label span {
    color: inherit;
}

.form-field-cb label:before {
    display: block;
    content: '';
    width: 14px;
    height: 14px;
    position: absolute;
    top: 1px;
    left: 1px;
    background: #fff;
    border: 3px solid #fff;
    outline: 1px solid #979797;
    box-sizing: border-box;
}

.form-field-cb input[type=checkbox] {
    position: absolute;
    left: -100vw;
}

.form-field-cb input[type=checkbox]:checked + label:before,
.form-field-cb.cb-checked label:before {
    background: #00A99D;
}

.form-field-cb input[type=checkbox]:user-invalid + label:before {
    outline-color: #F05D58;
    box-shadow: 0 0 10px #f00;
    animation: glowAnimation 2s infinite;
}

@keyframes glowAnimation {
    0%, 100% { box-shadow: 0 0 3px #f00; }
    50% { box-shadow: 0 0 10px #f00; }
}

.form-terms {
    font-size: 12px;
}

.form-terms label a {
    color: #00A99D;
}

.form-terms label a:hover {
    text-decoration: underline;
}

/* through lines */

.through-lines {
    padding-top: 70px;
    text-align: center;
    background: #fff;
}

.through-lines .category-img {
    max-width: 852px;
    width: 100%;
    margin: auto;
    margin-bottom: 50px;
}

.through-lines .content {
    max-width: 1140px;
    margin: auto;
    color: #2E2E2E;
}

.through-lines .content > h4 {
    font-size: 15px;
    line-height: 1.4;
    text-transform: uppercase;
    margin-top: 46px;
    margin-bottom: 46px;
    letter-spacing: 0.24em;
    color: #5C5B59;
}

.through-lines .content > p {
    max-width: 730px;
    font-size: 17px;
    font-weight: 200;
    line-height: 1.4;
    margin: 0 auto;
}

.through-lines .thl-posts {
    display: flex;
    margin-top: 90px;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 28px;
}

.through-lines .thl-posts .blog-post {
    width: 50%;
    width: calc(50% - 14px);
    margin: 0;
    text-align: left;
}



/* APPROACH */

.approach-block {
    padding: 155px 0 105px;
    position: relative;
}

.approach-block:first-child {
    padding-top: 0;
}

.approach-block .wrap {
    max-width: 1214px;
}

.approach-block h2 {
    margin-bottom: 15px;
    font-size: 100px;
    line-height: .9;
}

.approach-list {
    margin-top: 45px;
}

.approach-list p strong {
    font-family: "Gotham-Bold";
    font-weight: normal;
}

.approach-list ul {
    margin-top: 45px;
}

.approach-list li {
    display: flex;
    min-height: 70px;
    padding: 0 0 0 90px;
    position: relative;
    align-items: center;
}

.approach-list li + li {
    margin-top: 30px;
}

.approach-list .list-ico {
    width: 65px;
    position: absolute;
    top: 0;
    left: 0;
    transform: translateX(100px);
    transition: transform 1s ease;
}

.approach-list .list-ico img {
    display: block;
    max-width: 100%;
}

.approach-list .list-text {
    opacity: 0;
    transition: opacity 1s ease .6s;
}

.approach-block:nth-child(even){
    text-align: right;
    background: #3a3a3a;
}

.approach-block:nth-child(even) li {
    padding: 0 90px 0 0;
    justify-content: flex-end;
}

.approach-block:nth-child(even) .list-ico {
    right: 0;
    left: unset;
    transform: translateX(-100px);
}

.approach-list li.animated .list-ico {
    transform: translateX(0) !important;
}

.approach-list li.animated .list-text {
    opacity: 1 !important;
}

.bolt {
    height: 0;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    text-align: center;
}

.bolt div {
    display: inline-block;
    margin: 0 auto;
    position: relative;
    transform: translateY(-50%);
}

.bolt img {
    display: block;
    max-width: 100%;
    transition: transform .85s ease;
}

.bolt .bolt-top {
    transform: scale(.5) translate(-4px, 20%);
}

.bolt .bolt-btm {
    position: absolute;
    top: 0;
    left: 0;
    transform: scale(.5) translate(4px, -20%);
}

.bolt.animated .bolt-top,
.bolt.animated .bolt-btm {
    transform: scale(1) translateY(0);
}


/* METHOD steps */

.method {
    padding: 160px 0 215px;
    background: #3a3a3a;
}

.method .section-intro {
    max-width: 1050px;
}

.method h2 {
    font-family: "Gotham-Bold";
    font-size: 44px;
    line-height: 1;
}

.steps {
    max-width: 1010px;
    margin: 220px auto 0;
    text-align: center;
    pointer-events: none;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}

.steps h3 {
    margin-bottom: 15px;
    font-family: Sentinel;
    font-size: 42px;
    line-height: 1;
    font-weight: 300;
}

.steps p {
    max-width: 310px;
    font-size: 17px;
    line-height: 1.47;
}

.steps .step3 p {
    max-width: 340px;
}

.step::after {
    display: block;
    content: '';
    clear: both;
}

.step-info {
    display: table;
    margin-right: 260px;
    opacity: 0;
    transform: translateX(-50%);
    transition: transform 1s, opacity 1s;
}

.animate .step-info {
    transition-delay: .75s;
}

.step-num-left .step-info {
    transform: translateX(50%);
}

.animate .step-info {
    opacity: 1;
    transform: translateX(0) !important;
}

.step-icon {
    display: table-cell;
    width: 225px;
    height: 186px;
    vertical-align: middle;
}

.step-icon div {
    width: 190px;
    max-width: 90%;
    position: relative;
}

.step-icon div img {
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
}

.step-text {
    display: table-cell;
    vertical-align: middle;
    text-align: left;
}

.step-text div {
    max-width: 370px;
}

.step3 .step-text div {
    max-width: 450px;
}

.step-num {
    float: right;
    margin: 0 60px;
    opacity: 0;
    transform: scale(0);
    transition: transform 1s, opacity 1s;
    transition-delay: .25s;
}

.animate .step-num {
    opacity: 1;
    transform: scale(1);
}

.step-num img {
    display: block;
}

.step-num-left .step-info {
    float: right;
    margin: 0;
}

.step-num-left .step-num {
    float: left;
}

.steps-line {
    display: inline-block;
    width: 48%;
    margin: -30px auto;
    opacity: 0;
    transform-origin: 100% 0;
    transform: scale(0);
    transition: transform .5s ease-out, opacity 1s  ease-out;
}

.step-num-left + .steps-line {
    transform-origin: 0 0;
}

.steps-line.animate {
    opacity: 1;
    transform: scale(1);
}

.steps-line img {
    display: block;
    width: 100%;
}

.steps-line-flip img {
    transform: scaleX(-1);
}

.page-approach .subscribe {
    padding-top: 150px;
}


/* WORKS */

.hero-work .btn-scroll {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 7%;
}

.hero-work .hero-content {
    max-width: 800px;
}

.page-work .subscribe {
    padding-top: 190px;
}

.projects {
    padding: 0;
    font-size: 0;
}

.projects-row {
    display: flex;
    overflow: hidden;
    transition: opacity 2s ease, transform .5s ease;
}

.projects-row-hidden {
    display: none;
}

.projects-row-transparent {
    opacity: 0;
    transform: translateY(300px);
}

.project-item-1_3 {
    float: left;
    width: 32.45%;
}

.project-item-1_2 {
    float: left;
    width: 50%;
}

.project-item-2_3 {
    float: left;
    width: 67.55%;
}

.projects .project-bg {
    transition: transform .5s ease-out;
}

.projects .project-info {
    display: flex;
    align-items: center;
    text-align: center;
    transition: background .5s ease-out;
}

.projects .project-info > div {
    width: 100%;
}

.project-logo {
    display: flex;
    width: 100%;
    min-height: 130px;
    margin-top: 120px;
    margin-bottom: 85px;
    align-items: center;
}

.project-logo img {
    display: block;
    max-width: 80%;
    margin: auto;
}

.project-name {
    font-family: "Gotham-Bold";
    font-size: 54px;
    text-align: center;
}

.project-name div {
    width: 100%;
}

.projects-row .project-item .project-info > div {
    opacity: 0;
    transition: transform 1s ease-out, opacity 1s ease;
    transform: translateY(100%);
}

.projects-row .project-item.animate:nth-child(2) .project-info > div {
    transition-delay: .5s;
}

.projects-row .project-item.animate .project-info > div {
    opacity: 1;
    transform: translateY(0);
}

.projects-more {
    padding: 105px 0;
    text-align: center;
}



/* single PROJECT page */

.hero-project {
    height: 100vh;
    min-height: 850px;
}

.hero-project-info {
    float: right;
    width: 50%;
    padding-bottom: 120px;
    margin-top: 238px;
    position: relative;
    z-index: 2;
    font-size: 19px;
    line-height: 1.32;
}

.hero-project-logo {
    padding-bottom: 20px;
    position: absolute;
    bottom: 100%;
}

.hero-project-info h1 {
    margin-bottom: 25px;
    font-family: Sentinel;
    line-height: 1.045;
    font-weight: 300;
}

.link-case-study {
    display: inline-block;
    margin-top: 25px;
    font-family: Idlewild, sans-serif;
    font-size: 8px;
    font-weight: 500;
    letter-spacing: 3.65px;
    text-decoration: none;
    color: #918C86;
}
.link-case-study:hover {
    text-decoration: none;
}

.link-case-study::before {
    display: inline-block;
    content: '';
    width: 29px;
    height: 29px;
    margin-top: -1px;
    margin-right: 19px;
    vertical-align: middle;
    background: url(../images/arr-right.svg) 57% center no-repeat;
    border: 2px solid #F05D58;
    border-radius: 50%;
    transition: background .5s ease;
}

.link-case-study:hover::before {
    background-color: #F05D58;
    background-image: url(../images/arr-right-hover.svg);
}

.hero-project-services {
    margin-top: 45px;
    overflow: hidden;
}

.hero-project-services ul {
    float: left;
    width: 190px;
    padding-right: 30px;
}

.hero-project-services li {
    display: block;
}

.hero-project-info .btn-scroll {
    margin-left: -10px;
    position: absolute;
    left: 0;
    right: auto;
    bottom: 40px;
}

.hero-project-bg {
    width: 100%;
    height: 100%;
    min-height: 1100px;
    position: absolute;
    left: 0;
    top: 0;
    background: center 0 no-repeat;
    background-size: auto 100%;
}


.hero-project-liquid {
    height: auto;
    min-height: 100dvh;
}

.hero-project-liquid .hero-project-bg {
    min-height: 100%;
    background-size: cover;
}

.hero-project-liquid .hero-container {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
}

.hero-project-liquid .wrap {
    position: relative;
    z-index: 2;
}

.hero-project-liquid .hero-ratio-img {
    display: block;
    width: 100%;
    min-height: 900px;
    visibility: hidden;
}


.hero-project-alt {
    height: 100dvh;
    min-height: 800px;
}

.hero-project-alt .hero-project-bg {
    min-height: 100%;
    background-size: cover;
}

.hero-project-alt .hero-container {
    display: flex;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    align-items: end;
}

.hero-project-alt .hero-project-info {
    float: none;
    width: 100%;
    max-width: 980px;
    padding-bottom: 90px;
    margin-top: 315px;
}

.hero-project-alt .hero-project-info .hero-project-logo {
    padding-bottom: 30px;
    position: static;
}

.hero-project-alt .hero-project-info h1 {
    font-size: 64px;
    line-height: 1.06;
}

.hero-project-alt .hero-project-info p {
    font-family: "Gotham-Medium";
    font-size: 29px;
    line-height: 1.17;
}

.hero-project-alt .hero-project-info .small {
    font-family: "Gotham-Book";
    font-size: 65%
}

.hero-project-alt .hero-container:before {
    display: block;
    content: '';
    height: 30%;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
    background: linear-gradient(to bottom, rgba(66,66,66,0) 0%, rgba(66,66,66,1) 100%);
}

.project-description {
    padding-top: 0;
    font-size: 19px;
    line-height: 1.32;
}

.project-description-main {
    max-width: 880px;
}

.project-description-main ul {
    padding-left: 12px;
    margin-bottom: 30px;
}

.project-description-main li {
    padding-left: 30px;
    position: relative;
}

.project-description-main li + li {
    margin-top: 15px;
}

.project-description-main li:before {
    display: block;
    content: '-';
    position: absolute;
    top: 0;
    left: 0;
}

.project-description-services {
    margin-top: 90px;
    overflow: hidden;
}

.project-description-services h4 {
    margin-bottom: 25px;
    font-family: "Gotham-Bold";
    font-size: 17px;
    font-weight: normal;
}

.project-description-services ul {
    float: left;
    min-width: 200px;
    padding-right: 45px;
}

.project-description-services li {
    display: block;
    white-space: nowrap;
}




/* PROJECT LUTRON */
.hero-project-lutron .hero-project-bg {
    background-image: url(../images/projects/lutron/hero-lutron.jpg);
}

/* PROJECT ELIXIR */
.hero-project-elixir {
    background: #fff;
}

.hero-project-elixir .hero-project-info {
    color: #5C5B59;
}

.hero-project-elixir .hero-project-bg {
    background-image: url(../images/projects/elixir/hero-elixir.jpg);
}

/* PROJECT EL DIABLO */
.hero-project-eldiablo {
    background: #1f1f1f;
}

.hero-project-eldiablo .hero-project-bg {
    background-image: url(../images/projects/eldiablo/hero-eldiablo.jpg);
}

/* PROJECT RODEL */
.hero-project-rodel .hero-project-bg {
    background-image: url(../images/projects/rodel/hero-rodel.jpg);
}

/* PROJECT DPP */
.hero-project-dpp .hero-project-bg {
    background-image: url(../images/projects/dpp/hero-dpp.jpg);
}

/* PROJECT IOWA */
.hero-project-iowa .hero-project-bg {
    background-image: url(../images/projects/iowa/hero-iowa.jpg);
}

/* PROJECT ONE MAIN */
.hero-project-one-main .hero-project-bg {
    background-image: url(../images/projects/one-main/hero-one-main.jpg);
}

/* PROJECT BARCLAY */
.hero-project-barclay .hero-project-bg {
    background-image: url(../images/projects/barclay-maverick/hero-barclay.jpg);
}
.project-item-barclay .project-logo img{
    max-width: 358px;
}

/* PROJECT UPROMISE */
.page-project-upromise .header-logo a::after,
.hero-project-upromise .link-case-study {
    color: #fff;
}

.hero-project-upromise .hero-project-bg {
    background-image: url(../images/projects/upromise/hero-upromise.jpg);
}

/* PROJECT COLLEGE AVE */
.page-project-college-ave .header-logo a::after,
.hero-project-college-ave .link-case-study {
    color: #fff;
}

.hero-project-college-ave .hero-project-bg {
    background-image: url(../images/projects/college-ave/hero-college-ave.jpg);
}

/* CAMPUSDOOR */
.hero-project-campusdoor {
    height: 80vw;
}

.hero-project-campusdoor .link-case-study {
    color: #fff;
}

.hero-project-campusdoor .hero-project-bg {
    background-position: 0 240px;
    background-image: url(../images/projects/campusdoor/hero-campusdoor.png);
    background-size: 58% auto;
}

/* PROJECT METROMILE */
.page-project-metromile .header-logo a::after,
.hero-project-metromile .link-case-study {
    color: #fff;
}

.hero-project-metromile .hero-project-bg {
    background-image: url(../images/projects/metromile/hero-metromile.jpg);
}

.hero-project-metromile .hero-container:before {
    display: block;
    content: '';
    width: 66%;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
    background: linear-gradient(to right, rgba(66,66,66,0) 0%, rgba(66,66,66,1) 100%);
}

.hero-project-metromile .hero-container:after {
    display: block;
    content: '';
    height: 35%;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
    background: linear-gradient(to bottom, rgba(66,66,66,0) 0%, rgba(66,66,66,1) 85%);
}

/* PROJECT CREDIT CARDS */
.hero-project-credit-cards .hero-project-bg {
    background-image: url(../images/projects/credit-cards/hero-credit-cards.jpg);
}

/* FINANCIAL UX/IA */
.hero-project-financial-uxia h1 {
    max-width: 860px;
}

.hero-project-financial-uxia .hero-project-info {
    max-width: 1000px;
}
.hero-project-financial-uxia .hero-project-bg {
    background-image: url(../images/projects/financial-uxia/hero-uxia.jpg);
}


.project-item-parallax .project-bg {
    width: 100%;
    height: 110%;
    top: 50%;
    left: 50%;
    z-index: -1;
    transform: translate(-50%,0);
    backface-visibility: hidden;
    pointer-events: none
}

.project-images {
    padding: 0;
    margin: auto;
}

.project-row {
    display: table;
    width: 100%;
    overflow: hidden;
}

.project-img {
    display: table-cell;
    width: 100%;
    height: 100%;
    background: center no-repeat;
    background-size: cover;
}

.project-img img {
    display: block;
    width: 100%;
    margin: auto;
}

.project-video {
    display: block;
}

.project-video video {
    display: block;
    width: 100%;
    height: auto;
}

.project-bg-white {
    background-color: #fff;
}

.project-bg-grey {
    background-color: #424242;
}

.project-bg-lgrey {
    background-color: #E7EBEE;
}

.project-bg-shiraz {
    background-color: #B7103A;
}

.project-img-1_3 {
    width: 33%;
}

.project-img-1_2 {
    width: 50%;
}

.project-img-2_3 {
    width: 67%;
}

.project-img-1_2 img,
.project-img-1_3 img {
    opacity: 0;
}

.project-img-fixed {
    display: block;
    min-height: 100vh;
    background: center no-repeat;
    background-size: cover;
    background-attachment: fixed;
    pointer-events: none;
    -webkit-transition: none;
    transition: none;
}

.project-img-fixed img {
    visibility: hidden;
    display: none;
}

.project-slider {
    position: relative;
}
.project-slider .slick-slide > div{
    line-height: 0;
}

.project-slide img {
    width: 100%;
    line-height: 0;
}

.project-slider .slick-prev {
    left: 4.25%;
}

.project-slider .slick-next {
    right: 4.25%;
}

.project-slider-dots {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 43px;
    z-index: 11;
}

.project-quote {
    padding: 95px 0 120px;
}

.project-quote .quote-inner {
    max-width: 1000px;
    padding: 100px 0 0;
    background: url(../images/quote.svg) 0 0 no-repeat;
}

.no-upscale img {
    width: auto;
    max-width: 100%;
}

.page-project .subscribe {
    padding-top: 210px;
}



/* SERVICES */

.services {
    padding: 186px 0;
    color: #5C5B59;
    background: #fff;
}

.services .wrap {
    max-width: 1110px;
}

.services-block {
    text-align: center;
}

.services-block + .services-block {
    margin-top: 140px;
}

.services h2 {
    padding: 34px 35px 32px;
    margin-bottom: 50px;
    font-family: "Gotham-Bold";
    font-size: 22px;
    line-height: 1.125;
    letter-spacing: .67em;
    font-weight: normal;
    text-transform: uppercase;
    text-align: center;
    color: #363636;
    opacity: 0;
    border: 2px solid #1E1D1D;
    transform: scaleY(0);
    transition: transform .5s ease, opacity .5s;
}

.animate h2 {
    opacity: 1;
    transform: scaleY(1);
}

.services-block p {
    max-width: 860px;
    margin: 0 auto 20px;
}

.services-list {
    margin-top: 50px;
}

.services-block ul {
    display: inline-block;
    width: 20%;
    margin: 0 -4px;
    vertical-align: top;
    line-height: 1.2;
    text-align: left;
}

.services-block ul + ul {
    padding-left: 40px;
}

.services-block1 ul {
    width: 23%;
}

.services-list ul {
    opacity: 0;
    transform: translateY(100px);
}

.services-list ul li + li {
    margin-top: 7px;
}

.services-list .small {
    font-size: 75%;
}

.services-list sup {
    padding-left: 1px;
    font-size: 50%;
    vertical-align: top;
}

.animate .services-list ul:nth-child(2){
    transition-delay: .15s;
}

.animate .services-list ul:nth-child(3){
    transition-delay: .3s;
}

.animate .services-list ul:nth-child(4){
    transition-delay: .45s;
}

.animate .services-list ul:nth-child(5){
    transition-delay: .6s;
}

.animate .services-list ul {
    opacity: 1;
    transform: translateY(0);
    transition: transform 1s ease, opacity 1s;
}

.category-throughlines .subscribe {
    padding-top: 200px;
}




/* LEADERSHIP */

.team {
    padding: 180px 0 250px;
}

.person-block {
    display: flex;
    width: 100%;
    flex-flow: row;
}

.person-block + .person-block {
    margin-top: 130px;
}

.person-block:nth-child(even){
    flex-flow: row-reverse;
}

.person-img {
    width: 50%;
    padding-top: 30px;
    position: relative;
    z-index: 0;
    pointer-events: none;
}

.person-img::before {
    display: block;
    content: '';
    width: 127%;
    height: 127%;
    position: absolute;
    top: 0;
    left: 50%;
    opacity: 0;
    background: url(../images/person-blur.png) center no-repeat;
    background-size: contain;
    transform: translate(-50%,-25%);
    filter: blur(5px);
    transition: opacity 3s;
}

.animate .person-img::before {
    opacity: 1;
}

#katy .person-img {
    padding-top: 0;
}

#katy .person-img img {
    margin-top: -20px;
}

.person-block:nth-child(even) .person-img {
    text-align: right;
}

.person-img img {
    max-width: 100%;
    position: relative;
    z-index: 2;
}

#shannon .person-img {
    margin-top: -30px;
}

#joe .person-img {
    margin-top: -40px;
}

#bryn .person-img {
    margin-top: -50px;
}

#jason .person-img {
    margin-top: -40px;
}

#john .person-img {
    margin-top: 30px;
}

.person-info {
    width: 50%;
    padding-left: 90px;
    position: relative;
    z-index: 1;
}

.person-block:nth-child(even) .person-info {
    padding-right: 90px;
    padding-left: 0;
}

.person-info h1 {
    margin-bottom: 20px;
    font-family: Sentinel;
    font-size: 73px;
    line-height: .93;
    font-weight: 300;
}

.person-position {
    margin-bottom: 50px;
    font-family: Idlewild, sans-serif;
    font-size: 11px;
    line-height: 1.64;
    font-weight: 500;
    letter-spacing: .46em;
    text-decoration: none;
    color: #918C86;
}

.person-info p {
    padding-right: 25px;
    margin-bottom: 23px;
    line-height: 1.3;
}

.person-info a {
    text-decoration: none;
}

#katy a,
#bryn a {
    color: #F05D58;
}

#shannon a,
#jason a {
    color: #00A99D;
}

.person-info a:hover {
    text-decoration: underline;
}

.person-info a.vcard img {
    display: inline-block;
    margin-left: 5px;
}

.person-info .person-info-block {
    opacity: 0;
    transform: translateY(150px);
    transition: transform .75s ease-out, opacity .75s ease;
}

.animate .person-info .person-info-block {
    opacity: 1;
    transform: translateY(0);
    transition-delay: .5s;
}

.animate .person-info .person-info-block:nth-child(2){
    transition-delay: .7s;
}

.animate .person-info .person-info-block:nth-child(3){
    transition-delay: .9s;
}



/* CONNECT */

.connect {
    padding: 230px 0 150px;
    text-align: center;
}

.connect h3 {
    margin-bottom: 10px;
    font-family: Sentinel;
    font-size: 44px;
    font-weight: 300;
}

.connect-top .col {
    display: inline-block;
    width: 30%;
    vertical-align: top;
    opacity: 0;
    transition: transform 1s ease, opacity .5s; 
    transition-delay: .25s;
}

.connect-top .col1 {
    opacity: 0;
    transform: translateX(-100px);
}

.connect-top .col3 {
    opacity: 0;
    transform: translateX(100px);
}

.animate .connect-top .col {
    opacity: 1;
    transform: translateX(0);
}

.connect .socials {
    margin-top: 20px;
}

.connect-bottom {
    max-width: 660px;
    margin: 60px auto 0;
    opacity: 0;
    transform: translateY(50px);
    transition: transform 1.2s ease, opacity .85s; 
    transition-delay: .2s;
}

.animate .connect-bottom {
    opacity: 1;
    transform: translateY(0);
}

.connect-bottom h3 {
    margin-bottom: 15px;
}

.page-connect .footer-contact-main {
    visibility: hidden;
    pointer-events: none;
}



/* EASTER */

.easter {
    padding: 220px 0 130px;
    position: relative;
    overflow: hidden;
}

.easter-bg {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 0;
    pointer-events: none;
    background: url(../images/easter-bg.jpg) center 0 no-repeat;
    background-size: cover;
}

.easter .wrap {
    max-width: 802px;
    position: relative;
    z-index: 1;
}

.easter .img-top {
    display: block;
    max-width: 268px;
    margin: 0 auto 40px;
}

.easter h1 {
    margin-bottom: 25px;
    font-family: Sentinel;
    font-weight: 300;
    font-size: 44px;
    text-align: center;
}

.easter .img-bottom {
    display: block;
    max-width: 100%;
    margin-top: 75px;
}



/* BLOG */

.page-blog {
    color: #5C5B59;
    background: #fff;
}

.blog-header {
    padding: 220px 0 30px;
}

.blog-header img {
    display: block;
    width: 100%;
    max-width: 362px;
    margin: auto;
}

.blog-posts {
    padding: 60px 0 200px;
}

.blog-posts .wrap {
    max-width: 1350px;
}

.blog-cols::after {
    display: block;
    content: '';
    clear: both;
}

.blog-cols .col {
    float: left;
    width: 50%;
    padding: 0 40px 0 0;
}

.blog-cols .col + .col {
    padding: 0 0 0 40px;
}

.blog-post {
    margin-bottom: 85px;
    color: #5C5B59;
}

.blog-post-box {
    opacity: 0;
    transform: translateY(150px);
    transition: transform 1s, opacity .5s;
    pointer-events: none;
}

.animate .blog-post-box {
    opacity: 1;
    transform: translateY(0);
    pointer-events: all;
}

.blog-post h2 {
    margin: 0 0 5px;
    font-size: 40px;
    color: #000;
}

.blog-post h2 a {
    color: inherit;
}

.blog-post h2 a:hover {
    color: #F88D0E;
    text-decoration: none;
}

.blog-post img {
    max-width: 100%;
    height: auto;
}

.blog-post ol,
.blog-post ul {
    padding-left: 15px;
    margin: 25px;
}

.blog-post ol li + li,
.blog-post ul li + li{
    margin-top: 8px;
}

.blog-post ol {
    list-style: decimal;
}

.blog-post ul {
    list-style: disc;
}

.post-author {
    margin-bottom: 55px;
    font-size: 13px;
    letter-spacing: 3px;
    text-transform: uppercase;
    color: #918C86;
}

.read-more {
    font-family: Hanley, sans-serif;
    font-size: 12px;
    line-height: 1.5;
    letter-spacing: .75em;
    text-transform: uppercase;
    color: #5C5B59;
}

.read-more::after {
    display: inline-block;
    content: '';
    width: 25px;
    height: 25px;
    margin-top: -1px;
    vertical-align: middle;
    background: url(../images/arr-right.svg) 57% center no-repeat;
    border-radius: 50%;
    transition: background .5s ease, transform .3s ease;
}

.read-more:hover {
    text-decoration: none;
}

.read-more:hover::after {
    background-color: #F05D58;
    background-image: url(../images/arr-right-hover.svg);
    transform: translateX(5px);
}

.blog-post.with-photo .blog-post-box {
    border: 1px solid #000;
}

.blog-post-img {
    overflow: hidden;
}

.blog-post-img img {
    display: block;
    max-width: 100%;
    transition: transform 2s ease;
}

.blog-post-img a:hover img {
    transform: scale(1.1);
}

.blog-post-inner {
    padding: 50px 52px;
}

.page-blog.light-theme .footer-cat {
    background: #fff !important;
}

.page-blog.light-theme .footer-contact p a {
    color: #5C5B59;
}

.page-blog.light-theme .subscribe {
    color: #5C5B59;
    background: none;
}

.page-blog.light-theme .subscribe h3 {
    color: #000;
}

.page-blog.light-theme .subscribe .btn {
    color: #5C5B59 !important;
}

.page-blog.light-theme .subscribe .btn:hover {
    color: #fff !important;
}

.page-blog.light-theme footer .socials li a::after {
    opacity: 0 !important;
}
.page-blog.light-theme footer .socials li a:hover::before {
    opacity: 1;
}

.pagination {
    text-align: center;
}

.pagination span,
.pagination a {
    display: inline-block;
    min-width: 25px;
    padding: 5px 10px;
}

.pagination a:hover {
    text-decoration: none;
    color: #555;
    background: #F05C5C;
}

/* single post */

.single-blog-post {
    padding: 0;
}

.single-blog-post .blog-post {
    max-width: 916px;
    margin: auto;
}

.blog-nav-top {
    margin-bottom: 50px;
}

.blog-nav-bottom {
    margin-top: 100px;
    margin-bottom: 80px;
}

.blog-nav a {
    padding-right: 20px;
    font-size: 13px;
    line-height: 1;
    letter-spacing: 3px;
    text-transform: uppercase;
    text-decoration: none;
    color: #5C5B59;
}

.blog-nav .arr {
    display: inline-block;
    margin-right: 14px;
    vertical-align: middle;
}

.blog-nav .arr::after {
    background: #fff;
}

.blog-nav .arr b,
.blog-nav .arr u {
    background: #fff;
    transition: background 1s;
}

.blog-nav a:hover .arr::before {
    transform: rotate(180deg) translateX(20px);
}

.blog-nav a:hover .arr b,
.blog-nav a:hover .arr u {
    background: #5C5B59;
}

.blog-nav a:hover .arr b::after {
    transform: scaleY(0);
    transition-delay: 0s;
}

.blog-nav a:hover .arr u::after {
    transform: scaleY(0);
    transition-delay: .18s;
}



/* */

@media screen and (min-width: 768px){

    .desktop-hide {
        display: none !important;
    }

}


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

    .step-num {
        margin: 0 5vw;
    }

    .step-num img {
        max-width: 100%;
    }

    .step-info {
        max-width: 58vw;
    }

    .services-block ul {
        padding-left: 30px;
    }

    .services-block1 ul {
        width: 25%;
    }

    .person-img {
        width: 40%;
    }

    .person-img::before {
        top: 0;
        transform: translate(-50%,-35%);
    }

    .person-info {
        width: 60%;
        padding-left: 50px;
    }

    .person-block:nth-child(even) .person-info {
        padding-right: 40px;
        padding-left: 0;
    }

    .blog-cols .col {
        padding: 0 3vw 0 0;
    }

    .blog-cols .col + .col {
        padding: 0 0 0 3vw;
    }

    .blog-post-inner {
        padding: 5vw;
    }

}


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

    .steps-line {
        width: 43%;
        margin: -10px auto;
    }

    .hero-project-services ul {
        width: 50%;
    }

    .connect-top .col {
        width: 32%;
    }

}


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

    body {
        font-size: 17px;
        line-height: 1.3;
    }

    .noscroll {
        height: -webkit-fill-available;
    }

    .mobile-hide {
        display: none !important;
    }


    /* HEADER / NAV */

    header {
        padding: 18px 20px;
    }

    .min-header header {
        padding: 11px 20px;
    }

    .header-logo {
        max-width: 164px;
    }

    .header-logo a::after {
        margin-top: 2em;
        font-size: 8px;
    }

    .min-header .header-logo {
        max-width: 160px;
    }

    .nav-toggle {
        width: 80px;
        height: 75px;
    }

    .min-header .nav-toggle {
        height: 60px;
    }

    /* nav */
    .nav {
        min-height: 100dvh;
        height: -webkit-fill-available;
        height: fill-available;
    }

    .nav-scroll {
        padding-top: 100px;
        overflow: scroll;
        -webkit-overflow-scrolling: touch;
    }

    .nav .wrap {
        padding: 0 28px;
    }

    .nav ul {
        font-size: 60px;
        columns: 1;
    }

    .nav ul a::after {
        display: none;
    }


    /* HERO */
    .hero {
        min-height: 100vh;
        min-height: 100dvh;
        min-height: -webkit-fill-available;
    }

    .hero-content {
        width: 100%;
        padding: 50px 25px 0;
    }

    .hero-content h2 {
        font-size: 44px;
    }


    /* hero home */
    .hero-home {
        height: auto;
    }

    .hero-home .hero-bg {
        background-image: url(../images/home-hero-bg-mob.jpg);
    }

    .hero-home::before,
    .hero-services::before {
        background-image: url(../images/home-hero-shapes-mob.svg);
    }

    .hero-home .hero-content {
        padding-top: 120px;
        padding-bottom: 50vw;
    }

    .hero-home h1 {
        margin-bottom: 235px;
        font-size: 27px;
    }

    .hero-home p {
        margin-bottom: 35px;
    }

    .hero-home::after {
        height: 15%;
        opacity: .5;
    }

    /* */

    section {
        padding: 40px 0;
    }

    .section-title {
        padding: 0;
        letter-spacing: .7em;
    }

    /* home clients */

    .clients-slider {
        margin: 0 -45px;
    }
    
    .clients-slides {
        padding: 0;
        margin: 30px 0;
    }

    .clients-slides:before {
        left: 0;
    }

    .clients-slides:after {
        right: 0;
    }

    .client-slide {
        padding: 0 20px;
    }

    .client-slide a img {
        max-width: 100%;
    }

    .clients-slides:after, 
    .clients-slides:before {
        width: 25%;
    }

    /* home about */

    .home-about {
        padding: 48px 0 72px;
    }

    .home-about p {
        margin-bottom: 30px;
        font-size: 17px;
        line-height: 1.47;
    }

    .home-about-btn {
        margin-top: 55px;
    }

    .home-about-link {
        margin-top: 85px;
    }

    .home-about .section-bg {
        background-image: url(../images/home-about-bg-mob.jpg);
    }

    /* quote */

    .testimonials {
        padding: 60px 0 0;
    }

    .testimonials-slider {
        margin: 0 -25px;
    }

    .section-title + .testimonials-slider {
        padding: 110px 0;
    }

    .testimonials-slides {
        background-position: center 0;
    }

    .quote-inner {
        width: 80%;
        padding-bottom: 45px;
        text-align: center;
    }

    .quote-inner p {
        line-height: 1.3;
    }

    .quote-author {
        line-height: 1.02;
    }

    .quote-logo {
        margin-top: 30px; 
    }

    .quote-logo > img {
        max-width: 90%;
        margin: auto;
    }

    /* finsights */

    .home-finsights {
        padding: 60px 0 80px;
    }

    .home-finsights .section-title {
        margin-bottom: 80px;
    }

    .finsights-logo {
        margin-bottom: 10px;
    }

    .home-finsights p {
        margin-bottom: 40px;
    }

    .home-finsights .section-bg {
        background-image: url(../images/home-finsights-bg-mob.png);
        background-size: 100% auto;
        background-position: center 60%;
    }

    /* home blog */

    .home-blog {
        padding: 100px 0;
    }

    .home-blog .section-title {
        margin-bottom: 50px;
    }

    .home-blog-post {
        display: block;
    }

    .home-blog-post + .home-blog-post {
        margin-top: 100px;
    }

    .home-blog .post-img {
        max-width: unset;
        margin-bottom: 50px;
    }

    .home-blog .post-img + .post-text {
        padding: 0;
    }

    .home-blog h2 {
        margin: 0 0 20px;
        font-size: 44px;
        line-height: 1.2;
        color: #fff;
    }

    /* awards */

    .our-awards {
        padding-top: 50px;
    }

    .our-awards h2 {
        margin: 20px 0 0;
    }

    .award-logos {
        margin: 40px -25px 0;
    }

    .award-logos ul {
        display: block;
    }

    .award-logos li {
        padding: 0 4%;
        margin-bottom: 25px;
    }

    .awards-list {
        margin-top: 25px;
    }

    .awards-list .awards-col,
    .awards-list .awards-col:last-child {
        float: none;
        width: 100%;
    }

    .awards-list li {
        margin-bottom: 50px;
    }


    /* subscribe */

    .subscribe {
        padding-bottom: 320px;
    }

    .subscribe-form {
        margin-top: 50px;
        flex-flow: column;
        gap: 23px;
    }

    .subscribe-form input[type=email] {
        width: 100%;
    }

    .subscribe-form button {
        align-self: end;
    }


    /* footer */

    footer {
        padding: 0;
        margin-top: 60px;
        overflow: visible;
    }

    footer::before {
        position: static;
        width: 100%;
        height: 200vw;
        min-width: unset;
        max-height: 1000px;
        background-image: url(../images/footer-shapes-mob.svg);
        background-position: 100% 0;
        background-size: contain;
    }

    footer::after {
        display: block;
        content: '';
        width: 50vw;
        height: 50vw;
        max-width: 250px;
        max-height: 250px;
        position: absolute;
        right: 0;
        bottom: 100%;
        z-index: 10;
        background: url(../images/footer-shapes2-mob.svg) 100% 100% no-repeat;
        background-size: cover;
        pointer-events: none;
    }

    .footer-contact {
        padding-top: 55px;
    }



    /* FINSIGHTS SECTIONS/FORM */

    .finsights .finsights-logo {
        max-width: 85%;
        margin: 0 auto 35px;
    }

    .finsights-hero {
        padding: 157px 0 0;
    }

    .finsights-hero h1 {
        font-size: 35px;
    }

    .finsights-hero p {
        max-width: 370px;
        margin: 0 auto 25px;
    }

    .reasons {
        display: block;
        margin: 100px 0 60px;
    }

    .reason + .reason {
        margin-top: 100px;
    }

    .reason-img {
        display: block;
        height: auto;
        margin-bottom: 15px;
    }

    .reasons-more {
        padding: 0
    }

    .reasons-more .btn-scroll {
        margin-top: 70px;
    }

    .finsights-form {
        padding: 100px 26px 37px;
        margin-top: 0;
    }

    .finsights-form .wrap {
        padding: 94px 16px 75px;
    }

    .finsights-form h3 {
        max-width: 500px;
        margin-bottom: 40px;
        font-size: 24px;
    }

    .finsights-form h3 img {
        display: block;
        width: 100%;
        margin: 0;
    }
    .finsights-form h3 span {
        display: block;
        text-align: right;
    }

    .finsights-form p {
        font-size: 17px;
    }

    .req-info {
        margin: 40px 0 30px;
    }

    .finsights-form fieldset {
        display: block;
        max-width: 500px;
        margin-bottom: 40px;
    }

    .finsights-form fieldset:last-child {
        margin-bottom: 0;
    }

    .finsights-form fieldset > div + div {
        margin-top: 40px;
    }

    .form-field-sm {
        max-width: unset;
    }

    .form-note {
        padding-left: 69px;
        margin-bottom: 40px;
        background-position: 0 -8px;
    }

    /* through lines */

    .through-lines {
        padding-top: 65px;
    }

    .through-lines .category-img {
        margin-bottom: 20px;
    }

    .through-lines .content > h4 {
        font-size: 12px;
        line-height: 1.25;
        margin-top: 20px;
    }

    .through-lines .content > p {
        max-width: 85%;
    }

    .through-lines .thl-posts {
        display: block;
        margin-top: 60px;
    }

    .through-lines .thl-posts .blog-post {
        width: 100%;
    }

    .through-lines .thl-posts .blog-post + .blog-post {
        margin-top: 28px;
    }


    /* APPROACH */

    .hero-approach:before {
        height: 65%;
    }

    .hero-approach:after {
        width: 100%;
        left: 0;
        background-image: url(../images/approach-hero-shapes-mob.svg);
    }

    .approach-block {
        padding: 160px 0;
    }

    .approach-block:first-child {
        padding-top: 0;
    }

    .approach-block h2 {
        font-size: 63px;
        line-height: 1.03;
    }

    .approach-list .list-ico {
        top: 50%;
    }

    .approach-list .list-ico img {
        transform: translateY(-50%);
    }

    .approach-list br {
        display: none;
    }

    .method {
        padding: 120px 0 100px;
    }

    .method .section-intro p {
        padding: 0 4%;
    }

    .steps {
        margin: 120px 0 70px;
    }

    .step-num,
    .step-num-left .step-num {
        float: none;
    }

    .step-num img {
        max-width: 28.85%;
        margin: auto;
    }

    .step-info,
    .step-num-left .step-info {
        float: none;
        display: block;
        max-width: 100%;
        margin: 55px 0 0;
    }

    .step-icon,
    .step-icon div {
        display: block;
        width: 100%;
        max-width: unset;
        height: auto;
    }

    .step-icon div img {
        display: block;
        max-width: 39.7%;
        margin: auto;
        position: static;
        transform: none;
    }

    .step1 .step-icon div img {
        max-width: 42%;
    }

    .step-text {
        display: block;
        margin-top: 30px;
        text-align: center;
    }

    .step-text div {
        margin: auto;
    }

    .steps-line {
        display: none;
    }

    .steps-line + .step {
        margin-top: 130px;
    }

    .steps p {
        margin: 0 auto;
    }



    /* WORKS */

    .hero-work {
        height: 77vw;
        min-height: unset;
    }

    .hero-work .hero-bg {
        background-image: url(../images/work-hero-bg-mob.jpg);
    }

    .hero-work .hero-content {
        padding: 0;
    }

    .hero-work h2 {
        padding: 20vw 10% 0;
        margin: 0;
        font-size: 32px;
        line-height: 1.2;
    }

    .works-intro {
        padding: 30px 0 25px;
        text-align: center;
    }

    .works-intro p {
        margin: 0;
        line-height: 1.41;
    }

    .projects-row {
        display: block;
    }

    .projects-row-hidden {
        display: none;
    }

    .project-item,
    .project-item-1_2,
    .project-item-1_3,
    .project-item-2_3 {
        width: 100%;
    }

    .project-bg video {
        width: 160%;
    }

    .project-logo {
        display: block;
        min-height: unset;
        margin: 0 0 38px;
    }

    .project-logo img {
        max-width: 60%;
    }

    .project-item-barclay .project-logo img {
        max-width: 80%;
    }

    .project-name {
        padding: 0 10%;
        font-size: 31px;
        line-height: 1.19;
    }

    .project-more {
        margin: 0;
    }

    .projects-more {
        padding: 100px 0;
    }


    /* SINGLE PROJECT */

    .hero-project {
        height: auto;
    }

    .hero-project .btn-scroll {
        display: none;
    }

    .hero-project-info {
        float: none;
        width: 100%;
        max-width: 500px;
        padding-bottom: 70px;
        margin-top: 134.5vw;
    }

    .link-case-study {
        margin-top: 10px;
    }

    .hero-project-services ul {
        width: 50%;
        padding-right: 25px;
    }

    .hero-project-services ul:last-child {
        padding-right: 0;
    }

    .hero-project-bg {
        background: 0 0 no-repeat;
        background-size: 100% auto;
    }


    .hero-project-liquid .hero-container {
        position: static;
    }

    .hero-project-liquid .hero-project-bg {
        height: unset;
        min-height: unset;
        font-size: 0;
    }

    .hero-project-liquid .hero-project-bg img {
        width: 100%;
        visibility: hidden;
    }

    .hero-project-liquid .hero-project-bg::after {
        display: block;
        content: '';
        width: 100%;
        height: 30%;
        position: absolute;
        left: 0;
        right: 0;
        bottom: 0;
        z-index: 0;
        background: linear-gradient(to bottom, rgba(66,66,66,0) 0%, rgba(66,66,66,1) 99%);
    }


    .hero-project-alt {
        height: auto;
        min-height: 100dvh;
    }

    .hero-project-alt .hero-container {
        display: block
        position: relative;
    }

    .hero-project-alt .hero-project-info {
        padding-bottom: 50px;
        margin-top: 340px;
    }

    .hero-project-alt .hero-project-info .hero-project-logo {
        max-width: 100px;
        padding-bottom: 25px;
    }

    .hero-project-alt .hero-project-info .hero-project-logo img {
        max-width: 100%;
    }

    .hero-project-alt .hero-project-info h1 {
        font-size: 44px;
        line-height: 1.04;
    }

    .hero-project-alt .hero-project-info p {
        font-size: 20px;
        line-height: 1.25;
    }

    .hero-project-alt .hero-container:before {
        display: none;
    }

    .hero-project-alt .hero-project-bg {
        height: auto;
        min-height: unset;
        background-size: 100% auto;
    }

    .hero-project-alt .hero-project-bg img {
        display: block;
        width: 100%;
    }

    .hero-project-alt .hero-project-bg:before {
        display: block;
        content: '';
        height: 40%;
        position: absolute;
        left: 0;
        right: 0;
        bottom: 0;
        z-index: 1;
        background: linear-gradient(to bottom, rgba(66,66,66,0) 0%, rgba(66,66,66,1) 80%);
    }


    .project-description {
        font-size: 17px;
    }

    .project-description-services {
        margin-top: 55px;
        margin-right: -35px;
    }

    .project-description-services h4 {
        margin-bottom: 25px;
    }

    .project-description-services ul {
        min-width: 180px;
        padding-right: 35px;
    }

    .project-description-services li + li {
        margin-top: 10px;
    }


    .project-quote {
        padding: 75px 0 125px;
    }

    .project-quote .quote-inner {
        width: 90%;
        background-position: center 0;
    }

    .project-quote .quote-author {
        padding: 0 10%;
        margin-top: 35px;
    }

    .project-quote .quote-author-title {
        letter-spacing: 4px;
    }

    .project-slider-dots {
        bottom: 25px;
    }

    /* lutron */
    .hero-project-lutron .hero-project-bg {
        background-image: url(../images/projects/lutron/hero-lutron-mob.jpg);
    }

    /* dpp */
    .hero-project-dpp .hero-project-bg {
        background-image: url(../images/projects/dpp/hero-dpp-mob.jpg);
    }

    /* PROJECT ONE MAIN */
    .hero-project-one-main .hero-project-info {
        margin-top: 131.5vw;
    }
    .hero-project-one-main .hero-project-logo img{
        max-width: 130px;
    }
    .hero-project-one-main .hero-project-bg {
        background-image: url(../images/projects/one-main/hero-one-main-mob.jpg);
        background-size: 200% auto !important;
        background-position: 50% 5% !important;
        background-repeat: no-repeat !important;
    }

    /* PROJECT BARCLAY */
    .hero-project-barclay .hero-project-bg {
        background-image: url(../images/projects/barclay-maverick/hero-barclay-mob.jpg);
        background-position: 50% 4% !important;
        background-repeat: no-repeat !important;
        background-size: 799px auto !important;
    }
    .hero-project-barclay .hero-project-info {
        margin-top: 150.5vw;
    }
    .hero-project-barclay .hero-project-logo img{
        max-width: 145px;
    }

    /* elixir */
    .page-project-elixir .header-logo a svg .main-color {
        fill: #fffffe;
    }

    .page-project-elixir.min-header .header-logo a svg .main-color {
        fill: #5c5b59;
    }

    .page-project-elixir .header-logo a::after {
        color: #fff;
    }

    .hero-project-elixir .hero-project-bg {
        background-image: url(../images/projects/elixir/hero-elixir-mob.jpg);
    }

    .project-img-exilir-logos {
        padding: 55px 20px 75px;
    }
    .project-img-exilir-logos img {
        width: auto;
        max-width: 100%;
    }

    /* rodel */
    .hero-project-rodel .hero-project-bg {
        background-image: url(../images/projects/rodel/hero-rodel-mob.jpg);
    }

    /* eldiablo */
    .hero-project-eldiablo .hero-project-bg {
        background-image: url(../images/projects/eldiablo/hero-eldiablo-mob.jpg);
    }

    .project-img-eldiablo-logos {
        padding: 72px 12% 124px;
    }
    .project-img-eldiablo-logos img {
        width: auto;
        max-width: 100%;
    }

    /* iowa */
    .hero-project-iowa .hero-project-bg {
        background-image: url(../images/projects/iowa/hero-iowa-mob.jpg);
    }

    /* upromise  */
    .hero-project-upromise .hero-project-bg {
        background-size: 100% auto;
        background-image: url(../images/projects/upromise/hero-upromise-mob.jpg);
    }

    /* college ave  */
    .hero-project-college-ave .hero-project-bg {
        background-size: 100% auto;
        background-image: url(../images/projects/college-ave/hero-college-ave-mob.jpg);
    }

    /* campusdoor */
    .page-project-campusdoor .header-logo a::after {
        color: #fff;
    }

    .hero-project-campusdoor .hero-project-info {
        margin-top: 147vw;
    }

    .hero-project-campusdoor .hero-project-logo img {
        max-width: 45vw;
    }

    .hero-project-campusdoor .hero-project-bg {
        background-size: 100% auto;
        background-position: 0 18vw;
        background-image: url(../images/projects/campusdoor/hero-campusdoor-mob.png);
    }

    /* metromile  */
    .hero-project-metromile .hero-project-bg {
        background-size: 100% auto;
        background-image: url(../images/projects/metromile/hero-metromile-mob.jpg);
    }

    .hero-project-metromile .hero-container:before {
        display: none;
    }

    .hero-project-metromile .hero-project-bg:after {
        height: 35%;
    }

    /* credit cards  */
    .hero-project-credit-cards .hero-project-bg {
        background-image: url(../images/projects/credit-cards/hero-credit-cards-mob.jpg);
    }

    /* credit cards  */
    .hero-project-financial-uxia .hero-project-bg {
        background-image: url(../images/projects/financial-uxia/hero-uxia-mob.jpg);
    }



    /* SERVICES */

    .hero-services .btn-scroll {
        margin-top: 100px;
    }

    .services {
        padding: 150px 0; 
    }

    .services h2 {
        padding: 25px 25px 23px;
        margin-bottom: 30px;
        font-size: 16px;
        letter-spacing: .55em;
    }

    .services-block {
        line-height: 1.42;
        text-align: left;
    }

    .services-block + .services-block {
        margin-top: 129px;
    }

    .services-list {
        margin-top: 30px;
    }

    .services-block ul {
        width: 49%;
        padding-left: 0;
        padding-right: 20px;
        margin: 0;
    }

    .services-block ul + ul {
        padding-left: 20px;
        padding-right: 0;
    }

    .services-block ul li + li {
        margin-top: 10px;
    }

    .page-services .subscribe {
        padding-top: 155px;
    }


    /* LEADERSHIP */

    .hero-leadership {
        height: 77vw;
        min-height: unset;
    }

    .hero-leadership .hero-bg {
        background-image: url(../images/leadership-hero-bg-mob.jpg);
    }

    .hero-leadership .hero-inner {
        padding: 0;
    }

    .hero-leadership h2 {
        padding-top: 24%;
        font-size: 35px;
    }

    .leadership-intro {
        padding: 30px 25px;
        text-align: center;
    }

    .leadership-intro .btns {
        margin-top: 40px;
    }

    .leadership-intro .btns a {
        width: 80%;
        max-width: 276px;
    }

    .leadership-intro .btns a + a {
        margin-top: 15px;
        margin-bottom: 0;
    }

    .leadership-intro .btns a:hover {
        color: #fff !important;
        background: none;
    }

    .leadership-intro .btn-scroll {
        margin-top: 70px;
    }

    .team {
        padding: 150px 0 130px;
    }

    .person-block {
        display: block;
    }

    .person-block + .person-block {
        margin-top: 90px;
    }

    .person-img {
        width: auto;
        min-width: 100%;
        margin-top: 0 !important;
        margin-left: -5px;
        margin-right: -5px;
    }

    .person-img img {
        width: 100%;
    }

    .person-img::before {
        width: 185%;
        height: 185%;
        opacity: .7;
    }

    .person-info,
    .person-block:nth-child(even) .person-info {
        width: 100%;
        padding: 20px 12px 0;
    }

    #shannon .person-info {
        padding-top: 40px;
    }

    #john .person-info {
        padding-top: 30px;
    }

    .person-info h1 {
        width: 70%;
        margin-bottom: 15px;
        font-size: 53px;
        line-height: .93;
    }

    .person-position {
        margin-bottom: 55px;
    }


    /* BLOG */

    .blog-header {
        padding-top: 125px;
    }

    .blog-posts {
        padding-bottom: 100px;
    }

    .blog-cols .col,
    .blog-cols .col + .col {
        float: none;
        width: 100%;
        padding: 0;
    }

    .blog-post-inner {
        padding: 30px;
    }

    .page-blog footer::after {
        opacity: .75;
    }

    .blog-nav-top {
        margin: 10px 0 90px;
    }

    .blog-nav-bottom {
        margin-bottom: 0;
    }

    .btn-back .arr {
        display: none;
    }

    .btn-back::before {
        display: inline-block;
        content: '';
        width: 12px;
        height: 16px;
        margin-top: -2px;
        margin-right: 7px;
        vertical-align: middle;
        background: url(../images/arr-right.svg) center no-repeat;
        transform: scaleX(-1);
    }


    /* CONNECT */

    .connect {
        padding: 168px 25px 230px;
        line-height: 1.41;
    }

    .connect-top .col {
        display: block;
        width: 100%;
    }

    .connect-top .col + .col {
        margin-top: 60px;
    }

    .connect-bottom h3 {
        margin-bottom: 30px;
        line-height: 1.05;
    }


    /* EASTER */

    .easter {
        padding: 176px 0 80px;
    }

    .easter-bg {
        background-position: 15% 0;
    }

    .easter .img-top {
        margin-bottom: 60px;
    }

    .easter h1 {
        margin-bottom: 30px;
        line-height: 1.2;
    }

}


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

    h2 {
        font-size: 40px;
    }

    .services h2 {
        padding: 20px 15px 17px;
    }

    .services-list {
        padding-left: 4px;
        font-size: 16px;
    }

    .services-block ul {
        padding-right: 10px;
    }

    .services-block ul + ul {
        padding-left: 15px;
    }

}



/* INTRO */

.intro {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 999999;
    overflow: hidden;
    color: #fff;
    background: #424242;
    transition: transform .4s ease-in;
    backface-visibility: hidden;
}
.hide-intro {
    transform: translateY(-101%);
    pointer-events: none;
}

.intro-close {
    display: block;
    width: 100px;
    height: 100px;
    position: absolute;
    top: 0;
    right: 0;
}
.intro-close::before,
.intro-close::after {
    display: block;
    content: '';
    width: 50%;
    height: 2px;
    position: absolute;
    top: 50%;
    left: 50%;
    background: #00B2A9;
    transition: background .5s ease;
}
.intro-close::before {
    transform: translate(-50%,-50%) rotate(-45deg);
}
.intro-close::after {
    transform: translate(-50%,-50%) rotate(45deg);
}
.intro-close:hover::before,
.intro-close:hover::after {
    background: #F88D0E;
}

.intro-scene {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    pointer-events: none;
}

.scene-elements {
    width: 100%;
    max-height: 100%;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
}

.scene-elements-mob {
    display: none;
}

.scene-elements > div {
    position: absolute;
    overflow: hidden;
}

.scene-elements img {
    display: block;
    width: 100%;
    height: auto;
    will-change: transform;
    backface-visibility: hidden;
}

.el1 {
    width: 7.1%;
    top: 14%;
    left: 0;
}
.el1 img {
    transform-origin: 100% 100%;
    transition: transform .6s ease;
}
.animate .el1 img {
    transform: rotate(-90deg) translateX(-2%);
}

.el2 {
    width: 31.4%;
    top: 0;
    left: 7.1%;
}
.el2 img {
    transition: transform .7s ease;
}
.animate .el2 img {
    transform: translateY(100%);
}

.el3 {
    width: 7.8%;
    top: 0;
    left: 38.4%;
    z-index: 1;
    transform-origin: 0 0;
    transition: transform .4s ease 1.5s;
}
.animate .el3 {
    transform: rotate(180deg);
}
.el3 img {
    transform-origin: 0 0;
    transition: transform .35s ease 1.8s;
}
.animate .el3 img {
    transform: rotate(90deg);
}

.el4 {
    width: 7.8%;
    top: 13%;
    left: 38.4%;
    transform-origin: 0 100%;
    transition: transform .3s ease .35s;
}
.animate .el4 {
    transform: rotate(92deg);
}
.el4 img {
    transform-origin: 0 100%;
    transition: transform .2s ease .5s;
}
.animate .el4 img {
    transform: rotate(90deg);
}

.el5 {
    width: 7.8%;
    top: 0;
    left: 46.2%;
    transform-origin: 0 0;
    transition: transform .4s ease 1s;
}
.animate .el5 {
    transform: rotate(180deg);
}
.el5 img {
    transform-origin: 0 0;
    transition: transform .3s ease 1.5s;
}
.animate .el5 img {
    transform: rotate(90deg);
}

.el6 {
    width: 7.8%;
    top: 12.85%;
    left: 46.2%;
    transform-origin: 0 100%;
    transition: transform .3s ease;
}
.animate .el6 {
    transform: rotate(180deg);
}
.el6 img {
    transform-origin: 0 100%;
    transition: transform .4s ease .2s;
}
.animate .el6 img {
    transform: rotate(90deg) translateX(2%);
}

.el7 {
    width: 15.9%;
    top: 0;
    left: 61.4%;
}
.el7 img {
    transition: transform .4s ease 1.2s;
}
.animate .el7 img {
    transform: scale(0);
}

.el8 {
    width: 8.15%;
    top: 0;
    left: 80.5%;
    transform-origin: 50% 100%;
    transition: transform .3s ease;
    will-change: transform;
}
.animate .el8 {
    transform: rotate(-180deg);
}
.el8 img {
    transition: transform .25s ease .2s;
}
.animate .el8 img {
    transform: translateX(-101%);
}

.el9 {
    width: 7.95%;
    top: 12.8%;
    left: 84.68%;
    background: #424242;
    transform-origin: 0 100%;
    transition: transform .3s ease .35s;
}
.animate .el9 {
    transform: rotate(90deg);
}
.el9 img {
    transform-origin: 0 100%;
    transition: transform .2s ease .45s;
}
.animate .el9 img {
    transform: rotate(90deg) translateX(2%);
}

.el10 {
    width: 15.2%;
    top: 25.58%;
    left: 0;
    transform-origin: 100% 0;
    transition: transform .4s ease .5s;
}
.animate .el10 {
    transform: rotate(-180deg);
}
.el10 img {
    transform-origin: 100% 0;
    transition: transform .3s ease .9s;
}
.animate .el10 img {
    transform: rotate(-90deg) translateY(1%);
}

.el11 {
    width: 15.2%;
    top: 50%;
    left: 0;
    transform-origin: 100% 0;
    transition: transform .4s ease;
}
.animate .el11 {
    transform: rotate(-180deg);
}
.el11 img {
    transform-origin: 100% 0;
    transition: transform .3s ease .3s;
}
.animate .el11 img {
    transform: rotate(-90deg) translateY(2%);
}

.el12 {
    width: 23.2%;
    top: 25.58%;
    left: 15.15%;
    transform-origin: 100% 0;
    transition: transform .4s ease 1.1s;
}
.animate .el12 {
    transform: rotate(90deg);
}
.el12 img {
    transform-origin: 100% 0;
    transition: transform .3s ease 1.2s;
}
.animate .el12 img {
    transform: rotate(90deg) translateX(-1%);
}

.el14 {
    width: 15.75%;
    top: 50.2%;
    left: 38.4%;
}
.el14 img {
    transition: transform .4s ease;
}
.animate .el14 img {
    transform: scale(0) translateX(1%);
}

.el15 {
    width: 15.44%;
    top: 25.58%;
    left: 54%;
    transform-origin: 100% 0;
    transition: transform .4s ease 1.25s;
}
.animate .el15 {
    transform: rotate(90deg);
}
.el15 img {
    transform-origin: 100% 0;
    transition: transform .3s ease 1.4s;
}
.animate .el15 img {
    transform: rotate(90deg) translateX(-1%);
}

.el16 {
    width: 7.8%;
    top: 50%;
    left: 53.9%;
    transform-origin: 100% 100%;
    transition: transform .4s ease .8s;
}
.animate .el16 {
    transform: rotate(-180deg);
}
.el16 img {
    transform-origin: 100% 100%;
    transition: transform .25s ease 1.2s;
}
.animate .el16 img {
    transform: scale(0);
}

.el17 {
    width: 7.7%;
    top: 62.6%;
    left: 53.9%;
    transform-origin: 0 0;
    transition: transform .4s ease .2s;
}
.animate .el17 {
    transform: rotate(180deg);
}
.el17 img {
    transform-origin: 0 0;
    transition: transform .25s ease .5s;
}
.animate .el17 img {
    transform: rotate(90deg);
}

.el18 {
    width: 1.6%;
    top: 55.5%;
    left: 64.6%;
    transition: transform .6s ease 1.8s;
}
.animate .el18 {
    transform: translateX(-100vw);
}

.el19 {
    width: 7.8%;
    top: 62.5%;
    left: 61.7%;
    transform-origin: 100% 100%;
    transition: transform .4s ease 1.4s;
}
.animate .el19 {
    transform: rotate(-180deg);
}
.el19 img {
    transform-origin: 100% 100%;
    transition: transform .25s ease 1.7s;
}
.animate .el19 img {
    transform: scale(0);
}

.el20 {
    width: 15.3%;
    top: 25.58%;
    left: 69.4%;
}
.el20 img {
    transform-origin: 0 0;
    transition: transform .3s ease .5s;
}
.animate .el20 img {
    transform: rotate(90deg) translateY(2%);
}

.el21 {
    width: 30.7%;
    top: 50.27%;
    left: 69.3%;
}
.el21 img {
    transition: transform .7s ease;
}
.animate .el21 img {
    transform: translateY(-100%);
}

.el28 {
    width: 15.75%;
    top: 74.9%;
    left: 38.4%;
}
.el28 img {
    transition: transform .4s ease .2s;
}
.animate .el28 img {
    transform: scale(0);
}

.el29 {
    width: 15.1%;
    top: 75.1%;
    left: 54.3%;
}
.el29 img {
    transform-origin: 100% 100%;
    transition: transform .3s ease;
}
.animate .el29 img {
    transform: rotate(90deg) translateY(-1%);
}

.el30 {
    width: 15.3%;
    top: 75.1%;
    left: 69.4%;
    transform-origin: 0 0;
    transition: transform .4s ease 1.7s;
}
.animate .el30 {
    transform: rotate(-180deg);
}
.el30 img {
    transform-origin: 0 0;
    transition: transform .35s ease 1.9s;
}
.animate .el30 img {
    transform: rotate(-90deg);
}

.el31 {
    width: 15.6%;
    top: 75%;
    left: 84.25%;
}
.el31 img {
    transform-origin: 100% 100%;
    transition: transform .4s ease .5s;
}
.animate .el31 img {
    transform: rotate(90deg) translateY(-2%);
}

.el-logo {
    width: 70%;
    max-width: 211px;
    margin-top: 30px;
    position: absolute;
    top: 85dvh;
    left: 9.3vw;
    overflow: hidden;
    transition: opacity .01s linear .6s;
}
.animate .el-logo {
    opacity: 0;
}

.el-logo2 {
    width: 70%;
    max-width: 211px;
    margin-top: 30px;
    position: absolute;
    top: 85dvh;
    left: 50%;
    overflow: visible !important;
    transition: top 1s ease 1s;
    transform: translateX(-50%);
}
.animate .el-logo2 {
    top: 0;
}
.el-logo2 div {
    width: 45vw;
    width: calc(50vw - 9.3vw + 50%);
    margin-right: -50%;
    position: absolute;
    top: 0;
    right: 50%;
    bottom: 0;
    z-index: 1;
    overflow: hidden;
    transform: scaleX(0);
    transform-origin: 0 0;
    transition: transform .7s ease .5s;
    will-change: transform;
}
.el-logo2 div::after {
    display: block;
    content: '';
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    transition: transform .6s ease .75s, opacity .01s linear 1.5s;
    background: #fff;
}
.el-logo2 img {
    opacity: 0;
    transition: opacity .01s linear 1s;
}
.animate .el-logo2 div {
    transform: scaleX(1);
}
.animate .el-logo2 div::after {
    opacity: 0;
    transform: translateX(110%);
}
.animate .el-logo2 img {
    opacity: 1;
}

.el-logo img,
.el-logo2 img {
    display: block;
    width: 100%;
}

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

    .intro-close::before,
    .intro-close::after {
        width: 28px;
        height: 2px;
        top: 30px;
        right: 5px;
        left: auto;
    } 

    .scene-elements {
        display: none;
    }

    .scene-elements-mob {
        display: block;
        height: 100%;
        top: auto;
        bottom: 0;
        transform: translateY(0);
    }

    .elm1 {
        width: 50%;
        top: 0;
        left: 0;
        overflow: visible !important;
    }
    .elm1 img {
        transform-origin: -1px -1px;
        transition: transform .5s ease .5s;
    }
    .animate .elm1 img {
        transform: rotate(-180deg);
    }

    .elm2 {
        width: 50%;
        top: 26.5%;
        left: 0;
        transform-origin: 100% 100%;
        transition: transform .3s ease .6s;
    }
    .elm2 img {
        transform-origin: 100% 101%;
        transition: transform .3s ease .8s;
    }
    .animate .elm2,
    .animate .elm2 img {
        transform: rotate(90deg);
    }

    .elm3 {
        width: 50%;
        top: 0;
        left: 50%;
        overflow: hidden;
    }
    .elm3 img {       
        transition: transform .3s ease .2s;
    }
    .animate .elm3 img {
        transform: translateX(101%);
    }

    .elm4 {
        width: 50%;
        top: 55%;
        left: 0;
    }
    .elm4 img {
        transform-origin: 0 0;
        transition: transform .3s ease .3s;
    }
    .animate .elm4 img {
        transform: rotate(90deg);
    }

    .elm5 {
        width: 25%;
        top: 55%;
        left: 50%;
        overflow: hidden;
        transform-origin: 100% 0;
        transition: transform .3s ease 1.6s;
    }
    .elm5 img {
        transform-origin: 100% -1px;
        transition: transform .3s ease 1.8s;
    }
    .animate .elm5 {
        transform: rotate(-90deg);
    }
    .animate .elm5 img {
        transform: rotate(-90deg) translateY(1%);
    }

    .elm6 {
        width: 25%;
        top: 69%;
        left: 50%;
    }
    .elm6 img {
        transform-origin: 0 100%;
        transition: transform .3s ease 1.2s;
    }
    .animate .elm6 img {
        transform: rotate(90deg) translateX(1%);
    }

    .elm7 {
        width: 25%;
        top: 69%;
        left: 75%;
    }
    .elm7 img {
        transform-origin: 0 101%;
        transition: transform .3s ease 1.1s;
    }
    .animate .elm7 img {
        transform: rotate(90deg) translateX(1%);
    }

    .elm8 {
        width: 5.25%;
        height: 2.9%;
        top: 60%;
        left: 84%;
        background: #F05D58;
        border-radius: 50%;
        transition: transform .4s ease 1.68s;
    }
    .animate .elm8 {
        transform: translateY(-100vh);
    }

    .el-logo {
        width: 70%;
        max-width: 164px;
        margin-top: 18px;
        position: absolute;
        top: 88%;
        left: 50%;
        opacity: 0;
        transition: top .8s ease 1.5s, opacity 1s ease .25s;
        transform: translateX(-50%);
    }
    .el-logo div {
        margin: auto;
        position: relative;
        overflow: hidden;
    }
    .el-logo div::after {
        display: block;
        content: '';
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        left: 0;
        background: #fff;
        transition: opacity .5s ease .5s;
    }
    .animate .el-logo {
        opacity: 1;
        top: 0;
    }
    .animate .el-logo div::after {
        opacity: 0;
    }

    .el-logo2 {
        display: none;
    }

    .el-scroll {
        height: 100px;
    }

}


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

    .el-scroll {
        height: 70px;
    }

}

 
/* pico animation */
.lutron-animation {
    position: relative;
    pointer-events: none;
}

.animation-frames {
    width: 80%;
    position: absolute;
    top: 0;
    left: 50%;
    bottom: 0;
    z-index: 1;
    overflow: hidden;
    transform: translateX(-50%);
}

.animation-frames > div {
    position: absolute;
    left: 0;
    bottom: 0;
    will-change: transform;
}

.animation-frames img {
    display: block;
    width: auto;
    max-width: unset;
    opacity: 1;
}
