.mob-nav>div:nth-child(1) ul,
nav {
    display: -webkit-box;
    display: -moz-box
}

.sound-on-off span,
body[data-state=project] .scroll-arrow,
body[data-state=project] .sound-on-off,
nav[data-active=off] .logo {
    opacity: 0
}

.sound-on-off span,
nav {
    text-transform: uppercase
}

.contact-modal .ledge-wrap,
.mob-nav .ledge-wrap {
    overflow: hidden
}

.contact-modal a,
.contact-modal h4,
.contact-modal p {
    color: #fff;
}

.contact-modal a{
    transition: color .3s;
}

.contact-modal a:hover,
.contact-modal a:focus{
    color: #07933d;
}

.mob-nav a,
.mob-nav h3,
body[data-state=intro] .sound-on-off span,
nav[data-state=intro] a,
nav[data-state=project] a {
    color: #fff
}
.mob-nav a,
.mob-nav h3{
    color: #101010;
}
.contact-modal[data-active=off],
.hand-cursor-follower,
.mob-nav .ledge-wrap,
.mob-nav[data-active=off],
.preloader-shield,
.sound-on-off span,
header,
nav[data-state=who] .main-nav li:nth-child(2),
nav[data-state=what] .main-nav li:nth-child(3),
nav[data-state=work] .main-nav li:nth-child(4),
nav[data-state=contact] .main-nav li:nth-child(5),
nav[data-state=intro] .logo,
nav[data-state=intro] .main-nav li:nth-child(1) {
    pointer-events: none
}

/*
@font-face {
    font-family: 'Roboto', sans-serif;
    src: url(/fonts/GT-Sectra-Book.eot);
    src: url(/fonts/GT-Sectra-Book.eot) format("embedded-opentype"), url(/fonts/GT-Sectra-Book.woff) format("woff"), url(/fonts/GT-Sectra-Book.ttf) format("truetype"), url(/fonts/GT-Sectra-Book.svg#Sectra) format("svg")
}

@font-face {
    font-family: 'Roboto', sans-serif;
    src: url(/fonts/GT-Sectra-Display-Bold.eot);
    src: url(/fonts/GT-Sectra-Display-Bold.eot) format("embedded-opentype"), url(/fonts/GT-Sectra-Display-Bold.woff) format("woff"), url(/fonts/GT-Sectra-Display-Bold.ttf) format("truetype"), url(/fonts/GT-Sectra-Display-Bold.svg#Sectra) format("svg")
}

@font-face {
    font-family: 'Roboto', sans-serif;
    src: url(/fonts/f37ginger-regular-webfont.eot);
    src: url(/fonts/f37ginger-regular-webfont.eot?#iefix) format("embedded-opentype"), url(/fonts/f37ginger-regular-webfont.woff) format("woff"), url(/fonts/f37ginger-regular-webfont.ttf) format("truetype"), url(/fonts/f37ginger-regular-webfont.svg#f37ginger-bold) format("svg");
    font-weight: 400;
    font-style: normal
}

@font-face {
    font-family: 'Ginger Bold';
    src: url(/fonts/f37ginger-bold-webfont.eot);
    src: url(/fonts/f37ginger-bold-webfont.eot?#iefix) format("embedded-opentype"), url(/fonts/f37ginger-bold-webfont.woff) format("woff"), url(/fonts/f37ginger-bold-webfont.ttf) format("truetype"), url(/fonts/f37ginger-bold-webfont.svg#f37ginger-bold) format("svg");
    font-weight: 400;
    font-style: normal
}
*/

@font-face {
    font-family: 'Geogtq-Bold';
    src: url('../fonts/Geogtq-Bd.eot');
    src: local('☺'), url('../fonts/Geogtq-Bd.woff') format('woff'), url('../fonts/Geogtq-Bd.ttf') format('truetype'), url('../fonts/Geogtq-Bd.svg') format('svg');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'Geogtq-RG';
    src: url('../fonts/Geogtq-Rg.eot');
    src: local('☺'), url('../fonts/Geogtq-Rg.woff') format('woff'), url('../fonts/Geogtq-Rg.ttf') format('truetype'), url('../fonts/Geogtq-Rg.svg') format('svg');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'Geogtq-Lg';
    src: url('../fonts/Geogtq-Lg.eot');
    src: local('☺'), url('../fonts/Geogtq-Lg.woff') format('woff'), url('../fonts/Geogtq-Lg.ttf') format('truetype'), url('../fonts/Geogtq-Lg.svg') format('svg');
    font-weight: normal;
    font-style: normal;
}

nav {
    font-family: 'Roboto', sans-serif;
    top: 3.3vw;
    bottom: 3.3vw;
    left: 3.3vw;
    right: 3.3vw;
    height: 0;
    display: box;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -moz-box-orient: horizontal;
    box-orient: horizontal;
    -webkit-flex-direction: row;
    -moz-flex-direction: row;
    flex-direction: row;
    -ms-flex-direction: row;
    -webkit-box-pack: center;
    -moz-box-pack: center;
    box-pack: center;
    -webkit-justify-content: center;
    -moz-justify-content: center;
    -ms-justify-content: center;
    -o-justify-content: center;
    justify-content: center;
    -ms-flex-pack: center
}

nav[data-state=who] .main-nav li:nth-child(2) .wiggle,
nav[data-state=who] .main-nav li:nth-child(2) .wiggle::before,
nav[data-state=what] .main-nav li:nth-child(3) .wiggle,
nav[data-state=what] .main-nav li:nth-child(3) .wiggle::before,
nav[data-state=work] .main-nav li:nth-child(4) .wiggle,
nav[data-state=work] .main-nav li:nth-child(4) .wiggle::before,
nav[data-state=contact] .main-nav li:nth-child(5) .wiggle,
nav[data-state=contact] .main-nav li:nth-child(5) .wiggle::before,
nav[data-state=intro] .main-nav li:nth-child(1) .wiggle,
nav[data-state=intro] .main-nav li:nth-child(1) .wiggle::before {
    -webkit-transform: translateX(0);
    -moz-transform: translateX(0);
    -ms-transform: translateX(0);
    -o-transform: translateX(0);
    transform: translateX(0);
    will-change: transform;
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden
}

nav[data-state=who] .wiggle::before {
    background: url(../img/ui/wiggle-who.svg) center center/7px 3px repeat-x
}

nav[data-state=what] .wiggle::before {
    background: url(../img/ui/wiggle-what.svg) center center/7px 3px repeat-x
}

nav[data-state=work] .wiggle::before {
    background: url(../img/ui/wiggle-work.svg) center center/7px 3px repeat-x
}

nav .back-to-top-arrow-wrap {
    position: absolute;
    left: auto;
    -webkit-transition: .45s cubic-bezier(.52, .01, .16, 1);
    -moz-transition: .45s cubic-bezier(.52, .01, .16, 1);
    transition: .45s cubic-bezier(.52, .01, .16, 1);
    right: -15px;
    will-change: transform;
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
    width: 50px;
    height: 40px;
    margin: -20px 0 0 -25px;
    -webkit-transform: translateY(-100px) rotate(-180deg);
    -moz-transform: translateY(-100px) rotate(-180deg);
    -ms-transform: translateY(-100px) rotate(-180deg);
    -o-transform: translateY(-100px) rotate(-180deg);
    transform: translateY(-100px) rotate(-180deg)
}

nav .back-to-top-arrow-wrap .scroll-arrow {
    position: relative
}

nav .back-to-top-arrow-wrap .scroll-arrow span {
    -webkit-animation: none!important;
    -moz-animation: none!important;
    animation: none!important
}

nav[data-page-scrolled=true] .main-nav a,
nav[data-page-scrolled=true] .nav-contact,
nav[data-state=project] .main-nav a,
nav[data-state=project] .nav-contact {
    -webkit-transform: translateY(-100px);
    -moz-transform: translateY(-100px);
    -ms-transform: translateY(-100px);
    -o-transform: translateY(-100px);
    transform: translateY(-100px)
}

nav[data-page-scrolled=true] .back-to-top-arrow-wrap,
nav[data-state=project] .back-to-top-arrow-wrap {
    -webkit-transition-delay: .8s;
    -moz-transition-delay: .8s;
    transition-delay: .8s
}

nav[data-page-scrolled=true] .back-to-top-arrow-wrap {
    -webkit-transform: translateY(0) rotate(-180deg);
    -moz-transform: translateY(0) rotate(-180deg);
    -ms-transform: translateY(0) rotate(-180deg);
    -o-transform: translateY(0) rotate(-180deg);
    transform: translateY(0) rotate(-180deg)
}

nav .logo {
    position: absolute;
    left: 0;
    top: 0;
    margin: -10px 0 0 -10px;
    -webkit-transform-origin: 0 0;
    -moz-transform-origin: 0 0;
    -ms-transform-origin: 0 0;
    -o-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transition: .45s cubic-bezier(.62, .02, .34, 1);
    -moz-transition: .45s cubic-bezier(.62, .02, .34, 1);
    transition: .45s cubic-bezier(.62, .02, .34, 1)
}

nav .nav-contact {
    position: absolute;
    right: 0
}

nav .nav-contact,
nav .nav-contact a {
    -webkit-transition: .55s cubic-bezier(.52, .01, .16, 1) .7s;
    -moz-transition: .55s cubic-bezier(.52, .01, .16, 1) .7s;
    transition: .55s cubic-bezier(.52, .01, .16, 1) .7s
}

nav[data-active=off] .main-nav li a,
nav[data-active=off] .nav-contact {
    -webkit-transform: translateY(-4px);
    -moz-transform: translateY(-4px);
    -ms-transform: translateY(-4px);
    -o-transform: translateY(-4px);
    transform: translateY(-4px);
    opacity: 0
}

nav .main-nav a,
nav .nav-contact a {
    font-size: 14px;
}

nav .main-nav a {
    font-weight: 900;
    font-size: 18px;
}

.sound-on-off {
    position: fixed;
    width: 26px;
    height: 26px;
    bottom: 45px;
    left: 3vw;
    background: url(../img/ui/sound-icon-white-muted.svg) center center/100% no-repeat;
    -webkit-transition: .27s;
    -moz-transition: .27s;
    transition: .27s
}

html.touchevents .sound-on-off {
    display: none
}

@media only screen and (max-width:800px) {
    .sound-on-off,
    nav .back-to-top-arrow-wrap {
        display: none
    }
}

.sound-on-off span {
    position: absolute;
    left: 30px;
    top: 50%;
    -webkit-transition: .31s;
    -moz-transition: .31s;
    transition: .31s;
    text-align: left;
    white-space: nowrap;
    margin-top: -6px
}

.sound-on-off:hover span {
    opacity: 1
}

.logo[data-color-state=black] .logo-icons li::before,
.logo[data-color-state=white] .logo-icons li::after,
.preloader-shield[data-color-state=black] .logo-icons li::before,
.preloader-shield[data-color-state=white] .logo-icons li::after {
    opacity: 0
}

.sound-on-off.sound-turned-on {
    background: url(../img/ui/sound-icon-white.svg) center center/100% no-repeat
}

body[data-state=intro] .sound-on-off {
    background: url(../img/ui/sound-icon-muted.svg) center center/100% no-repeat
}

body[data-state=intro] .sound-on-off.sound-turned-on {
    background: url(../img/ui/sound-icon.svg) center center/100% no-repeat
}

.sound-on-off[data-active=off] {
    -webkit-transform: translate3d(0, 30px, 0);
    -moz-transform: translate3d(0, 30px, 0);
    -ms-transform: translate3d(0, 30px, 0);
    -o-transform: translate3d(0, 30px, 0);
    transform: translate3d(0, 30px, 0)
}

@media only screen and (max-width:1300px) {
    .sound-on-off {
        bottom: 30px
    }
    .sound-on-off[data-active=off] {
        -webkit-transform: translate3d(0, 15px, 0);
        -moz-transform: translate3d(0, 15px, 0);
        -ms-transform: translate3d(0, 15px, 0);
        -o-transform: translate3d(0, 15px, 0);
        transform: translate3d(0, 15px, 0)
    }
}

.logo-shield-wrap {
    width: 212px;
    height: 80px;
    margin: -22px 0 0 -18px
}

.logo-shield li {
    position: absolute;
    height: 2px
}

.logo-shield li::after,
.logo-shield li::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
    -webkit-transform-origin: 100% 0;
    -moz-transform-origin: 100% 0;
    -ms-transform-origin: 100% 0;
    -o-transform-origin: 100% 0;
    transform-origin: 100% 0
}

.logo-shield li:nth-child(1),
.logo-shield li:nth-child(2) {
    width: 20px;
    -webkit-transform-origin: 0 0;
    -moz-transform-origin: 0 0;
    -ms-transform-origin: 0 0;
    -o-transform-origin: 0 0
}

.logo-shield li::before {
    background-color: #fff
}

.logo-shield li::after {
    background-color: #212121
}

.logo-shield li:nth-child(1) {
    left: 20px;
    top: 1px;
    transform-origin: 0 0;
    -webkit-transform: rotate(160deg);
    -moz-transform: rotate(160deg);
    -ms-transform: rotate(160deg);
    -o-transform: rotate(160deg);
    transform: rotate(160deg)
}

.logo-shield li:nth-child(1)::after,
.logo-shield li:nth-child(1)::before {
    -webkit-transition: -webkit-transform .3s cubic-bezier(.5, 0, .57, 1) 0s;
    -moz-transition: -moz-transform .3s cubic-bezier(.5, 0, .57, 1) 0s;
    transition: transform .3s cubic-bezier(.5, 0, .57, 1) 0s
}

.logo-shield li:nth-child(2) {
    left: 2px;
    top: 6px;
    transform-origin: 0 0;
    -webkit-transform: rotate(90deg);
    -moz-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    -o-transform: rotate(90deg);
    transform: rotate(90deg)
}

.logo-shield li:nth-child(2)::after,
.logo-shield li:nth-child(2)::before {
    -webkit-transition: -webkit-transform .18s linear .25s;
    -moz-transition: -moz-transform .18s linear .25s;
    transition: transform .18s linear .25s
}

.logo-shield li:nth-child(3) {
    left: 2px;
    top: 25px;
    width: 26px;
    -webkit-transform-origin: 0 0;
    -moz-transform-origin: 0 0;
    -ms-transform-origin: 0 0;
    -o-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: rotate(46deg);
    -moz-transform: rotate(46deg);
    -ms-transform: rotate(46deg);
    -o-transform: rotate(46deg);
    transform: rotate(46deg)
}

.logo-shield li:nth-child(4),
.logo-shield li:nth-child(5) {
    right: -1px;
    -webkit-transform-origin: 100% 0;
    -moz-transform-origin: 100% 0;
    -ms-transform-origin: 100% 0;
    -o-transform-origin: 100% 0
}

.logo-shield li:nth-child(3)::after,
.logo-shield li:nth-child(3)::before {
    -webkit-transition: -webkit-transform .1s linear .4s;
    -moz-transition: -moz-transform .1s linear .4s;
    transition: transform .1s linear .4s
}

.logo-shield li:nth-child(4) {
    top: 25px;
    width: 27px;
    transform-origin: 100% 0;
    -webkit-transform: rotate(-46deg);
    -moz-transform: rotate(-46deg);
    -ms-transform: rotate(-46deg);
    -o-transform: rotate(-46deg);
    transform: rotate(-46deg)
}

.logo-shield li:nth-child(4)::after,
.logo-shield li:nth-child(4)::before {
    -webkit-transition: -webkit-transform .1s linear .46s;
    -moz-transition: -moz-transform .1s linear .46s;
    transition: transform .1s linear .46s
}

.logo-shield li:nth-child(5) {
    top: 6px;
    width: 20px;
    transform-origin: 100% 0;
    -webkit-transform: rotate(-90deg);
    -moz-transform: rotate(-90deg);
    -ms-transform: rotate(-90deg);
    -o-transform: rotate(-90deg);
    transform: rotate(-90deg)
}

.logo-shield li:nth-child(5)::after,
.logo-shield li:nth-child(5)::before {
    -webkit-transition: -webkit-transform .18s linear .55s;
    -moz-transition: -moz-transform .18s linear .55s;
    transition: transform .18s linear .55s
}

.logo-shield li:nth-child(6) {
    right: 17px;
    top: 1px;
    width: 20px;
    -webkit-transform-origin: 100% 0;
    -moz-transform-origin: 100% 0;
    -ms-transform-origin: 100% 0;
    -o-transform-origin: 100% 0;
    transform-origin: 100% 0;
    -webkit-transform: rotate(-160deg);
    -moz-transform: rotate(-160deg);
    -ms-transform: rotate(-160deg);
    -o-transform: rotate(-160deg);
    transform: rotate(-160deg)
}

.logo-icons li,
.logo-icons li::after,
.logo-icons li::before,
.preloader-shield .tf,
.preloader-shield .tf::before {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.logo-shield li:nth-child(6)::after,
.logo-shield li:nth-child(6)::before {
    -webkit-transition: -webkit-transform .35s cubic-bezier(.62, .02, .34, 1) .65s;
    -moz-transition: -moz-transform .35s cubic-bezier(.62, .02, .34, 1) .65s;
    transition: transform .35s cubic-bezier(.62, .02, .34, 1) .65s
}

.logo-icons li::after,
.logo-icons li::before {
    content: '';
    -webkit-transition: .45s cubic-bezier(.62, .02, .34, 1) .5s;
    -moz-transition: .45s cubic-bezier(.62, .02, .34, 1) .5s;
    transition: .45s cubic-bezier(.62, .02, .34, 1) .5s
}

.logo-icons li:nth-child(1)::before {
    background: url(../img/ui/logo/tf-white.svg) center center/100% no-repeat
}

.logo-icons li:nth-child(1)::after {
    background: url(../img/ui/logo/tf-black.svg) center center/100% no-repeat
}

.logo[data-color-state=black] .logo-shield li::before,
.preloader-shield[data-color-state=black] .logo-shield li::before {
    -webkit-transform: scaleX(0);
    -moz-transform: scaleX(0);
    -ms-transform: scaleX(0);
    -o-transform: scaleX(0);
    transform: scaleX(0)
}

.logo[data-color-state=black] .logo-shield li::after,
.preloader-shield[data-color-state=black] .logo-shield li::after {
    -webkit-transform-origin: 0 0;
    -moz-transform-origin: 0 0;
    -ms-transform-origin: 0 0;
    -o-transform-origin: 0 0;
    transform-origin: 0 0
}

.logo[data-color-state=white] .logo-shield li::after,
.preloader-shield[data-color-state=white] .logo-shield li::after {
    -webkit-transform: scaleX(0);
    -moz-transform: scaleX(0);
    -ms-transform: scaleX(0);
    -o-transform: scaleX(0);
    transform: scaleX(0)
}

.logo[data-color-state=white] .logo-shield li::before,
.preloader-shield[data-color-state=white] .logo-shield li::before {
    -webkit-transform-origin: 0 0;
    -moz-transform-origin: 0 0;
    -ms-transform-origin: 0 0;
    -o-transform-origin: 0 0;
    transform-origin: 0 0
}

.logo[data-color-state=off] .logo-shield li::after,
.logo[data-color-state=off] .logo-shield li::before,
.preloader-shield[data-color-state=off] .logo-shield li::after,
.preloader-shield[data-color-state=off] .logo-shield li::before {
    -webkit-transform: scaleX(0);
    -moz-transform: scaleX(0);
    -ms-transform: scaleX(0);
    -o-transform: scaleX(0);
    transform: scaleX(0)
}

.preloader-shield {
    -webkit-transform-origin: 50% 50%;
    -moz-transform-origin: 50% 50%;
    -ms-transform-origin: 50% 50%;
    -o-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    -webkit-transform: scale(1.9);
    -moz-transform: scale(1.9);
    -ms-transform: scale(1.9);
    -o-transform: scale(1.9);
    transform: scale(1.9)
}

@media (-webkit-max-device-pixel-ratio:1.5) {
    .preloader-shield {
        -webkit-transform: scale(1.3);
        -moz-transform: scale(1.3);
        -ms-transform: scale(1.3);
        -o-transform: scale(1.3);
        transform: scale(1.3)
    }
}

.preloader-shield.between-content {
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -ms-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1)
}

.preloader-shield.between-content .tf {
    display: none
}

.preloader-shield .logo-shield {
    margin-top: -30px;
    width: 200px;
    height: 200px;
    left: -18%;
}

.preloader-shield .logo-shield li::before {
    background-color: transparent
}

.preloader-shield .tf::before {
    background: url(../img/ui/logo/tf-white.svg) center center/100% no-repeat;
    content: '';
    -webkit-transition: .45s cubic-bezier(.62, .02, .34, 1) .1s;
    -moz-transition: .45s cubic-bezier(.62, .02, .34, 1) .1s;
    transition: .45s cubic-bezier(.62, .02, .34, 1) .1s
}

.preloader-shield[data-active=off] .logo-shield li::after,
.preloader-shield[data-active=off] .logo-shield li::before {
    -webkit-transform-origin: 100% 0;
    -moz-transform-origin: 100% 0;
    -ms-transform-origin: 100% 0;
    -o-transform-origin: 100% 0;
    transform-origin: 100% 0;
    -webkit-transform: scaleX(0);
    -moz-transform: scaleX(0);
    -ms-transform: scaleX(0);
    -o-transform: scaleX(0);
    transform: scaleX(0)
}

.preloader-shield[data-active=off] .logo-shield li:nth-child(1)::after,
.preloader-shield[data-active=off] .logo-shield li:nth-child(1)::before {
    -webkit-transition-duration: 80ms;
    -moz-transition-duration: 80ms;
    transition-duration: 80ms;
    -webkit-transition-delay: 0s;
    -moz-transition-delay: 0s;
    transition-delay: 0s
}

.preloader-shield[data-active=off] .logo-shield li:nth-child(2)::after,
.preloader-shield[data-active=off] .logo-shield li:nth-child(2)::before {
    -webkit-transition-duration: 80ms;
    -moz-transition-duration: 80ms;
    transition-duration: 80ms;
    -webkit-transition-delay: 80ms;
    -moz-transition-delay: 80ms;
    transition-delay: 80ms
}

.preloader-shield[data-active=off] .logo-shield li:nth-child(3)::after,
.preloader-shield[data-active=off] .logo-shield li:nth-child(3)::before {
    -webkit-transition-duration: 80ms;
    -moz-transition-duration: 80ms;
    transition-duration: 80ms;
    -webkit-transition-delay: .16s;
    -moz-transition-delay: .16s;
    transition-delay: .16s
}

.preloader-shield[data-active=off] .logo-shield li:nth-child(4)::after,
.preloader-shield[data-active=off] .logo-shield li:nth-child(4)::before {
    -webkit-transition-duration: 80ms;
    -moz-transition-duration: 80ms;
    transition-duration: 80ms;
    -webkit-transition-delay: .24s;
    -moz-transition-delay: .24s;
    transition-delay: .24s
}

.preloader-shield[data-active=off] .logo-shield li:nth-child(5)::after,
.preloader-shield[data-active=off] .logo-shield li:nth-child(5)::before {
    -webkit-transition-duration: 80ms;
    -moz-transition-duration: 80ms;
    transition-duration: 80ms;
    -webkit-transition-delay: .32s;
    -moz-transition-delay: .32s;
    transition-delay: .32s
}

.preloader-shield[data-active=off] .logo-shield li:nth-child(6)::after,
.preloader-shield[data-active=off] .logo-shield li:nth-child(6)::before {
    -webkit-transition-duration: 80ms;
    -moz-transition-duration: 80ms;
    transition-duration: 80ms;
    -webkit-transition-delay: .4s;
    -moz-transition-delay: .4s;
    transition-delay: .4s
}

.preloader-shield[data-active=off] .tf::before {
    -webkit-transform: scale(.8);
    -moz-transform: scale(.8);
    -ms-transform: scale(.8);
    -o-transform: scale(.8);
    transform: scale(.8);
    opacity: 0
}

body[data-state=intro] .preloader-shield .logo-shield li::after {
    background-color: #fffade
}

body[data-state=who] .preloader-shield .logo-shield li::after {
    background-color: #96ffca
}

body[data-state=what] .preloader-shield .logo-shield li::after {
    background-color: #fff55a
}

body[data-state=work] .preloader-shield .logo-shield li::after {
    background-color: #fbe10f
}

body[data-state=project] .preloader-shield .logo-shield li::before {
    background-color: #fff
}

body[data-state=project] .preloader-shield .logo-shield li::after {
    background-color: #c8c8d2
}

body[data-state=project] .preloader-shield .tf {
    opacity: .78
}

body[data-state=project] .preloader-shield .tf::before {
    background: url(../img/ui/logo/tf-black.svg) center center/100% no-repeat
}

.main-nav {
    -webkit-transition: .75s cubic-bezier(.52, .01, .16, 1) .5s;
    -moz-transition: .75s cubic-bezier(.52, .01, .16, 1) .5s;
    transition: .75s cubic-bezier(.52, .01, .16, 1) .5s
}

.main-nav li {
    margin: 0 1vw;
    margin-top: 12px;
}

.main-nav li a{font-family: 'Roboto' !important;
    font-weight: 300;}

.main-nav li:nth-child(1) a {
    -webkit-transition: .39s cubic-bezier(.52, .01, .16, 1) .48s;
    -moz-transition: .39s cubic-bezier(.52, .01, .16, 1) .48s;
    transition: .39s cubic-bezier(.52, .01, .16, 1) .48s
}

.main-nav li:nth-child(2) a {
    -webkit-transition: .57s cubic-bezier(.52, .01, .16, 1) .61s;
    -moz-transition: .57s cubic-bezier(.52, .01, .16, 1) .61s;
    transition: .57s cubic-bezier(.52, .01, .16, 1) .61s
}

.main-nav li:nth-child(3) a {
    -webkit-transition: .75s cubic-bezier(.52, .01, .16, 1) .74s;
    -moz-transition: .75s cubic-bezier(.52, .01, .16, 1) .74s;
    transition: .75s cubic-bezier(.52, .01, .16, 1) .74s
}

.main-nav li:nth-child(4) a {
    -webkit-transition: .93s cubic-bezier(.52, .01, .16, 1) .87s;
    -moz-transition: .93s cubic-bezier(.52, .01, .16, 1) .87s;
    transition: .93s cubic-bezier(.52, .01, .16, 1) .87s
}

.main-nav li:nth-child(5) a {
    -webkit-transition: 1.11s cubic-bezier(.52, .01, .16, 1) 1s;
    -moz-transition: 1.11s cubic-bezier(.52, .01, .16, 1) 1s;
    transition: 1.11s cubic-bezier(.52, .01, .16, 1) 1s
}

.mob-nav {
    z-index: 220
}

.mob-nav-btn {
    position: fixed;
    top: 20px;
    right: 25px;
    width: 50px;
    height: 50px;
    z-index: 300;
    -webkit-transition: .32s;
    -moz-transition: .32s;
    transition: .32s
}

.mob-nav-btn::after,
.mob-nav-btn::before {
    content: '';
    position: absolute;
    height: 2px;
    width: 60%;
    left: 20%;
    top: 50%;
    margin-top: -1px;
    background-color: #212121;
    -webkit-transition: .29s cubic-bezier(.52, .01, .16, 1);
    -moz-transition: .29s cubic-bezier(.52, .01, .16, 1);
    transition: .29s cubic-bezier(.52, .01, .16, 1)
}

.mob-nav-btn::before {
    -webkit-transform: rotate(0) translateY(-5px);
    -moz-transform: rotate(0) translateY(-5px);
    -ms-transform: rotate(0) translateY(-5px);
    -o-transform: rotate(0) translateY(-5px);
    transform: rotate(0) translateY(-5px)
}

.mob-nav-btn::after {
    -webkit-transform: rotate(0) translateY(5px);
    -moz-transform: rotate(0) translateY(5px);
    -ms-transform: rotate(0) translateY(5px);
    -o-transform: rotate(0) translateY(5px);
    transform: rotate(0) translateY(5px)
}

@media only screen and (min-width:760px) {
    .mob-nav-btn {
        display: none
    }
}

body[data-state=who] .mob-nav-btn::after,
body[data-state=who] .mob-nav-btn::before,
body[data-state=what] .mob-nav-btn::after,
body[data-state=what] .mob-nav-btn::before,
body[data-state=work] .mob-nav-btn::after,
body[data-state=work] .mob-nav-btn::before {
    background-color: #fff
}

.mob-nav-btn[data-mob-nav-on=on]::after,
.mob-nav-btn[data-mob-nav-on=on]::before,
body[data-state=who] .mob-nav-btn[data-mob-nav-on=on]::after,
body[data-state=who] .mob-nav-btn[data-mob-nav-on=on]::before,
body[data-state=what] .mob-nav-btn[data-mob-nav-on=on]::after,
body[data-state=what] .mob-nav-btn[data-mob-nav-on=on]::before,
body[data-state=work] .mob-nav-btn[data-mob-nav-on=on]::after,
body[data-state=work] .mob-nav-btn[data-mob-nav-on=on]::before {
    background-color: #212121
}

body[data-state=project] .mob-nav-btn {
    opacity: 0;
    pointer-events: none
}

.mob-nav-btn[data-mob-nav-on=on]::before {
    -webkit-transform: rotate(45deg) translateY(0);
    -moz-transform: rotate(45deg) translateY(0);
    -ms-transform: rotate(45deg) translateY(0);
    -o-transform: rotate(45deg) translateY(0);
    transform: rotate(45deg) translateY(0)
}

.mob-nav-btn[data-mob-nav-on=on]::after {
    -webkit-transform: rotate(-45deg) translateY(0);
    -moz-transform: rotate(-45deg) translateY(0);
    -ms-transform: rotate(-45deg) translateY(0);
    -o-transform: rotate(-45deg) translateY(0);
    transform: rotate(-45deg) translateY(0)
}

.mob-nav {
    position: fixed;
    top: 14px;
    left: 14px;
    right: 14px;
    bottom: 14px;
    background-color: #FFF;
    -webkit-transition: .55s cubic-bezier(.52, .01, .16, 1);
    -moz-transition: .55s cubic-bezier(.52, .01, .16, 1);
    transition: .55s cubic-bezier(.52, .01, .16, 1)
}

.mob-nav::after,
.mob-nav::before {
    top: 0;
    height: 100%;
    z-index: 0;
    content: ''
}

.mob-nav::after,
.mob-nav::before,
.page-bg li {
    position: absolute;
    left: 0;
    width: 100%
}

.mob-nav::before {
    opacity: 1;
    -webkit-transition: .45s linear .55s;
    -moz-transition: .45s linear .55s;
    transition: .45s linear .55s;
    -webkit-transform: scaleX(1.2) scaleY(1.2);
    -moz-transform: scaleX(1.2) scaleY(1.2);
    -ms-transform: scaleX(1.2) scaleY(1.2);
    -o-transform: scaleX(1.2) scaleY(1.2);
    transform: scaleX(1.2) scaleY(1.2)
}

body[data-state=intro] .mob-nav::before {
    background-color: #000;
}

body[data-state=who] .mob-nav::before {
    background-color: #000
}

body[data-state=what] .mob-nav::before {
    background-color: #000
}

body[data-state=work] .mob-nav::before {
    background-color: #000
}

.mob-nav::after {
    background-color: #fff;
    -webkit-transition: .65s cubic-bezier(.7, .3, 0, 1);
    -moz-transition: .65s cubic-bezier(.7, .3, 0, 1);
    transition: .65s cubic-bezier(.7, .3, 0, 1);
    -webkit-transform: scaleY(1);
    -moz-transform: scaleY(1);
    -ms-transform: scaleY(1);
    -o-transform: scaleY(1);
    transform: scaleY(1)
}

.mob-nav>div,
header {
    z-index: 2
}

.mob-nav .ledge {
    top: auto;
    bottom: 30%
}

.mob-nav .ledge::before {
    background-color: rgba(0, 0, 0, .03)
}

.mob-nav .social-list li {
    margin: 0 11px
}

.mob-nav>div:nth-child(1) {
    height: 80%
}

.mob-nav>div:nth-child(1) ul {
    height: 50%;
    top: 25%;
    position: absolute;
    width: 100%;
    display: box;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -moz-box-orient: vertical;
    box-orient: vertical;
    -webkit-flex-direction: column;
    -moz-flex-direction: column;
    flex-direction: column;
    -ms-flex-direction: column;
    -webkit-box-pack: center;
    -moz-box-pack: center;
    box-pack: center;
    -webkit-justify-content: center;
    -moz-justify-content: center;
    -ms-justify-content: center;
    -o-justify-content: center;
    justify-content: center;
    -ms-flex-pack: center
}

.mob-nav>div:nth-child(1) ul li {
    height: 100%;
    display: -webkit-box;
    display: -moz-box;
    display: box;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -moz-box-orient: vertical;
    box-orient: vertical;
    -webkit-flex-direction: column;
    -moz-flex-direction: column;
    flex-direction: column;
    -ms-flex-direction: column;
    -webkit-box-pack: center;
    -moz-box-pack: center;
    box-pack: center;
    -webkit-justify-content: center;
    -moz-justify-content: center;
    -ms-justify-content: center;
    -o-justify-content: center;
    justify-content: center;
    -ms-flex-pack: center
}

.mob-nav>div:nth-child(1) ul li a {
    text-transform: uppercase;
    font-size: 16px
}

.mob-nav>div:nth-child(2) {
    height: 20%
}

.mob-nav>div:nth-child(2) h3 {
    padding-bottom: 0;
    margin-bottom: 0
}

.mob-nav[data-active=off] {
    opacity: 0
}

@media only screen and (max-width:760px) {
    .main-nav,
    .nav-contact {
        display: none
    }
}

.page-bg li {
    top: 0;
    height: 100%;
    -webkit-transition: 1.25s cubic-bezier(.52, .01, .16, 1) .3s;
    -moz-transition: 1.25s cubic-bezier(.52, .01, .16, 1) .3s;
    transition: 1.25s cubic-bezier(.52, .01, .16, 1) .3s
}

.page-bg .horizon-bg {
    -webkit-transition: opacity .7s cubic-bezier(.52, .01, .16, 1), -webkit-transform 1.25s cubic-bezier(.62, .02, .34, 1);
    -moz-transition: opacity .7s cubic-bezier(.52, .01, .16, 1), -moz-transform 1.25s cubic-bezier(.62, .02, .34, 1);
    transition: opacity .7s cubic-bezier(.52, .01, .16, 1), transform 1.25s cubic-bezier(.62, .02, .34, 1)
}

.page-bg[data-preloading=on] .horizon-bg {
    -webkit-transform-origin: 0 100%;
    -moz-transform-origin: 0 100%;
    -ms-transform-origin: 0 100%;
    -o-transform-origin: 0 100%;
    transform-origin: 0 100%;
    -webkit-transform: scaleY(1.4);
    -moz-transform: scaleY(1.4);
    -ms-transform: scaleY(1.4);
    -o-transform: scaleY(1.4);
    transform: scaleY(1.4);
    opacity: 0
}

.page-bg[data-active=off] .horizon-bg {
    opacity: 0
}

.page-bg li:nth-child(1) {
    background-color: #101010
}

.page-bg li:nth-child(1) .horizon-bg {
    background: url(../img/bg/horizon-intro.jpg) center center/cover no-repeat
}

.page-bg li:nth-child(2) {
    background-color: #101010
}

.page-bg li:nth-child(2) .horizon-bg {
    background: url(../img/bg/horizon-who.jpg) center center/cover no-repeat
}

.page-bg li:nth-child(3) {
    background-color: #07933d
}

.page-bg li:nth-child(3) .horizon-bg {
    background: url(../img/bg/horizon-what.jpg) center center/cover no-repeat
}

.page-bg li:nth-child(4) {
    background-color: #07933d
}

.page-bg li:nth-child(4) .horizon-bg {
    background: url(../img/bg/horizon-work.jpg) center center/cover no-repeat
}

.page-bg li:nth-child(5) {
    background-color: #fff
}

.page-bg[data-state=intro] li:nth-child(1) {
    -webkit-transform: translateX(0);
    -moz-transform: translateX(0);
    -ms-transform: translateX(0);
    -o-transform: translateX(0);
    transform: translateX(0)
}

.page-bg[data-state=intro] li:nth-child(2),
.page-bg[data-state=intro] li:nth-child(3),
.page-bg[data-state=intro] li:nth-child(4),
.page-bg[data-state=intro] li:nth-child(5) {
    -webkit-transform: translateX(100%);
    -moz-transform: translateX(100%);
    -ms-transform: translateX(100%);
    -o-transform: translateX(100%);
    transform: translateX(100%)
}

.page-bg[data-state=who] li:nth-child(1) {
    -webkit-transform: translateX(-100%);
    -moz-transform: translateX(-100%);
    -ms-transform: translateX(-100%);
    -o-transform: translateX(-100%);
    transform: translateX(-100%)
}

.page-bg[data-state=who] li:nth-child(2) {
    -webkit-transform: translateX(0);
    -moz-transform: translateX(0);
    -ms-transform: translateX(0);
    -o-transform: translateX(0);
    transform: translateX(0)
}

.page-bg[data-state=who] li:nth-child(3),
.page-bg[data-state=who] li:nth-child(4),
.page-bg[data-state=who] li:nth-child(5) {
    -webkit-transform: translateX(100%);
    -moz-transform: translateX(100%);
    -ms-transform: translateX(100%);
    -o-transform: translateX(100%);
    transform: translateX(100%)
}

.page-bg[data-state=what] li:nth-child(1),
.page-bg[data-state=what] li:nth-child(2) {
    -webkit-transform: translateX(-100%);
    -moz-transform: translateX(-100%);
    -ms-transform: translateX(-100%);
    -o-transform: translateX(-100%);
    transform: translateX(-100%)
}

.page-bg[data-state=what] li:nth-child(3) {
    -webkit-transform: translateX(0);
    -moz-transform: translateX(0);
    -ms-transform: translateX(0);
    -o-transform: translateX(0);
    transform: translateX(0)
}

.page-bg[data-state=what] li:nth-child(4),
.page-bg[data-state=what] li:nth-child(5) {
    -webkit-transform: translateX(100%);
    -moz-transform: translateX(100%);
    -ms-transform: translateX(100%);
    -o-transform: translateX(100%);
    transform: translateX(100%)
}

.page-bg[data-state=work] li:nth-child(1),
.page-bg[data-state=work] li:nth-child(2),
.page-bg[data-state=work] li:nth-child(3) {
    -webkit-transform: translateX(-100%);
    -moz-transform: translateX(-100%);
    -ms-transform: translateX(-100%);
    -o-transform: translateX(-100%);
    transform: translateX(-100%)
}

.page-bg[data-state=work] li:nth-child(4) {
    -webkit-transform: translateX(0);
    -moz-transform: translateX(0);
    -ms-transform: translateX(0);
    -o-transform: translateX(0);
    transform: translateX(0)
}

.page-bg[data-state=work] li:nth-child(5) {
    -webkit-transform: translateX(100%);
    -moz-transform: translateX(100%);
    -ms-transform: translateX(100%);
    -o-transform: translateX(100%);
    transform: translateX(100%)
}

.page-bg[data-state=project] li:nth-child(1),
.page-bg[data-state=project] li:nth-child(2),
.page-bg[data-state=project] li:nth-child(3),
.page-bg[data-state=project] li:nth-child(4) {
    -webkit-transform: translateX(-100%);
    -moz-transform: translateX(-100%);
    -ms-transform: translateX(-100%);
    -o-transform: translateX(-100%);
    transform: translateX(-100%)
}

.page-bg[data-state=project] li:nth-child(5) {
    -webkit-transform: translateX(0);
    -moz-transform: translateX(0);
    -ms-transform: translateX(0);
    -o-transform: translateX(0);
    transform: translateX(0)
}

@media only screen and (max-width:800px) {
    header {
        z-index: 0
    }
}

header[data-state=intro] {
    z-index: 0
}

.figures-wrap {
    width: 0;
    height: 0;
    -webkit-perspective: 1000px;
    -moz-perspective: 1000px;
    perspective: 1000px;
    opacity: 1;
    -webkit-transition: .75s cubic-bezier(.52, .01, .16, 1);
    -moz-transition: .75s cubic-bezier(.52, .01, .16, 1);
    transition: .75s cubic-bezier(.52, .01, .16, 1);
    -webkit-filter: blur(0)
}

.figures-wrap[data-active=off]:not(.force-on) {
    opacity: 0;
    -webkit-transform: scale(.95);
    -moz-transform: scale(.95);
    -ms-transform: scale(.95);
    -o-transform: scale(.95);
    transform: scale(.95);
    -webkit-transition: .75s cubic-bezier(.52, .01, .16, 1);
    -moz-transition: .75s cubic-bezier(.52, .01, .16, 1);
    transition: .75s cubic-bezier(.52, .01, .16, 1)
}

.figures-wrap[data-scaled=on] {
    opacity: 0;
    -webkit-transform: scale(1.11);
    -moz-transform: scale(1.11);
    -ms-transform: scale(1.11);
    -o-transform: scale(1.11);
    transform: scale(1.11)
}

.figures-wrap[data-scaled=slow-off] {
    -webkit-transition: 1.9s cubic-bezier(.52, .01, .16, 1);
    -moz-transition: 1.9s cubic-bezier(.52, .01, .16, 1);
    transition: 1.9s cubic-bezier(.52, .01, .16, 1)
}

.figure-mover {
    -webkit-transition: -webkit-transform 1.85s cubic-bezier(.52, .01, .16, 1), opacity 10ms 1s;
    -moz-transition: -moz-transform 1.85s cubic-bezier(.52, .01, .16, 1), opacity 10ms 1s;
    transition: transform 1.85s cubic-bezier(.52, .01, .16, 1), opacity 10ms 1s;
    -webkit-perspective: 500px;
    -moz-perspective: 500px;
    perspective: 500px
}

header[data-state=intro] .intro-figures {
    -webkit-transform: translateX(0);
    -moz-transform: translateX(0);
    -ms-transform: translateX(0);
    -o-transform: translateX(0);
    transform: translateX(0);
    -webkit-transition: -webkit-transform 1.85s cubic-bezier(.52, .01, .16, 1), opacity 10ms 0s;
    -moz-transition: -moz-transform 1.85s cubic-bezier(.52, .01, .16, 1), opacity 10ms 0s;
    transition: transform 1.85s cubic-bezier(.52, .01, .16, 1), opacity 10ms 0s
}

header[data-state=who] .who-figures,
header[data-state=what] .what-figures {
    -webkit-transition: -webkit-transform 1.85s cubic-bezier(.52, .01, .16, 1), opacity 10ms 0s;
    -moz-transition: -moz-transform 1.85s cubic-bezier(.52, .01, .16, 1), opacity 10ms 0s
}

header[data-state=intro] .what-figures,
header[data-state=intro] .who-figures,
header[data-state=intro] .work-figures {
    -webkit-transform: translateX(140vw) rotateY(-40deg) scale(1.3) translateY(30%);
    -moz-transform: translateX(140vw) rotateY(-40deg) scale(1.3) translateY(30%);
    -ms-transform: translateX(140vw) rotateY(-40deg) scale(1.3) translateY(30%);
    -o-transform: translateX(140vw) rotateY(-40deg) scale(1.3) translateY(30%);
    transform: translateX(140vw) rotateY(-40deg) scale(1.3) translateY(30%);
    opacity: 0
}

header[data-state=who] .intro-figures {
    -webkit-transform: translateX(-140vw) rotateY(40deg) scale(1.3) translateY(30%);
    -moz-transform: translateX(-140vw) rotateY(40deg) scale(1.3) translateY(30%);
    -ms-transform: translateX(-140vw) rotateY(40deg) scale(1.3) translateY(30%);
    -o-transform: translateX(-140vw) rotateY(40deg) scale(1.3) translateY(30%);
    transform: translateX(-140vw) rotateY(40deg) scale(1.3) translateY(30%);
    opacity: 0
}

header[data-state=who] .who-figures {
    -webkit-transform: translateX(0);
    -moz-transform: translateX(0);
    -ms-transform: translateX(0);
    -o-transform: translateX(0);
    transform: translateX(0);
    transition: transform 1.85s cubic-bezier(.52, .01, .16, 1), opacity 10ms 0s
}

header[data-state=who] .what-figures,
header[data-state=who] .work-figures {
    -webkit-transform: translateX(140vw) rotateY(-40deg) scale(1.3) translateY(30%);
    -moz-transform: translateX(140vw) rotateY(-40deg) scale(1.3) translateY(30%);
    -ms-transform: translateX(140vw) rotateY(-40deg) scale(1.3) translateY(30%);
    -o-transform: translateX(140vw) rotateY(-40deg) scale(1.3) translateY(30%);
    transform: translateX(140vw) rotateY(-40deg) scale(1.3) translateY(30%);
    opacity: 0
}

header[data-state=what] .intro-figures,
header[data-state=what] .who-figures {
    -webkit-transform: translateX(-140vw) rotateY(40deg) scale(1.3) translateY(30%);
    -moz-transform: translateX(-140vw) rotateY(40deg) scale(1.3) translateY(30%);
    -ms-transform: translateX(-140vw) rotateY(40deg) scale(1.3) translateY(30%);
    -o-transform: translateX(-140vw) rotateY(40deg) scale(1.3) translateY(30%);
    transform: translateX(-140vw) rotateY(40deg) scale(1.3) translateY(30%);
    opacity: 0
}

header[data-state=what] .what-figures {
    -webkit-transform: translateX(0);
    -moz-transform: translateX(0);
    -ms-transform: translateX(0);
    -o-transform: translateX(0);
    transform: translateX(0);
    transition: transform 1.85s cubic-bezier(.52, .01, .16, 1), opacity 10ms 0s
}

header[data-state=what] .work-figures {
    -webkit-transform: translateX(140vw) rotateY(-40deg) scale(1.3) translateY(30%);
    -moz-transform: translateX(140vw) rotateY(-40deg) scale(1.3) translateY(30%);
    -ms-transform: translateX(140vw) rotateY(-40deg) scale(1.3) translateY(30%);
    -o-transform: translateX(140vw) rotateY(-40deg) scale(1.3) translateY(30%);
    transform: translateX(140vw) rotateY(-40deg) scale(1.3) translateY(30%);
    opacity: 0
}

header[data-state=work] .intro-figures,
header[data-state=work] .what-figures,
header[data-state=work] .who-figures {
    -webkit-transform: translateX(-140vw) rotateY(40deg) scale(1.3) translateY(30%);
    -moz-transform: translateX(-140vw) rotateY(40deg) scale(1.3) translateY(30%);
    -ms-transform: translateX(-140vw) rotateY(40deg) scale(1.3) translateY(30%);
    -o-transform: translateX(-140vw) rotateY(40deg) scale(1.3) translateY(30%);
    transform: translateX(-140vw) rotateY(40deg) scale(1.3) translateY(30%);
    opacity: 0
}

header[data-state=work] .work-figures {
    -webkit-transform: translateX(0);
    -moz-transform: translateX(0);
    -ms-transform: translateX(0);
    -o-transform: translateX(0);
    transform: translateX(0);
    -webkit-transition: -webkit-transform 1.85s cubic-bezier(.52, .01, .16, 1), opacity 10ms 0s;
    -moz-transition: -moz-transform 1.85s cubic-bezier(.52, .01, .16, 1), opacity 10ms 0s;
    transition: transform 1.85s cubic-bezier(.52, .01, .16, 1), opacity 10ms 0s
}

header[data-state=project] .intro-figures,
header[data-state=project] .what-figures,
header[data-state=project] .who-figures,
header[data-state=project] .work-figures {
    -webkit-transform: translateX(-140vw) rotateY(40deg) scale(1.3) translateY(30%);
    -moz-transform: translateX(-140vw) rotateY(40deg) scale(1.3) translateY(30%);
    -ms-transform: translateX(-140vw) rotateY(40deg) scale(1.3) translateY(30%);
    -o-transform: translateX(-140vw) rotateY(40deg) scale(1.3) translateY(30%);
    transform: translateX(-140vw) rotateY(40deg) scale(1.3) translateY(30%);
    opacity: 0
}

.figures {
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
    width: 1400px;
    height: 950px;
    margin: -475px 0 0 -700px
}

@media only screen and (max-width:1400px) {
    .figures {
        width: 100vw;
        height: 67.85714vw;
        margin: -33.92857vw 0 0 -50vw
    }
}

@media only screen and (max-width:700px) {
    .figures {
        width: 150vw;
        height: 101.78571vw;
        margin: -50.89286vw 0 0 -75vw
    }
}

.intro-figures .figures {
    background: url('../img/figures/tinified/intro-figures.png') center center/100% no-repeat
}

.who-figures .figures {
    background: url('../img/figures/tinified/who-figures.png') center center/100% no-repeat
}

.what-figures .figures-jonny {
    background: url('../img/figures/what-figures-jonny.png') center center/100% no-repeat
}

.what-figures .figures-leigh {
    background: url('../img/figures/what-figures-leigh.png') center center/100% no-repeat
}

.work-figures .figures {
    background: url('../img/figures/tinified/work-figures.png') center center/100% no-repeat
}

.contact-modal {
    position: fixed;
    top: 2vw;
    left: 2vw;
    right: 2vw;
    bottom: 2vw;
    display: none
}

.contact-modal .ledge {
    top: auto;
    bottom: 30%;
    -webkit-transition: .35s .6s;
    -moz-transition: .35s .6s;
    transition: .35s .6s
}

.contact-modal .contact-modal-content,
.contact-modal::after,
.contact-modal::before {
    top: 0;
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0
}

.contact-modal .ledge::before {
    background-color: rgba(0, 0, 0, .03)
}

.contact-modal::after {
    content: '';
    background-color: #fff;
    background: url('../img/birkan-batuk.jpg') no-repeat center center fixed;
    -webkit-transition: .65s cubic-bezier(.7, .3, 0, 1);
    -moz-transition: .65s cubic-bezier(.7, .3, 0, 1);
    transition: .65s cubic-bezier(.7, .3, 0, 1);
    -webkit-transform: scaleY(1);
    -moz-transform: scaleY(1);
    -ms-transform: scaleY(1);
    -o-transform: scaleY(1);
    transform: scaleY(1);
    z-index: 0;
    opacity: .5;
}

.contact-modal::before {
    content: '';
    opacity: 1;
    -webkit-transition: .45s linear .55s;
    -moz-transition: .45s linear .55s;
    transition: .45s linear .55s;
    -webkit-transform: scaleX(1.2) scaleY(1.2);
    -moz-transform: scaleX(1.2) scaleY(1.2);
    -ms-transform: scaleX(1.2) scaleY(1.2);
    -o-transform: scaleX(1.2) scaleY(1.2);
    transform: scaleX(1.2) scaleY(1.2);
    z-index: 0
}

body[data-state=intro] .contact-modal::before {
    background-color: #07933d;
}

body[data-state=who] .contact-modal::before {
    background-color: #07933d;
}

body[data-state=what] .contact-modal::before {
    background-color: #07933d;
}

body[data-state=work] .contact-modal::before {
    background-color: #07933d;
}

.contact-modal>* {
    z-index: 10
}

.contact-modal .huge-text:hover {
    
}

.contact-modal .contact-modal-content {
    display: -webkit-box;
    display: -moz-box;
    display: box;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -moz-box-pack: center;
    box-pack: center;
    -webkit-justify-content: center;
    -moz-justify-content: center;
    -ms-justify-content: center;
    -o-justify-content: center;
    justify-content: center;
    -ms-flex-pack: center;
    -webkit-box-orient: vertical;
    -moz-box-orient: vertical;
    box-orient: vertical;
    -webkit-flex-direction: column;
    -moz-flex-direction: column;
    flex-direction: column;
    -ms-flex-direction: column;
    margin-top: -2.5%;
    color: #212121;
}

.contact-modal .close,
.contact-modal .contact-modal-content,
.contact-modal .contact-social {
    -webkit-transition: .55s cubic-bezier(.52, .01, .16, 1) .4s;
    -moz-transition: .55s cubic-bezier(.52, .01, .16, 1) .4s;
    transition: .55s cubic-bezier(.52, .01, .16, 1) .4s
}

.contact-modal h3 {
    color: #fff;
    margin-bottom: 0;
    padding-bottom: 0
}

.contact-modal[data-active=off]::before {
    opacity: 0;
    -webkit-transition: .45s linear 0s;
    -moz-transition: .45s linear 0s;
    transition: .45s linear 0s
}

.contact-modal[data-active=off]::after {
    -webkit-transform: scaleY(0);
    -moz-transform: scaleY(0);
    -ms-transform: scaleY(0);
    -o-transform: scaleY(0);
    transform: scaleY(0)
}

.contact-modal[data-active=off] .ledge {
    opacity: 0;
    -webkit-transition-delay: 0s;
    -moz-transition-delay: 0s;
    transition-delay: 0s
}

.contact-modal[data-active=off] .close,
.contact-modal[data-active=off] .contact-modal-content,
.contact-modal[data-active=off] .contact-social {
    opacity: 0;
    -webkit-transform: translateY(20px);
    -moz-transform: translateY(20px);
    -ms-transform: translateY(20px);
    -o-transform: translateY(20px);
    transform: translateY(20px);
    -webkit-transition-delay: 0s;
    -moz-transition-delay: 0s;
    transition-delay: 0s
}

.contact-modal a.huge-text,
.contact-modal a.huge-text span {
    backface-visibility: hidden;
    -webkit-transform: translateZ(0) scale(1, 1)
}

.contact-modal[data-active=on] .hand-cursor-follower::before {
    -webkit-animation: pointing-hand-cursor 2s infinite forwards;
    -moz-animation: pointing-hand-cursor 2s infinite forwards;
    animation: pointing-hand-cursor 2s infinite forwards
}

.contact-modal .close {
    position: absolute;
    right: 2vw;
    top: 2vw
}

body[data-state=intro] .contact-modal .close:hover span:nth-child(2)::after,
body[data-state=intro] .contact-modal .close:hover span:nth-child(2)::before {
    background-color: #07933d
}

body[data-state=who] .contact-modal .close:hover span:nth-child(2)::after,
body[data-state=who] .contact-modal .close:hover span:nth-child(2)::before {
    background-color: #07933d
}

body[data-state=what] .contact-modal .close:hover span:nth-child(2)::after,
body[data-state=what] .contact-modal .close:hover span:nth-child(2)::before {
    background-color: #07933d
}

body[data-state=work] .contact-modal .close:hover span:nth-child(2)::after,
body[data-state=work] .contact-modal .close:hover span:nth-child(2)::before {
    background-color: #07933d
}

.contact-modal a.huge-text {
    display: table;
    margin: 0 auto;
    -webkit-backface-visibility: hidden
}

.not-awkward,
html.no-backgroundblendmode .contact-modal a.huge-text {
    display: inline-block
}

.contact-modal a.huge-text span {
    -webkit-backface-visibility: hidden
}

.hand-cursor-follower {
    z-index: 1000;
    position: fixed;
    top: 0;
    left: 0;
    width: 113px;
    height: 160px;
    -webkit-transition: opacity .25s cubic-bezier(.62, .02, .34, 1);
    -moz-transition: opacity .25s cubic-bezier(.62, .02, .34, 1);
    transition: opacity .25s cubic-bezier(.62, .02, .34, 1)
}

.hand-cursor-follower::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: url(../img/figures/hand-cursor.html) center center/100% no-repeat;
    -webkit-transform-origin: 15% 0;
    -moz-transform-origin: 15% 0;
    -ms-transform-origin: 15% 0;
    -o-transform-origin: 15% 0;
    transform-origin: 15% 0
}

.hand-cursor-follower[data-active=off] {
    opacity: 0
}

.contact-social {
    width: 100%;
    bottom: 10vh
}

.contact-social .social-list {
    margin-left: -2px
}

.contact-social .not-awkward {
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
    -webkit-transform: translateX(0) translateZ(0) scale(1, 1);
    -moz-transform: translateX(0) translateZ(0) scale(1, 1);
    -ms-transform: translateX(0) translateZ(0) scale(1, 1);
    -o-transform: translateX(0) translateZ(0) scale(1, 1);
    transform: translateX(0) translateZ(0) scale(1, 1)
}

.contact-social.hover .awkward {
    opacity: 1
}

.contact-social.hover .not-awkward {
    -webkit-transform: translateX(-90%) translateZ(0) scale(1, 1);
    -moz-transform: translateX(-90%) translateZ(0) scale(1, 1);
    -ms-transform: translateX(-90%) translateZ(0) scale(1, 1);
    -o-transform: translateX(-90%) translateZ(0) scale(1, 1);
    transform: translateX(-90%) translateZ(0) scale(1, 1)
}

.not-awkward {
    position: relative
}

.awkward {
    position: absolute;
    left: 100%;
    white-space: nowrap;
    opacity: 0
}

.awkward,
.not-awkward {
    -webkit-transition: .35s cubic-bezier(.52, .01, .16, 1);
    -moz-transition: .35s cubic-bezier(.52, .01, .16, 1);
    transition: .35s cubic-bezier(.52, .01, .16, 1)
}

.social-list {
    margin-top: 1em;
    display: -webkit-box;
    display: -moz-box;
    display: box;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -moz-box-orient: horizontal;
    box-orient: horizontal;
    -webkit-flex-direction: row;
    -moz-flex-direction: row;
    flex-direction: row;
    -ms-flex-direction: row;
    -webkit-box-pack: center;
    -moz-box-pack: center;
    box-pack: center;
    -webkit-justify-content: center;
    -moz-justify-content: center;
    -ms-justify-content: center;
    -o-justify-content: center;
    justify-content: center;
    -ms-flex-pack: center
}

.social-list li {
    margin: 0 7px
}

.social-list li:first-child {
    margin-left: 0
}

.social-list li:last-child {
    margin-right: 0
}

@media screen and (max-width:700px) {
    nav {
        top: 30px;
        left: 30px;
        right: 30px
    }
    .modal .huge-text {
        font-size: 2.5em
    }
    .modal .close {
        width: 25px;
        height: 25px;
        right: 6vw;
        top: 6vw
    }
}

@-webkit-keyframes pointing-hand-cursor {
    0%,
    100%,
    30%,
    50% {
        -webkit-transform: rotate(0)
    }
    40% {
        -webkit-transform: rotate(5deg) rotateX(20deg) translateY(-2%)
    }
}

@-moz-keyframes pointing-hand-cursor {
    0%,
    100%,
    30%,
    50% {
        -moz-transform: rotate(0)
    }
    40% {
        -moz-transform: rotate(5deg) rotateX(20deg) translateY(-2%)
    }
}

@keyframes pointing-hand-cursor {
    0%,
    100%,
    30%,
    50% {
        -webkit-transform: rotate(0);
        -moz-transform: rotate(0);
        -ms-transform: rotate(0);
        -o-transform: rotate(0);
        transform: rotate(0)
    }
    40% {
        -webkit-transform: rotate(5deg) rotateX(20deg) translateY(-2%);
        -moz-transform: rotate(5deg) rotateX(20deg) translateY(-2%);
        -ms-transform: rotate(5deg) rotateX(20deg) translateY(-2%);
        -o-transform: rotate(5deg) rotateX(20deg) translateY(-2%);
        transform: rotate(5deg) rotateX(20deg) translateY(-2%)
    }
}