/*! normalize.css v2.1.3 | MIT License | git.io/normalize */

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section,
summary {
    display: block
}

audio,
canvas,
progress,
video {
    display: inline-block
}

audio:not([controls]) {
    display: none;
    height: 0
}

[hidden],
template {
    display: none
}

html {
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%
}

body {
    margin: 0
}

a {
    background: 0 0
}

a:active,
a:hover {
    outline: 0
}

h1 {
    margin: .67em 0
}

abbr[title] {
    border-bottom: 1px dotted
}

b,
strong {
    font-weight: 700
}

dfn {
    font-style: italic
}

hr {
    -moz-box-sizing: content-box;
    box-sizing: content-box;
    height: 0
}

mark {
    background: #ff0;
    color: #000
}

code,
kbd,
pre,
samp {
    font-family: monospace, sans serif;
    font-size: 1em
}

pre {
    white-space: pre-wrap
}

q {
    quotes: "\201C" "\201D" "\2018" "\2019"
}

small {
    font-size: 80%
}

sub,
sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline
}

sup {
    top: -.5em
}

sub {
    bottom: -.25em
}

img {
    border: 0
}

svg:not(:root) {
    overflow: hidden
}

figure {
    margin: 1em 40px
}

fieldset {
    border: 1px solid silver;
    margin: 0 2px;
    min-width: 0;
    padding: .35em .625em .75em
}

legend {
    border: 0;
    padding: 0
}

button,
input,
optgroup,
select,
textarea {
    color: inherit;
    font: inherit;
    margin: 0
}

optgroup {
    font-weight: 700
}

button,
input {
    line-height: normal
}

button,
select {
    text-transform: none
}

button,
html input[type=button],
input[type=reset],
input[type=submit] {
    -webkit-appearance: button;
    cursor: pointer
}

button[disabled],
html input[disabled] {
    cursor: default
}

input[type=checkbox],
input[type=radio] {
    box-sizing: border-box;
    padding: 0
}

input[type=search] {
    -webkit-appearance: textfield;
    -moz-box-sizing: content-box;
    -webkit-box-sizing: content-box;
    box-sizing: content-box
}

input[type=search]::-webkit-search-cancel-button,
input[type=search]::-webkit-search-decoration {
    -webkit-appearance: none
}

button::-moz-focus-inner,
input::-moz-focus-inner {
    border: 0;
    padding: 0
}

textarea {
    overflow: auto;
    vertical-align: top
}

table {
    border-collapse: collapse;
    border-spacing: 0
}

td,
th {
    padding: 0
}

@media screen and (max-width:400px) {
    @-ms-viewport {
        width: 320px
    }
}

@media all {
    .clear {
        clear: both;
        display: block;
        overflow: hidden;
        visibility: hidden;
        width: 0;
        height: 0
    }
    .clearfix:after,
    .clearfix:before,
    .grid-container:after,
    .grid-container:before {
        content: ".";
        display: block;
        overflow: hidden;
        visibility: hidden;
        font-size: 0;
        line-height: 0;
        width: 0;
        height: 0
    }
    .clearfix:after,
    .grid-container:after {
        clear: both
    }
    .grid-container {
        margin-left: auto;
        margin-right: auto;
        max-width: 920px;
        padding-left: 30px;
        padding-right: 30px
    }
    .grid-10,
    .grid-100,
    .grid-15,
    .grid-20,
    .grid-25,
    .grid-30,
    .grid-33,
    .grid-35,
    .grid-40,
    .grid-45,
    .grid-5,
    .grid-50,
    .grid-55,
    .grid-60,
    .grid-65,
    .grid-66,
    .grid-70,
    .grid-75,
    .grid-80,
    .grid-85,
    .grid-90,
    .grid-95,
    .mobile-grid-10,
    .mobile-grid-100,
    .mobile-grid-15,
    .mobile-grid-20,
    .mobile-grid-25,
    .mobile-grid-30,
    .mobile-grid-33,
    .mobile-grid-35,
    .mobile-grid-40,
    .mobile-grid-45,
    .mobile-grid-5,
    .mobile-grid-50,
    .mobile-grid-55,
    .mobile-grid-60,
    .mobile-grid-65,
    .mobile-grid-66,
    .mobile-grid-70,
    .mobile-grid-75,
    .mobile-grid-80,
    .mobile-grid-85,
    .mobile-grid-90,
    .mobile-grid-95 {
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        padding-left: 30px;
        padding-right: 30px
    }
    .grid-parent {
        padding-left: 0;
        padding-right: 0
    }
}

@media screen and (max-width:1024px) {
    .mobile-grid-100:after,
    .mobile-grid-100:before {
        content: ".";
        display: block;
        overflow: hidden;
        visibility: hidden;
        font-size: 0;
        line-height: 0;
        width: 0;
        height: 0
    }
    .mobile-grid-100:after {
        clear: both
    }
    .mobile-pull-10,
    .mobile-pull-15,
    .mobile-pull-20,
    .mobile-pull-25,
    .mobile-pull-30,
    .mobile-pull-33,
    .mobile-pull-35,
    .mobile-pull-40,
    .mobile-pull-45,
    .mobile-pull-5,
    .mobile-pull-50,
    .mobile-pull-55,
    .mobile-pull-60,
    .mobile-pull-65,
    .mobile-pull-66,
    .mobile-pull-70,
    .mobile-pull-75,
    .mobile-pull-80,
    .mobile-pull-85,
    .mobile-pull-90,
    .mobile-pull-95,
    .mobile-push-10,
    .mobile-push-15,
    .mobile-push-20,
    .mobile-push-25,
    .mobile-push-30,
    .mobile-push-33,
    .mobile-push-35,
    .mobile-push-40,
    .mobile-push-45,
    .mobile-push-5,
    .mobile-push-50,
    .mobile-push-55,
    .mobile-push-60,
    .mobile-push-65,
    .mobile-push-66,
    .mobile-push-70,
    .mobile-push-75,
    .mobile-push-80,
    .mobile-push-85,
    .mobile-push-90,
    .mobile-push-95 {
        position: relative
    }
    .hide-on-mobile {
        display: none!important
    }
    .mobile-grid-5 {
        float: left;
        width: 5%
    }
    .mobile-prefix-5 {
        margin-left: 5%
    }
    .mobile-suffix-5 {
        margin-right: 5%
    }
    .mobile-push-5 {
        left: 5%
    }
    .mobile-pull-5 {
        left: -5%
    }
    .mobile-grid-10 {
        float: left;
        width: 10%
    }
    .mobile-prefix-10 {
        margin-left: 10%
    }
    .mobile-suffix-10 {
        margin-right: 10%
    }
    .mobile-push-10 {
        left: 10%
    }
    .mobile-pull-10 {
        left: -10%
    }
    .mobile-grid-15 {
        float: left;
        width: 15%
    }
    .mobile-prefix-15 {
        margin-left: 15%
    }
    .mobile-suffix-15 {
        margin-right: 15%
    }
    .mobile-push-15 {
        left: 15%
    }
    .mobile-pull-15 {
        left: -15%
    }
    .mobile-grid-20 {
        float: left;
        width: 20%
    }
    .mobile-prefix-20 {
        margin-left: 20%
    }
    .mobile-suffix-20 {
        margin-right: 20%
    }
    .mobile-push-20 {
        left: 20%
    }
    .mobile-pull-20 {
        left: -20%
    }
    .mobile-grid-25 {
        float: left;
        width: 25%
    }
    .mobile-prefix-25 {
        margin-left: 25%
    }
    .mobile-suffix-25 {
        margin-right: 25%
    }
    .mobile-push-25 {
        left: 25%
    }
    .mobile-pull-25 {
        left: -25%
    }
    .mobile-grid-30 {
        float: left;
        width: 30%
    }
    .mobile-prefix-30 {
        margin-left: 30%
    }
    .mobile-suffix-30 {
        margin-right: 30%
    }
    .mobile-push-30 {
        left: 30%
    }
    .mobile-pull-30 {
        left: -30%
    }
    .mobile-grid-35 {
        float: left;
        width: 35%
    }
    .mobile-prefix-35 {
        margin-left: 35%
    }
    .mobile-suffix-35 {
        margin-right: 35%
    }
    .mobile-push-35 {
        left: 35%
    }
    .mobile-pull-35 {
        left: -35%
    }
    .mobile-grid-40 {
        float: left;
        width: 40%
    }
    .mobile-prefix-40 {
        margin-left: 40%
    }
    .mobile-suffix-40 {
        margin-right: 40%
    }
    .mobile-push-40 {
        left: 40%
    }
    .mobile-pull-40 {
        left: -40%
    }
    .mobile-grid-45 {
        float: left;
        width: 45%
    }
    .mobile-prefix-45 {
        margin-left: 45%
    }
    .mobile-suffix-45 {
        margin-right: 45%
    }
    .mobile-push-45 {
        left: 45%
    }
    .mobile-pull-45 {
        left: -45%
    }
    .mobile-grid-50 {
        float: left;
        width: 50%
    }
    .mobile-prefix-50 {
        margin-left: 50%
    }
    .mobile-suffix-50 {
        margin-right: 50%
    }
    .mobile-push-50 {
        left: 50%
    }
    .mobile-pull-50 {
        left: -50%
    }
    .mobile-grid-55 {
        float: left;
        width: 55%
    }
    .mobile-prefix-55 {
        margin-left: 55%
    }
    .mobile-suffix-55 {
        margin-right: 55%
    }
    .mobile-push-55 {
        left: 55%
    }
    .mobile-pull-55 {
        left: -55%
    }
    .mobile-grid-60 {
        float: left;
        width: 60%
    }
    .mobile-prefix-60 {
        margin-left: 60%
    }
    .mobile-suffix-60 {
        margin-right: 60%
    }
    .mobile-push-60 {
        left: 60%
    }
    .mobile-pull-60 {
        left: -60%
    }
    .mobile-grid-65 {
        float: left;
        width: 65%
    }
    .mobile-prefix-65 {
        margin-left: 65%
    }
    .mobile-suffix-65 {
        margin-right: 65%
    }
    .mobile-push-65 {
        left: 65%
    }
    .mobile-pull-65 {
        left: -65%
    }
    .mobile-grid-70 {
        float: left;
        width: 70%
    }
    .mobile-prefix-70 {
        margin-left: 70%
    }
    .mobile-suffix-70 {
        margin-right: 70%
    }
    .mobile-push-70 {
        left: 70%
    }
    .mobile-pull-70 {
        left: -70%
    }
    .mobile-grid-75 {
        float: left;
        width: 75%
    }
    .mobile-prefix-75 {
        margin-left: 75%
    }
    .mobile-suffix-75 {
        margin-right: 75%
    }
    .mobile-push-75 {
        left: 75%
    }
    .mobile-pull-75 {
        left: -75%
    }
    .mobile-grid-80 {
        float: left;
        width: 80%
    }
    .mobile-prefix-80 {
        margin-left: 80%
    }
    .mobile-suffix-80 {
        margin-right: 80%
    }
    .mobile-push-80 {
        left: 80%
    }
    .mobile-pull-80 {
        left: -80%
    }
    .mobile-grid-85 {
        float: left;
        width: 85%
    }
    .mobile-prefix-85 {
        margin-left: 85%
    }
    .mobile-suffix-85 {
        margin-right: 85%
    }
    .mobile-push-85 {
        left: 85%
    }
    .mobile-pull-85 {
        left: -85%
    }
    .mobile-grid-90 {
        float: left;
        width: 90%
    }
    .mobile-prefix-90 {
        margin-left: 90%
    }
    .mobile-suffix-90 {
        margin-right: 90%
    }
    .mobile-push-90 {
        left: 90%
    }
    .mobile-pull-90 {
        left: -90%
    }
    .mobile-grid-95 {
        float: left;
        width: 95%
    }
    .mobile-prefix-95 {
        margin-left: 95%
    }
    .mobile-suffix-95 {
        margin-right: 95%
    }
    .mobile-push-95 {
        left: 95%
    }
    .mobile-pull-95 {
        left: -95%
    }
    .mobile-grid-33 {
        float: left;
        width: 33.33333%
    }
    .mobile-prefix-33 {
        margin-left: 33.33333%
    }
    .mobile-suffix-33 {
        margin-right: 33.33333%
    }
    .mobile-push-33 {
        left: 33.33333%
    }
    .mobile-pull-33 {
        left: -33.33333%
    }
    .mobile-grid-66 {
        float: left;
        width: 66.66667%
    }
    .mobile-prefix-66 {
        margin-left: 66.66667%
    }
    .mobile-suffix-66 {
        margin-right: 66.66667%
    }
    .mobile-push-66 {
        left: 66.66667%
    }
    .mobile-pull-66 {
        left: -66.66667%
    }
    .mobile-grid-100 {
        clear: both;
        width: 100%
    }
}

@media screen and (min-width:1025px) {
    .grid-100:after,
    .grid-100:before {
        content: ".";
        display: block;
        overflow: hidden;
        visibility: hidden;
        font-size: 0;
        line-height: 0;
        width: 0;
        height: 0
    }
    .grid-100:after {
        clear: both
    }
    .pull-10,
    .pull-15,
    .pull-20,
    .pull-25,
    .pull-30,
    .pull-33,
    .pull-35,
    .pull-40,
    .pull-45,
    .pull-5,
    .pull-50,
    .pull-55,
    .pull-60,
    .pull-65,
    .pull-66,
    .pull-70,
    .pull-75,
    .pull-80,
    .pull-85,
    .pull-90,
    .pull-95,
    .push-10,
    .push-15,
    .push-20,
    .push-25,
    .push-30,
    .push-33,
    .push-35,
    .push-40,
    .push-45,
    .push-5,
    .push-50,
    .push-55,
    .push-60,
    .push-65,
    .push-66,
    .push-70,
    .push-75,
    .push-80,
    .push-85,
    .push-90,
    .push-95 {
        position: relative
    }
    .hide-on-desktop {
        display: none!important
    }
    .grid-5 {
        float: left;
        width: 5%
    }
    .prefix-5 {
        margin-left: 5%
    }
    .suffix-5 {
        margin-right: 5%
    }
    .push-5 {
        left: 5%
    }
    .pull-5 {
        left: -5%
    }
    .grid-10 {
        float: left;
        width: 10%
    }
    .prefix-10 {
        margin-left: 10%
    }
    .suffix-10 {
        margin-right: 10%
    }
    .push-10 {
        left: 10%
    }
    .pull-10 {
        left: -10%
    }
    .grid-15 {
        float: left;
        width: 15%
    }
    .prefix-15 {
        margin-left: 15%
    }
    .suffix-15 {
        margin-right: 15%
    }
    .push-15 {
        left: 15%
    }
    .pull-15 {
        left: -15%
    }
    .grid-20 {
        float: left;
        width: 20%
    }
    .prefix-20 {
        margin-left: 20%
    }
    .suffix-20 {
        margin-right: 20%
    }
    .push-20 {
        left: 20%
    }
    .pull-20 {
        left: -20%
    }
    .grid-25 {
        float: left;
        width: 25%
    }
    .prefix-25 {
        margin-left: 25%
    }
    .suffix-25 {
        margin-right: 25%
    }
    .push-25 {
        left: 25%
    }
    .pull-25 {
        left: -25%
    }
    .grid-30 {
        float: left;
        width: 30%
    }
    .prefix-30 {
        margin-left: 30%
    }
    .suffix-30 {
        margin-right: 30%
    }
    .push-30 {
        left: 30%
    }
    .pull-30 {
        left: -30%
    }
    .grid-35 {
        float: left;
        width: 35%
    }
    .prefix-35 {
        margin-left: 35%
    }
    .suffix-35 {
        margin-right: 35%
    }
    .push-35 {
        left: 35%
    }
    .pull-35 {
        left: -35%
    }
    .grid-40 {
        float: left;
        width: 40%
    }
    .prefix-40 {
        margin-left: 40%
    }
    .suffix-40 {
        margin-right: 40%
    }
    .push-40 {
        left: 40%
    }
    .pull-40 {
        left: -40%
    }
    .grid-45 {
        float: left;
        width: 45%
    }
    .prefix-45 {
        margin-left: 45%
    }
    .suffix-45 {
        margin-right: 45%
    }
    .push-45 {
        left: 45%
    }
    .pull-45 {
        left: -45%
    }
    .grid-50 {
        float: left;
        width: 50%
    }
    .prefix-50 {
        margin-left: 50%
    }
    .suffix-50 {
        margin-right: 50%
    }
    .push-50 {
        left: 50%
    }
    .pull-50 {
        left: -50%
    }
    .grid-55 {
        float: left;
        width: 55%
    }
    .prefix-55 {
        margin-left: 55%
    }
    .suffix-55 {
        margin-right: 55%
    }
    .push-55 {
        left: 55%
    }
    .pull-55 {
        left: -55%
    }
    .grid-60 {
        float: left;
        width: 60%
    }
    .prefix-60 {
        margin-left: 60%
    }
    .suffix-60 {
        margin-right: 60%
    }
    .push-60 {
        left: 60%
    }
    .pull-60 {
        left: -60%
    }
    .grid-65 {
        float: left;
        width: 65%
    }
    .prefix-65 {
        margin-left: 65%
    }
    .suffix-65 {
        margin-right: 65%
    }
    .push-65 {
        left: 65%
    }
    .pull-65 {
        left: -65%
    }
    .grid-70 {
        float: left;
        width: 70%
    }
    .prefix-70 {
        margin-left: 70%
    }
    .suffix-70 {
        margin-right: 70%
    }
    .push-70 {
        left: 70%
    }
    .pull-70 {
        left: -70%
    }
    .grid-75 {
        float: left;
        width: 75%
    }
    .prefix-75 {
        margin-left: 75%
    }
    .suffix-75 {
        margin-right: 75%
    }
    .push-75 {
        left: 75%
    }
    .pull-75 {
        left: -75%
    }
    .grid-80 {
        float: left;
        width: 80%
    }
    .prefix-80 {
        margin-left: 80%
    }
    .suffix-80 {
        margin-right: 80%
    }
    .push-80 {
        left: 80%
    }
    .pull-80 {
        left: -80%
    }
    .grid-85 {
        float: left;
        width: 85%
    }
    .prefix-85 {
        margin-left: 85%
    }
    .suffix-85 {
        margin-right: 85%
    }
    .push-85 {
        left: 85%
    }
    .pull-85 {
        left: -85%
    }
    .grid-90 {
        float: left;
        width: 90%
    }
    .prefix-90 {
        margin-left: 90%
    }
    .suffix-90 {
        margin-right: 90%
    }
    .push-90 {
        left: 90%
    }
    .pull-90 {
        left: -90%
    }
    .grid-95 {
        float: left;
        width: 95%
    }
    .prefix-95 {
        margin-left: 95%
    }
    .suffix-95 {
        margin-right: 95%
    }
    .push-95 {
        left: 95%
    }
    .pull-95 {
        left: -95%
    }
    .grid-33 {
        float: left;
        width: 33.33333%
    }
    .prefix-33 {
        margin-left: 33.33333%
    }
    .suffix-33 {
        margin-right: 33.33333%
    }
    .push-33 {
        left: 33.33333%
    }
    .pull-33 {
        left: -33.33333%
    }
    .grid-66 {
        float: left;
        width: 66.66667%
    }
    .prefix-66 {
        margin-left: 66.66667%
    }
    .suffix-66 {
        margin-right: 66.66667%
    }
    .push-66 {
        left: 66.66667%
    }
    .pull-66 {
        left: -66.66667%
    }
    .grid-100 {
        clear: both;
        width: 100%
    }
}

.onepage-pagination {
    position: absolute;
    left: 30px;
    top: 45%;
    z-index: 5;
    list-style: none;
    margin: 0;
    padding: 0
}

.onepage-pagination li {
    padding: 0;
    text-align: center
}

.onepage-pagination li a {
    padding: 8px;
    width: 6px;
    height: 6px;
    display: block
}

.onepage-pagination li a:hover:before {
    background-color: #ccc
}

.onepage-pagination li a:before {
    content: '';
    position: absolute;
    width: 6px;
    height: 6px;
    background: rgba(255, 255, 255, .85);
    border-radius: 10px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    left: 12px
}

.onepage-pagination li a.active:before {
    width: 15px;
    height: 15px;
    background: 0 0;
    border: 2px solid #fff;
    margin-top: -6px;
    left: 5px;
    -webkit-animation: scaleUp .3s forwards;
    animation: scaleUp .3s forwards
}

.onepage-pagination li a.active {
    cursor: default
}

.ui-palette {
    color: #fff;
    margin: 0;
    padding: 15px;
    text-transform: uppercase
}

.ui-palette dt {
    display: block;
    font-weight: 500;
    opacity: .8
}

.ui-palette dd {
    font-weight: 200;
    margin-left: 0;
    opacity: .8
}

.ui-palette-base-dark {
    background-color: #666
}

.ui-palette-base {
    background-color: #333
}

.ui-palette-inverse {
    color: #333;
    background-color: #eee
}

.ui-palette-hover {
    background-color: #666
}

.ui-palette-disabled {
    background-color: #ccc
}

.ui-file-input {
    width: 100%;
    position: relative
}

.ui-file-input input[type=file].hidden {
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    opacity: 0;
    filter: alpha(opacity=0);
    zoom: 1;
    cursor: pointer
}

.ui-fake-file {
    width: 70%;
    float: left
}

.ui-fake-file input {
    width: 100%;
    height: 42px
}

.ui-file-input .ui-button {
    width: 30%;
    float: right
}

.ui-file-input input,
.ui-input,
.ui-textarea,
.ui-uneditable-input {
    border: 2px solid #333;
    color: #333;
    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-size: 14px;
    line-height: 18px;
    padding: 10px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box
}

.ui-file-input input:-moz-placeholder,
.ui-input:-moz-placeholder,
.ui-textarea:-moz-placeholder,
.ui-uneditable-input:-moz-placeholder {
    color: #ccc
}

.ui-file-input input::-webkit-input-placeholder,
.ui-input::-webkit-input-placeholder,
.ui-textarea::-webkit-input-placeholder,
.ui-uneditable-input::-webkit-input-placeholder {
    color: #ccc
}

.ui-file-input input.placeholder,
.ui-input.placeholder,
.ui-textarea.placeholder,
.ui-uneditable-input.placeholder {
    color: #ccc
}

.ui-file-input input[disabled],
.ui-file-input input[readonly],
.ui-input[disabled],
.ui-input[readonly],
.ui-textarea[disabled],
.ui-textarea[readonly] {
    background-color: #ccc;
    border-color: transparent;
    color: #ccc;
    cursor: default
}

.ui-input,
.ui-textarea,
.ui-uneditable-input {
    width: 100%
}

.ui-tooltip {
    position: relative
}

.ui-tooltip:before {
    content: "";
    border: solid;
    border-color: #333 transparent;
    border-width: 6px 6px 0;
    position: absolute;
    top: -10px;
    left: 10px;
    z-index: 99;
    opacity: 0;
    filter: alpha(opacity=0);
    zoom: 1;
    -webkit-transition: all .25s ease;
    -moz-transition: all .25s ease;
    -o-transition: all .25s ease;
    transition: all .25s ease;
    -webkit-backface-visibility: hidden
}

.ui-tooltip:after {
    content: attr(title);
    color: #fff;
    background: #333;
    padding: 10px 15px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    position: absolute;
    top: -47px;
    left: 0;
    z-index: 98;
    opacity: 0;
    filter: alpha(opacity=0);
    zoom: 1;
    -webkit-transition: all .25s ease;
    -moz-transition: all .25s ease;
    -o-transition: all .25s ease;
    transition: all .25s ease;
    -webkit-backface-visibility: hidden
}

.ui-tooltip.show:after,
.ui-tooltip.show:before {
    opacity: 1;
    filter: alpha(opacity=100);
    zoom: 1
}

.ui-tooltip.show:before {
    top: -20px
}

.ui-tooltip.show:after {
    top: -57px
}

select {
    margin: 0;
    padding: 0;
    font-size: 14px;
    outline: 0;
    font-family: inherit
}

.ui-select {
    background: #fff url(../images/ui/select.png) no-repeat center right;
    height: 38px;
    border: 2px solid #333;
    overflow: hidden;
    padding: 0;
    margin: 0
}

.ui-select select {
    width: 120%;
    color: #333;
    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-size: 14px;
    padding: 10px 0 8px 10px;
    background-color: transparent;
    background-image: none;
    -webkit-appearance: none;
    border: none;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    cursor: pointer
}

.ui-select select option {
    padding: 4px 0 4px 4px
}

.lt-ie8 .ui-select {
    border: none
}

.lt-ie8 .ui-select select {
    width: 100%;
    background-color: #fff;
    border: solid 1px #ccc;
    padding: 10px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box
}

@media only screen and (-webkit-min-device-pixel-ratio:2),
only screen and (-webkit-min-device-pixel-ratio:1.5),
only screen and (-moz-min-device-pixel-ratio:2),
only screen and (-o-min-device-pixel-ratio:3 / 2),
only screen and (-o-min-device-pixel-ratio:2 / 1),
only screen and (min--moz-device-pixel-ratio:1.5),
only screen and (min-device-pixel-ratio:1.5),
only screen and (min-device-pixel-ratio:2) {
    .ui-select {
        background-image: url(../images/ui/selectx2.png);
        background-size: 28px 8px
    }
}

.ui-button {
    border: none;
    background: #333;
    color: #eee;
    font-size: 14px;
    line-height: 18px;
    text-align: center;
    text-decoration: none;
    text-shadow: none
}

.ui-button:focus,
.ui-button:hover {
    color: #eee
}

.ui-button.active,
.ui-button:active {
    background-color: #666;
    color: rgba(238, 238, 238, .75);
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none
}

.ui-button.ui-disabled,
.ui-button[disabled] {
    background-color: #ccc;
    color: #eee
}

.ui-button.ui-button-large {
    padding-bottom: 12px;
    padding-top: 12px
}

.ui-button[type=reset],
.ui-button[type=submit] {
    width: 100%;
    padding-left: 0;
    padding-right: 0
}

.ui-checkbox,
.ui-radio {
    cursor: pointer;
    margin-bottom: 12px;
    padding: 3px 0 0 32px;
    position: relative;
    display: block;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box
}

.ui-checkbox:hover,
.ui-radio:hover {
    color: #666
}

.ui-checkbox input,
.ui-radio input {
    cursor: pointer;
    outline: 0!important;
    opacity: 0;
    filter: alpha(opacity=0);
    zoom: 1;
    position: absolute;
    left: 0;
    top: 0;
    width: 96%;
    height: 20px
}

.ui-checkbox.checked .icon,
.ui-radio.checked .icon {
    background-position: 0 bottom;
    opacity: 1
}

.ui-checkbox.checked .icon-to-fade,
.ui-radio.checked .icon-to-fade {
    opacity: 0
}

.ui-checkbox.disabled,
.ui-radio.disabled {
    color: #ccc;
    cursor: default
}

.ui-checkbox.disabled .icon,
.ui-radio.disabled .icon {
    opacity: 0
}

.ui-checkbox.disabled .icon-to-fade,
.ui-radio.disabled .icon-to-fade {
    background-position: 0 top;
    opacity: .25
}

.ui-checkbox.disabled.checked .icon,
.ui-radio.disabled.checked .icon {
    background-position: 0 bottom;
    opacity: .25
}

.ui-checkbox.disabled.checked .icon-to-fade,
.ui-radio.disabled.checked .icon-to-fade {
    opacity: 0
}

.ui-checkbox .icon,
.ui-checkbox .icon-to-fade,
.ui-radio .icon,
.ui-radio .icon-to-fade {
    background: url(../images/ui/checkbox.png) 0 top no-repeat;
    display: block;
    height: 20px;
    left: 0;
    opacity: 1;
    position: absolute;
    top: 0;
    width: 20px
}

.ui-checkbox .icon,
.ui-radio .icon {
    opacity: 0;
    top: 0;
    z-index: 2
}

.ui-radio .icon,
.ui-radio .icon-to-fade {
    background-image: url(../images/ui/radio.png)
}

@media only screen and (-webkit-min-device-pixel-ratio:2),
only screen and (-webkit-min-device-pixel-ratio:1.5),
only screen and (-moz-min-device-pixel-ratio:2),
only screen and (-o-min-device-pixel-ratio:3 / 2),
only screen and (-o-min-device-pixel-ratio:2 / 1),
only screen and (min--moz-device-pixel-ratio:1.5),
only screen and (min-device-pixel-ratio:1.5),
only screen and (min-device-pixel-ratio:2) {
    .ui-checkbox .icon {
        background-image: url(../images/ui/checkbox-2x.png);
        background-size: 40px 40px
    }
    .ui-radio .icon {
        background-image: url(../images/ui/radio-2x.png);
        background-size: 110px 110px
    }
}

body,
html {
    color: #fff;
    font-family: 'Titillium Web', sans serif;
    font-weight: 400;
    font-style: normal;
    font-size: 12px
}

h1 {
    font-size: 42px;
    font-weight: 400;
    letter-spacing: .07em;
    text-transform: uppercase
}

h2,
h3 {
    font-weight: 400;
    letter-spacing: .07em;
    text-transform: uppercase
}

.gotham-light {
    font-family: 'Titillium Web', sans serif;
    font-weight: 300;
    font-style: normal
}

.gotham-book {
    font-family: 'Titillium Web', sans serif;
    font-weight: 400;
    font-style: normal
}

.gotham-medium {
    font-family: 'Titillium Web', sans serif;
    font-weight: 500;
    font-style: normal
}

.knockout {
    font-family: 'Knockout 48 A', 'Knockout 48 B';
    font-weight: 400;
    font-style: normal
}

a {
    text-decoration: none
}

a:focus {
    outline: 0
}

.ui-button {
    font-family: 'Titillium Web', sans serif;
    letter-spacing: .03em;
    padding-left: 32px;
    padding-right: 32px;
    margin-top: -15px;
    display: inline-block;
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-perspective: 350px;
    perspective: 350px
}

.ui-button,
.ui-button:focus,
.ui-button:hover {
    background-color: transparent
}

.ui-button:before {
    width: 100%;
    content: attr(title);
    color: rgba(255, 255, 255, .85);
    font-size: 16px;
    font-weight: 500;
    letter-spacing: .03em;
    text-align: center;
    text-transform: uppercase;
    position: absolute;
    top: 10px;
    left: 0;
    z-index: 1;
    -webkit-transition: color .5s ease;
    transition: color .5s ease
}

.ui-button:hover:before {
    color: #fff
}

.ui-button:hover .button {
    -webkit-animation: flipUp .3s forwards ease;
    animation: flipUp .3s forwards ease
}

.ui-button .button span {
    color: transparent
}

.button {
    background-color: transparent;
    padding-left: 32px;
    padding-right: 32px;
    border: 3px solid #fff;
    opacity: .85;
    display: block
}

.button span {
    color: #fff;
    font-family: 'Titillium Web', sans serif;
    font-size: 16px;
    font-weight: 300;
    letter-spacing: .03em;
    text-align: center;
    text-transform: uppercase;
    margin-top: 8px;
    margin-bottom: 8px;
    display: block
}

.ui-button.black:before {
    color: rgba(0, 0, 0, .85)
}

.ui-button.black:hover:before {
    color: #000
}

.ui-button.black .button {
    border-color: #000
}

input,
textarea {
    font-family: 'Gotham A', 'Gotham B'
}

.ui-input,
.ui-textarea {
    font-family: 'Titillium Web', sans serif;
    font-size: 12px;
    letter-spacing: .03em;
    color: #b4b4b4;
    background-color: #fafafa;
    border: 1px solid #e5e5e5;
    padding: 12px;
    border-radius: 0;
    margin-bottom: 24px
}

::-webkit-input-placeholder {
    opacity: 1
}

:-moz-placeholder {
    opacity: 1
}

::-moz-placeholder {
    opacity: 1
}

:-ms-input-placeholder {
    opacity: 1
}

.ui-input:focus,
.ui-textarea:focus {
    background-color: #fff;
    outline: 0
}

input:required:invalid,
textarea:required:invalid {
    box-shadow: none
}

input.error,
textarea.error {
    border: 1px solid red
}

.ui-textarea {
    min-width: 100%;
    max-width: 100%;
    max-height: 400px
}

.ui-submit {
    min-width: 100px;
    color: #000;
    font-family: 'Titillium Web', sans serif;
    font-size: 16px;
    font-weight: 500;
    letter-spacing: .03em;
    text-transform: uppercase;
    background-color: #fff;
    border: 3px solid #000;
    border-radius: 0;
    padding: 8px 35px;
    margin-top: 20px;
    margin-bottom: 60px;
    -webkit-transition: background-color .5s ease;
    transition: background-color .5s ease
}

.ui-submit:hover {
    background-color: #fafafa
}

.accordion {
    width: 100%;
    text-align: left;
    padding-top: 10px;
    padding-bottom: 30px;
    border-bottom: 1px solid #e5e5e5;
    margin-bottom: 20px
}

.accordion:last-of-type {
    border-color: transparent
}

.accordion-link {
    color: #333;
    padding-left: 40px;
    padding-right: 40px;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    display: block;
    position: relative
}

.accordion h3 {
    margin: 1px 0 0;
    display: inline-block
}

.icon-radio {
    width: 20px;
    height: 20px;
    background: url(../images/ui/radio.png) no-repeat left top;
    position: absolute;
    top: 0;
    left: 0;
    display: block
}

.accordion.active .icon-radio {
    background-position: left bottom
}

.icon-accordion {
    width: 13px;
    height: 8px;
    background: url(../images/icon_accordion.png) no-repeat right top;
    position: absolute;
    top: 5px;
    right: 20px;
    display: block
}

.accordion.active .icon-accordion {
    background-position: right bottom
}

.accordion-content {
    font-size: 12px;
    line-height: 24px;
    padding-left: 40px;
    padding-right: 60px;
    margin-top: 10px;
    display: none
}

.accordion-content ul {
    padding-left: 24px
}

.icon-arrow-up-white {
    width: 100%;
    height: 30px;
    background: url(../images/icon_arrow_up_white.png) no-repeat right center;
    display: block
}

.icon-arrow-up-black {
    width: 100%;
    height: 30px;
    background: url(../images/icon_arrow_up_black.png) no-repeat center center;
    display: block
}

.icon-arrow-down-white {
    width: 100%;
    height: 30px;
    background: url(../images/icon_arrow_down_white.png) no-repeat center center;
    display: block
}

.icon-arrow-down-black {
    width: 100%;
    height: 30px;
    background: url(../images/icon_arrow_down_black.png) no-repeat center center;
    display: block
}

.icon-map-pin {
    width: 100%;
    height: 57px;
    background: url(../images/icon_map-pin.png) no-repeat center center;
    display: block
}

.icon-modal-close {
    width: 21px;
    height: 21px;
    background: url(../images/icon_modal_close.png) no-repeat center center;
    position: fixed;
    top: 25px;
    right: 25px;
    z-index: 4;
    display: none
}

@media only screen and (max-width:767px) {
    .accordion-content {
        padding: 0;
        margin-top: 30px
    }
    .accordion-content ul {
        padding-left: 12px
    }
}

@media only screen and (-webkit-min-device-pixel-ratio:2),
only screen and (-webkit-min-device-pixel-ratio:1.5),
only screen and (-moz-min-device-pixel-ratio:2),
only screen and (-o-min-device-pixel-ratio:3 / 2),
only screen and (-o-min-device-pixel-ratio:2 / 1),
only screen and (min--moz-device-pixel-ratio:1.5),
only screen and (min-device-pixel-ratio:1.5),
only screen and (min-device-pixel-ratio:2) {
    .icon-arrow-up-white {
        background-image: url(../images/mobile/icon_arrow_up_white.png);
        background-size: 15px 7px
    }
    .icon-arrow-up-black {
        background-image: url(../images/mobile/icon_arrow_up_black.png);
        background-size: 15px 7px
    }
    .icon-arrow-down-white {
        background-image: url(../images/mobile/icon_arrow_down_white.png);
        background-size: 15px 7px
    }
    .icon-arrow-down-black {
        background-image: url(../images/mobile/icon_arrow_down_black.png);
        background-size: 15px 7px
    }
    .icon-map-pin {
        background-image: url(../images/mobile/icon_map-pin.png);
        background-size: 40px 57px
    }
    .icon-radio {
        background-image: url(../images/ui/radio-2x.png);
        background-size: 20px 40px
    }
    .icon-accordion {
        background-image: url(../images/mobile/icon_accordion.png);
        background-size: 13px 16px
    }
}

html {
    min-width: 320px;
    background-color: #fff;
    background-repeat: no-repeat;
    background-position: center top;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    background-size: cover;
    overflow-x: hidden;
    height: 100%
}

body {
    min-height: 100%
}

html.home body {
    height: 100%
}

#cover {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 999
}

#content {
    width: 100%;
    height: 100%
}

body.core-nav-open #content {
  
}

.subpage {
    width: 100%;
    height: 100%;
    background-position: center top;
    background-attachment: fixed;
    background-repeat: no-repeat;
    padding-top: 400px
}

.page {
    color: #333;
    background-color: #fff;
    padding: 70px 0
}

#modal-blocker {
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 2;
    background: -moz-radial-gradient(center, ellipse cover, rgba(0, 0, 0, .7)0, rgba(0, 0, 0, 1)80%, rgba(0, 0, 0, 1)100%);
    background: -webkit-gradient(radial, center center, 0, center center, 100%, color-stop(0%, rgba(0, 0, 0, .7)), color-stop(80%, rgba(0, 0, 0, 1)), color-stop(100%, rgba(0, 0, 0, 1)));
    background: -webkit-radial-gradient(center, ellipse cover, rgba(0, 0, 0, .7)0, rgba(0, 0, 0, 1)80%, rgba(0, 0, 0, 1)100%);
    background: -o-radial-gradient(center, ellipse cover, rgba(0, 0, 0, .7)0, rgba(0, 0, 0, 1)80%, rgba(0, 0, 0, 1)100%);
    background: -ms-radial-gradient(center, ellipse cover, rgba(0, 0, 0, .7)0, rgba(0, 0, 0, 1)80%, rgba(0, 0, 0, 1)100%);
    background: radial-gradient(ellipse at center, rgba(0, 0, 0, .7)0, rgba(0, 0, 0, 1)80%, rgba(0, 0, 0, 1)100%);
    filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#b3000000', endColorstr='#000000', GradientType=1);
    display: none
}

.scrollLock,
.scrollLock body {
    overflow: hidden
}

.grid-container-wide {
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
    position: relative
}

.multi-container {
    padding: 100px
}

.multi-container.no-top {
    padding-top: 0
}

.multi-container.no-bottom {
    padding-bottom: 0
}

.col-1 {
    padding-right: 8px
}

.col-2 {
    padding-left: 8px
}

.img-left {
    width: 100%;
    height: auto;
    padding-right: 20px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    margin-bottom: 40px;
    float: right;
    position: relative
}

.img-right {
    width: 100%;
    height: auto;
    padding-left: 20px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    margin-bottom: 40px;
    float: left;
    position: relative
}

.last {
    margin-bottom: 0
}

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

video {
    display: none
}

video.video-fullscreen {
    right: 0;
    bottom: 0;
    min-width: 100%;
    min-height: 100%;
    width: auto;
    height: auto;
    z-index: -100
}

#video-header {
    background-color: #fff;
    position: relative
}

#video-header video {
    width: 100%;
    height: auto
}

.video-close {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    display: none;
    z-index: 999
}

.video-cover {
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, .8);
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    display: none
}

.slideshow-container {
    position: relative;
    top: 0;
    left: 0;
    overflow: hidden;
    width: 100%;
    height: 540px;
    margin-left: auto;
    margin-right: auto
}

.slideshow-content {
    width: 100%;
    height: 100%
}

.slideshow-slide {
    cursor: ew-resize;
    text-align: center;
    width: 100%;
    float: left
}

.slideshow-slide img {
    width: 100%;
    height: auto
}

.pagination {
    text-align: center;
    padding-top: 30px;
    margin-top: 30px;
    overflow: hidden
}

.pagination ul {
    list-style: none;
    padding-left: 0
}

.pagination li {
    padding: 0;
    text-align: center;
    display: inline-block
}

.pagination li a {
    cursor: pointer;
    padding: 8px;
    width: 6px;
    height: 6px;
    display: block;
    position: relative
}

.pagination li a.active {
    cursor: default;
    -webkit-animation: scaleUp .3s forwards;
    animation: scaleUp .3s forwards
}

.pagination li a:before {
    content: '';
    position: absolute;
    left: 50%;
    width: 6px;
    height: 6px;
    background: #333;
    border-radius: 10px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px
}

.pagination li a:hover:before {
    background-color: #ccc
}

.pagination li a.active:before {
    width: 15px;
    height: 15px;
    background: 0 0;
    border: 2px solid #333!important;
    margin-left: -6px;
    position: relative;
    top: -6px;
    display: block
}

.pagination li a:after {
    content: attr(title);
    color: #333;
    letter-spacing: .07em;
    text-align: center;
    text-transform: uppercase;
    width: 200px;
    position: absolute;
    top: -40px;
    left: 50%;
    margin-left: -96px;
    visibility: hidden;
    opacity: 0;
    -webkit-transition: all .3s ease;
    transition: all .3s ease
}

.pagination li a:hover:after {
    visibility: visible;
    opacity: 1;
    top: -20px
}

#request-a-meeting {
    color: #000;
    display: inline-block;
    left: auto;
    margin: 10px 0 0;
    position: relative;
    top: auto
}

.slideLeftOut {
    -webkit-animation: slideLeftOut .5s forwards ease;
    animation: slideLeftOut .5s forwards ease
}

.slideLeftIn {
    -webkit-animation: slideLeftIn .5s forwards ease;
    animation: slideLeftIn .5s forwards ease
}

.slideRightOut {
    -webkit-animation: slideRightOut .5s forwards ease;
    animation: slideRightOut .5s forwards ease
}

.slideRightIn {
    -webkit-animation: slideRightIn .5s forwards ease;
    animation: slideRightIn .5s forwards ease
}

#core-menu {
    height: 100%;
    position: fixed;
    top: 0;
    left: -245px;
    z-index: 3
}

#core-menu nav ul {
    list-style: none
}

#core-menu a {
    color: #000
}

#core-menu aside {
    width: 244px;
    height: 100%;
    background-color: rgba(255, 255, 255, .9);
    padding-top: 25px;
    padding-left: 25px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    margin-right: 1px;
    float: left
}

#core-menu-button {
    width: 80px;
    height: 80px;
    background-color: #1ca1da;
    position: absolute;
    top: 0;
    right: -80px;
    z-index: 6
}

#core-menu-icon {
    padding: 29px;
    cursor: pointer;
    user-select: none
}

#core-menu-button .lines {
    display: inline-block;
    width: 2rem;
    height: 3px;
    background: #fff;
    border-radius: .2rem;
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
    position: relative
}

#core-menu-button:hover .lines,
#core-menu-button:hover .lines:after,
#core-menu-button:hover .lines:before {
    background-color: #ccc
}

#core-menu-button .lines:after,
#core-menu-button .lines:before {
    display: inline-block;
    width: 2rem;
    height: 3px;
    background: #fff;
    border-radius: .2rem;
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
    position: absolute;
    left: 0;
    content: '';
    -webkit-transform-origin: .1rem center;
    transform-origin: .1rem center
}

#core-menu-button .lines:before {
    top: .6rem
}

#core-menu-button .lines:after {
    top: -.6rem
}

#core-menu.open #core-menu-icon .lines,
#core-menu.sub #core-menu-icon .lines {
    background: 0 0
}

#core-menu.open #core-menu-icon:hover .lines:after,
#core-menu.open #core-menu-icon:hover .lines:before,
#core-menu.sub #core-menu-icon:hover .lines:after,
#core-menu.sub #core-menu-icon:hover .lines:before {
    background-color: #ccc
}

#core-menu.open #core-menu-icon .lines:after,
#core-menu.open #core-menu-icon .lines:before,
#core-menu.sub #core-menu-icon .lines:after,
#core-menu.sub #core-menu-icon .lines:before {
    -webkit-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    top: 0;
    left: -4px;
    width: 2.5rem
}

#core-menu.open #core-menu-icon .lines:before,
#core-menu.sub #core-menu-icon .lines:before {
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg)
}

#core-menu.open #core-menu-icon .lines:after,
#core-menu.sub #core-menu-icon .lines:after {
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg)
}

#core-logo h1 {
    font-family: Arial;
    text-indent: -9999px;
    background: url(images/logo.png) no-repeat left top;
    margin: 0 0 35px
}

#core-logo h1:hover {
    background-image: url(images/logo.png) no-repeat left top;
}

#core-nav {
    width: 291px
}

#core-nav nav {
    float: left
}

#core-nav nav ul {
    padding-left: 0;
    display: none
}

#core-nav nav ul#core-main {
    display: block
}

#core-main {
    margin-top: 0
}

#core-main a {
    font-size: 16px;
    font-family: arial;
    width: 150px;
    border-bottom: 2px solid #fff;
    padding-bottom: 5px;
    margin-bottom: 20px;
    display: block;
    opacity: 0;
    -webkit-transition: color .3s ease;
    transition: color .3s ease;
		cursor:pointer
}

#core-main a:hover {
    color: #ccc
}

#core-sub-nav {
    width: 0;
    padding: 25px 20px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    float: left;
    display: none
}

#core-work ul {
    padding-left: 0
}

#core-work li {
    width: 50%;
    text-align: center;
    margin-bottom: 30px;
    float: left;
    display: none
}

#core-work a {
    opacity: 1
}

#core-work a.active,
#core-work a:hover {
    opacity: .5
}

#core-work img {
    width: 100%;
    max-width: 188px;
    height: auto
}

#core-footer {
    position: absolute;
    bottom: 20px;
    left: 25px;
    font-family: arial;
}

#core-footer-nav {
    width: 100%;
    margin-bottom: 20px
}

#core-footer li {
    margin-bottom: 10px
}

#core-footer ul {
    list-style: none;
    padding-left: 0
}

#core-nav nav#core-footer-nav ul {
    display: block
}

#core-footer section {
    font-style: italic
}

#core-footer a:hover {
    -webkit-transition: color .3s ease;
    transition: color .3s ease;
    color: #ccc
}

#content-cover {
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, .25);
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1;
    display: none
}

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

.grain:after {
    content: '';
    width: 110%;
    height: 110%;
    background: url(../images/bg_grain.png) repeat center center;
    -webkit-animation: grain .5s 0s steps(1) infinite;
    animation: grain .5s 0s steps(1) infinite;
    position: absolute;
    top: -5%;
    left: -5%;
    display: block
}

.icon-mute {
    color: #fff;
    font-size: 18px;
    letter-spacing: .07em;
    text-transform: uppercase;
    display: block;
    position: absolute;
    right: 10px;
    bottom: 3px;
    z-index: 1
}

@media only screen and (min-width:1510px) {
    .subpage {
        background-size: contain
    }
}

@media only screen and (max-width:1024px) {
    html {
        overflow-x: auto
    }
    #core-menu-button {
        width: 75px;
        height: 75px;
        right: -75px
    }
    #core-menu-icon {
        padding: 26px
    }
    .page {
        padding: 30px 0
    }
    .multi-container {
        padding: 30px 30px 0
    }
    .img-left,
    .img-right {
        margin-bottom: 30px
    }
    .subpage {
        background-size: contain;
        padding-top: 80px
    }
    #core-menu aside {
        overflow: hidden
    }
    #core-nav-menu-container {
        width: 200px;
        height: 100%;
        overflow: scroll;
        -webkit-overflow-scrolling: touch
    }
    #core-nav {
        width: 200px
    }
    #core-footer {
        padding-bottom: 60px;
        clear: both;
        position: relative;
        left: auto;
        bottom: auto
    }
    #core-work {
        height: 100%;
        overflow: scroll;
        -webkit-overflow-scrolling: touch
    }
    #core-work li {
        width: 100%;
        padding-right: 30px;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box
    }
    video.video-fullscreen {
        width: 100%;
        position: absolute
    }
    .icon-play {
        color: #fff;
        font-size: 18px;
        letter-spacing: .07em;
        text-transform: uppercase;
        display: block;
        position: absolute;
        right: 10px;
        bottom: 3px
    }
    .icon-play .icon {
        position: absolute;
        right: 0;
        bottom: 0;
        -webkit-animation: mobileIcon 1s 2.5s forwards linear;
        animation: mobileIcon 1s 2.5s forwards linear
    }
    .icon-play .icon-label {
        position: absolute;
        right: 0;
        bottom: 0;
        opacity: 0;
        -webkit-animation: mobileIconLabel 1s 2.5s forwards ease;
        animation: mobileIconLabel 1s 2.5s forwards ease
    }
    .back-to-top {
        text-align: center;
        margin-top: 30px;
        position: relative;
        display: block
    }
    .back-to-top:before {
        content: '';
        margin-left: 5px;
        vertical-align: middle;
        border-top: none;
        border-bottom: 10px solid #333;
        border-right: 10px solid transparent;
        border-left: 10px solid transparent;
        display: inline-block
    }
}

@media only screen and (max-width:640px) {
    #request-a-meeting {
        padding-left: 0;
        padding-right: 0
    }
}

@media only screen and (-webkit-min-device-pixel-ratio:2),
only screen and (-webkit-min-device-pixel-ratio:1.5),
only screen and (-moz-min-device-pixel-ratio:2),
only screen and (-o-min-device-pixel-ratio:3 / 2),
only screen and (-o-min-device-pixel-ratio:2 / 1),
only screen and (min--moz-device-pixel-ratio:1.5),
only screen and (min-device-pixel-ratio:1.5),
only screen and (min-device-pixel-ratio:2) {
    #core-logo h1 {
        background-image: url(logo.png);
        background-size: 99px 31px
    }
}

@keyframes fadeIn {
    0% {
        opacity: 0
    }
    100% {
        opacity: 1
    }
}

@keyframes scaleUp {
    0% {
        transform: scale(0.5)
    }
    100% {
        transform: scale(1)
    }
}

@keyframes fadeUp {
    0% {
        opacity: 0;
        transform: translateY(1000px) rotateY(-180deg)
    }
    100% {
        opacity: 1;
        transform: translateY(0) rotateY(0deg)
    }
}

@keyframes fadeDown {
    0% {
        opacity: 0;
        transform: translateY(-1000px) rotateY(180deg)
    }
    100% {
        opacity: 1;
        transform: translateY(0) rotateY(0deg)
    }
}

@keyframes flipUp {
    0% {
        transform: rotateX(0deg)
    }
    100% {
        transform: rotateX(-180deg)
    }
}

@keyframes flipBack {
    0% {
        transform: rotateX(0deg)
    }
    100% {
        transform: rotateX(-90deg)
    }
}

@keyframes slideUp {
    0% {
        transform: translateY(500px)
    }
    100% {
        transform: translateY(0)
    }
}

@keyframes slideDown {
    0% {
        transform: scale(1) translateY(0)
    }
    50% {
        transform: scale(0.85) translateY(0)
    }
    100% {
        transform: scale(0.85) translateY(500px)
    }
}

@keyframes slideLeftOut {
    0% {
        transform: scale(1) translateX(0);
        opacity: 1
    }
    25% {
        transform: scale(0.75) translateX(0);
        opacity: 1
    }
    100% {
        transform: scale(0.75) translateX(-500px);
        opacity: 0
    }
}

@keyframes slideLeftIn {
    0% {
        transform: scale(0.75) translateX(500px);
        opacity: 0
    }
    75% {
        transform: scale(0.75) translateX(0);
        opacity: 1
    }
    100% {
        transform: scale(1) translateX(0);
        opacity: 1
    }
}

@keyframes slideRightOut {
    0% {
        transform: scale(1) translateX(0);
        opacity: 1
    }
    25% {
        transform: scale(0.75) translateX(0);
        opacity: 1
    }
    100% {
        transform: scale(0.75) translateX(500px);
        opacity: 0
    }
}

@keyframes slideRightIn {
    0% {
        transform: scale(0.75) translateX(-500px);
        opacity: 0
    }
    75% {
        transform: scale(0.75) translateX(0);
        opacity: 1
    }
    100% {
        transform: scale(1) translateX(0);
        opacity: 1
    }
}

@keyframes kenburns {
    0% {
        transform: scale(1) rotate(0deg)
    }
    50% {
        transform: scale(1.4) rotate(0.3deg)
    }
    100% {
        transform: scale(1) rotate(0deg)
    }
}

@keyframes grain {
    0%,
    100% {
        transform: translate(0, 0, 0)
    }
    10% {
        transform: translate(-1%, -1%)
    }
    20% {
        transform: translate(1%, 1%)
    }
    30% {
        transform: translate(-2%, -2%)
    }
    40% {
        transform: translate(3%, 3%)
    }
    50% {
        transform: translate(-3%, -3%)
    }
    60% {
        transform: translate(4%, 4%)
    }
    70% {
        transform: translate(-4%, -4%)
    }
    80% {
        transform: translate(2%, 2%)
    }
    90% {
        transform: translate(-2%, -2%)
    }
}

@keyframes mobileIcon {
    0%,
    10% {
        right: 0
    }
    30%,
    80% {
        right: 60px
    }
    100%,
    90% {
        right: 0
    }
}

@keyframes mobileIconLabel {
    0%,
    20% {
        opacity: 0
    }
    35%,
    80% {
        opacity: 1
    }
    100%,
    90% {
        opacity: 0
    }
}

@-webkit-keyframes fadeIn {
    0% {
        opacity: 0
    }
    100% {
        opacity: 1
    }
}

@-webkit-keyframes scaleUp {
    0% {
        -webkit-transform: scale(0.5)
    }
    100% {
        -webkit-transform: scale(1)
    }
}

@-webkit-keyframes fadeUp {
    0% {
        opacity: 0;
        -webkit-transform: translateY(1000px) rotateY(-180deg)
    }
    100% {
        opacity: 1;
        -webkit-transform: translateY(0) rotateY(0deg)
    }
}

@-webkit-keyframes fadeDown {
    0% {
        opacity: 0;
        -webkit-transform: translateY(-1000px) rotateY(180deg)
    }
    100% {
        opacity: 1;
        -webkit-transform: translateY(0) rotateY(0deg)
    }
}

@-webkit-keyframes flipUp {
    0% {
        -webkit-transform: rotateX(0deg)
    }
    100% {
        -webkit-transform: rotateX(-180deg)
    }
}

@-webkit-keyframes flipBack {
    0% {
        -webkit-transform: rotateX(0deg)
    }
    100% {
        -webkit-transform: rotateX(-90deg)
    }
}

@-webkit-keyframes slideUp {
    0% {
        -webkit-transform: translateY(500px)
    }
    100% {
        -webkit-transform: translateY(0)
    }
}

@-webkit-keyframes slideDown {
    0% {
        -webkit-transform: scale(1) translateY(0)
    }
    50% {
        -webkit-transform: scale(0.85) translateY(0)
    }
    100% {
        -webkit-transform: scale(0.85) translateY(500px)
    }
}

@-webkit-keyframes slideLeftOut {
    0% {
        -webkit-transform: scale(1) translateX(0);
        opacity: 1
    }
    25% {
        -webkit-transform: scale(0.75) translateX(0);
        opacity: 1
    }
    100% {
        -webkit-transform: scale(0.75) translateX(-500px);
        opacity: 0
    }
}

@-webkit-keyframes slideLeftIn {
    0% {
        -webkit-transform: scale(0.75) translateX(500px);
        opacity: 0
    }
    75% {
        -webkit-transform: scale(0.75) translateX(0);
        opacity: 1
    }
    100% {
        -webkit-transform: scale(1) translateX(0);
        opacity: 1
    }
}

@-webkit-keyframes slideRightOut {
    0% {
        -webkit-transform: scale(1) translateX(0);
        opacity: 1
    }
    25% {
        -webkit-transform: scale(0.75) translateX(0);
        opacity: 1
    }
    100% {
        -webkit-transform: scale(0.75) translateX(500px);
        opacity: 0
    }
}

@-webkit-keyframes slideRightIn {
    0% {
        -webkit-transform: scale(0.75) translateX(-500px);
        opacity: 0
    }
    75% {
        -webkit-transform: scale(0.75) translateX(0);
        opacity: 1
    }
    100% {
        -webkit-transform: scale(1) translateX(0);
        opacity: 1
    }
}

@-webkit-keyframes kenburns {
    0% {
        -webkit-transform: scale(1) rotate(0deg)
    }
    50% {
        -webkit-transform: scale(1.4) rotate(0.3deg)
    }
    100% {
        -webkit-transform: scale(1) rotate(0deg)
    }
}

@-webkit-keyframes grain {
    0%,
    100% {
        -webkit-transform: translate(0, 0, 0)
    }
    10% {
        -webkit-transform: translate(-1%, -1%)
    }
    20% {
        -webkit-transform: translate(1%, 1%)
    }
    30% {
        -webkit-transform: translate(-2%, -2%)
    }
    40% {
        -webkit-transform: translate(3%, 3%)
    }
    50% {
        -webkit-transform: translate(-3%, -3%)
    }
    60% {
        -webkit-transform: translate(4%, 4%)
    }
    70% {
        -webkit-transform: translate(-4%, -4%)
    }
    80% {
        -webkit-transform: translate(2%, 2%)
    }
    90% {
        -webkit-transform: translate(-2%, -2%)
    }
}

@-webkit-keyframes mobileIcon {
    0%,
    10% {
        right: 0
    }
    30%,
    80% {
        right: 60px
    }
    100%,
    90% {
        right: 0
    }
}

@-webkit-keyframes mobileIconLabel {
    0%,
    20% {
        opacity: 0
    }
    35%,
    80% {
        opacity: 1
    }
    100%,
    90% {
        opacity: 0
    }
}

@media only screen and (max-width:1024px) {
    @keyframes fadeUp {
        0% {
            opacity: 0;
            transform: translateY(320px)
        }
        100% {
            opacity: 1;
            transform: translateY(0)
        }
    }
    @keyframes fadeDown {
        0% {
            opacity: 0;
            transform: translateY(-320px)
        }
        100% {
            opacity: 1;
            transform: translateY(0)
        }
    }
    @-webkit-keyframes fadeUp {
        0% {
            opacity: 0;
            -webkit-transform: translateY(320px)
        }
        100% {
            opacity: 1;
            -webkit-transform: translateY(0)
        }
    }
    @-webkit-keyframes fadeDown {
        0% {
            opacity: 0;
            -webkit-transform: translateY(-320px)
        }
        100% {
            opacity: 1;
            -webkit-transform: translateY(0)
        }
    }
}

html.home {
    background-color: #1c1c1c
}

.onepage-pagination {
    display: none
}

#previous-slide {
    background-position: right center;
    border-right: 15px solid transparent;
    position: absolute;
    top: 5px;
    right: 0;
    z-index: 2;
    display: none
}

#next-slide {
    background-position: right center;
    border-right: 15px solid transparent;
    position: absolute;
    bottom: 5px;
    right: 0;
    z-index: 2;
    display: none
}

#slide-container {
    width: 100%;
    height: 100%;
    overflow: hidden;
	background-color: black
}

#slides {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0
}

.slide {
    width: 100%;
    height: 100%;
    opacity: .5;
    -webkit-transition: opacity 1s ease;
    transition: opacity 1s ease;
    overflow: hidden;
    -webkit-perspective: 1000px;
    perspective: 1000px
}

.slide-bg {
    width: 100%;
    height: 100%;
    background-position: center center;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    background-size: cover;
    -webkit-transform-origin: 80% 20%;
    transform-origin: 80% 20%;
    position: relative;
    z-index: -2
}

.slide.kenburns .slide-bg {
    -webkit-animation: kenburns 120s infinite linear;
    animation: kenburns 120s infinite linear
}

.slide.active {
    opacity: 1;
    z-index: 1
}

.slide-video .ui-button {
    margin-left: -118px;
    z-index: 2;
    display: none
}

.video-still {
    width: 100%;
    height: 100%;
    background: url(logo.png) no-repeat center center;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1
}

.card-container {
    width: 285px;
    height: 285px;
    position: absolute;
    top: 50%;
    left: 50%;
    margin: -142px 0 0 -142px;
    -webkit-perspective: 1000px;
    perspective: 1000px;
    z-index: 2
}

.slide.active.spin-up .card {
    -webkit-animation: fadeUp 1s forwards ease;
    animation: fadeUp 1s forwards ease
}

.slide.active.spin-down .card {
    -webkit-animation: fadeDown 1s forwards ease;
    animation: fadeDown 1s forwards ease
}

.card {
    -webkit-transform-style: preserve-3d;
    transform-style: preserve-3d
}

.card-back,
.card-front {
    width: 285px;
    height: 285px;
    background-color: rgba(255, 255, 255, .8);
    color: #333;
    text-align: center;
    padding: 40px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    outline: 1px solid transparent;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 10;
    -webkit-backface-visibility: hidden;
    -ms-backface-visibility: hidden;
    -o-backface-visibility: hidden;
    backface-visibility: hidden;
    -webkit-transition: all .3s ease;
    transition: all .3s ease
}

.card-back {
    background-color: rgba(0, 0, 0, .8);
    padding: 40px 20px;
    -webkit-transform: rotateY(180deg);
    transform: rotateY(180deg);
    z-index: 0
}

.card-container.flip .card-front,
.card-container:hover .card-front {
    -webkit-transform: rotateY(180deg);
    transform: rotateY(180deg);
    z-index: 0
}

.card-container.flip .card-back,
.card-container:hover .card-back {
    -webkit-transform: rotateY(360deg);
    transform: rotateY(360deg);
    z-index: 10
}

.card-title-divider {
    border-bottom: 1px solid #777;
    margin: 50px 0 30px
}

.card-title {
    color: #333;
    font-size: 22px;
    text-transform: uppercase;
    display: block
}

.card-back .card-title {
    color: #fff;
    border: none;
    margin-top: 90px;
    -webkit-transition: color .3s ease;
    transition: color .3s ease
}

.card .card-back a {
    display: block
}

.card a .card-title:hover {
    color: #ccc
}

.card-info {
    font-family: 'Titillium Web', sans serif;
    font-size: 12px;
    font-style: italic;
    margin-top: 8px;
    margin-bottom: 0
}

@media only screen and (max-width:1024px) {
    .onepage-pagination {
        top: auto;
        bottom: 10px;
        left: 5px
    }
    .slide-video video {
        z-index: 2;
        display: none
    }
    .card-container {
        width: 235px;
        height: 235px;
        margin: -117px 0 0 -117px
    }
    .card-back,
    .card-front {
        width: 235px;
        height: 235px;
        padding: 20px
    }
    .card-back .card-title {
        font-size: 18px
    }
    .slide.active.spin-up .card {
        -webkit-animation: fadeUp .5s forwards ease;
        animation: fadeUp .5s forwards ease
    }
    .slide.active.spin-down .card {
        -webkit-animation: fadeDown .5s forwards ease;
        animation: fadeDown .5s forwards ease
    }
}

#people {
    padding-top: 0
}

#people .page {
    padding-top: 0;
    padding-bottom: 80px
}

.info-block h1 {
    font-size: 22px;
    font-weight: 500;
    margin-top: 80px
}

.info-block {
    font-size: 18px;
    text-align: center;
    line-height: 30px;
    letter-spacing: .03em;
    padding-bottom: 80px;
    position: relative
}

.info-block p:last-of-type {
    margin-bottom: 0
}

.partner-bio {
    width: 100%;
    overflow: auto;
    position: relative
}

.partner-description {
    min-height: 600px;
    font-size: 14px;
    line-height: 20px;
    letter-spacing: .03em;
    background-color: #f3f3f3;
    padding: 50px 50px 0;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-transition: padding .3s ease;
    transition: padding .3s ease
}

.people-heading {
    font-family: 'Titillium Web', sans serif;
    font-size: 14px;
    font-style: italic;
    text-transform: none;
    width: 55%;
    padding-bottom: 15px;
    border-bottom: 1px solid #ccc;
    margin-top: 0
}

.people-subheading {
    font-size: 22px;
    font-weight: 500;
    margin-bottom: 30px
}

.people-social-links a {
    color: #333;
    text-transform: uppercase;
    margin-right: 20px;
    margin-bottom: 5px;
    display: block;
    float: left
}

.partner-video-container {
    overflow: hidden
}

.partner-video {
    min-height: 600px
}

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

.partner-video img {
    width: 100%;
    height: auto
}

.partner-front {
    display: block
}

#people-join {
    margin-top: 20px;
    margin-left: -163px
}

#pushers {
    overflow: auto
}

.pusher {
    cursor: pointer;
    width: 25%;
    padding-left: 1px;
    padding-right: 1px;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    border-bottom: 2px solid #fff;
    float: left;
    position: relative;
    overflow: hidden
}

.pusher-info {
    width: 100%;
    height: 100%;
    text-align: center;
    background-color: rgba(0, 0, 0, .7);
    padding-top: 21%;
    padding-bottom: 32%;
    margin: 2px 6px;
    display: table;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    -webkit-transition: opacity .3s ease;
    transition: opacity .3s ease
}

.pusher-info-container {
    width: 100%;
    height: 100%;
    display: table-cell;
    vertical-align: middle
}

.pusher-info-divider {
    width: 70%;
    border-bottom: 1px solid #fff;
    margin: 0 auto 20px
}

.pusher-info-title {
    color: #fff;
    font-family: 'Titillium Web', sans serif;
    font-size: 14px;
    font-style: italic;
    letter-spacing: .07em;
    margin-top: 0;
    margin-bottom: 20px;
    display: block
}

.pusher-info-name {
    color: #fff;
    font-size: 16px;
    font-weight: 500;
    text-transform: uppercase;
    margin-top: 8px;
    margin-bottom: 0
}

.pusher img {
    width: 100%;
    height: auto;
    margin: 2px 5px 0;
    display: block
}

.pusher:hover .pusher-info {
    opacity: 1
}

.pusher:after {
    content: '';
    width: 100%;
    height: 13px;
    background: url(../images/people/pusher_plus.png) no-repeat center center;
    position: absolute;
    bottom: 20px;
    opacity: 0;
    -webkit-transition: opacity .3s ease;
    transition: opacity .3s ease
}

.pusher:hover:after {
    opacity: 1
}

#pusher-modal {
    width: 480px;
    text-align: center;
    color: #fff;
    padding: 0 40px 40px;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    position: absolute;
    top: 100px;
    left: 50%;
    margin-left: -240px;
    z-index: 3;
    display: none;
    -webkit-transition: top .3s ease;
    transition: top .3s ease
}

#pusher-modal-video {
    width: 290px;
    height: 290px;
    margin: 0 auto 40px
}

#pusher-modal video {
    -webkit-mask-image: url(../videos/video-mask.png);
    border-radius: 100%;
    display: block;
    position: relative
}

#pusher-modal-image {
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
    width: 290px;
    height: 290px;
    border-radius: 290px;
    margin: 0 auto 40px;
    position: relative
}

#pusher-modal-description {
    margin-bottom: 20px
}

#pusher-modal .people-heading {
    padding-bottom: 20px;
    margin-left: auto;
    margin-right: auto
}

#pusher-modal .people-subheading {
    font-weight: 400
}

#pusher-modal p {
    color: #bfbfbf;
    font-size: 14px;
    line-height: 20px;
    letter-spacing: .03em
}

#pusher-modal .people-social-links {
    margin-top: 30px
}

#pusher-modal a {
    width: 100%;
    color: #fff;
    font-size: 14px;
    text-decoration: underline;
    line-height: 20px;
    letter-spacing: .03em;
    text-align: center;
    display: block;
    float: none
}

@media only screen and (max-width:1200px) {
    .partner-bio {
        background-color: #f3f3f3
    }
    .partner-description,
    .partner-video {
        min-height: 1px
    }
}

@media only screen and (max-width:1185px) {
    .partner-description {
        font-size: 12px;
        padding: 30px 30px 0
    }
}

@media only screen and (max-width:1024px) {
    #people .page {
        padding-bottom: 40px
    }
    #video-header {
        height: 432px
    }
    #people #video-header.playing {
        height: 100%;
        position: absolute;
        z-index: 1
    }
    #people #video-header {
        background-image: url(../videos/people_video-still.jpg)
    }
    #video-header video {
        width: 100%;
        height: auto;
        min-height: 100%;
        position: absolute;
        z-index: 2;
        display: none
    }
    .people-heading {
        margin-left: auto;
        margin-right: auto
    }
    .partner-description {
        width: 100%;
        min-height: 1px;
        background-color: #f3f3f3;
        font-size: 14px;
        text-align: center;
        padding: 30px
    }
    .partner-video-container {
        width: 100%
    }
    .partner-video {
        min-height: 305px
    }
    .people-social-links {
        margin-right: 0;
        float: none
    }
    .people-social-links a {
        margin-right: 0;
        display: block;
        float: none
    }
    .pusher {
        width: 33%
    }
    .info-block {
        padding-bottom: 40px
    }
    #people .back-to-top,
    .info-block h1 {
        margin-top: 40px
    }
}

@media only screen and (max-width:767px) {
    #video-header {
        height: 239px
    }
    .pusher {
        width: 50%;
        padding-left: 0;
        padding-right: 0
    }
}

@media only screen and (max-width:480px) {
    #people-join {
        padding-left: 0;
        padding-right: 0;
        margin-left: -50%
    }
    .pusher {
        width: 100%;
        max-width: 297px;
        margin-left: auto;
        margin-right: auto;
        float: none
    }
    #people-join-container {
        padding-bottom: 80px
    }
    #people-join {
        width: 100%
    }
    #people-join .button span {
        font-size: 15px
    }
    #people .back-to-top {
        margin-top: 0
    }
    #pusher-modal {
        width: 100%;
        left: 0;
        margin-left: 0
    }
    #pusher-modal-video {
        position: relative;
        left: -15px
    }
}

@media only screen and (max-width:320px) {
    #pusher-modal-image {
        left: -25px
    }
}

img.onScreen {
    opacity: 0;
    -webkit-transition: opacity 1s ease-out;
    transition: opacity 1s ease-out
}

img.onScreen.transition {
    opacity: 1
}

.fixed-full-bg {
    min-height: 1000px;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    background-attachment: fixed
}

#core-logo {
    cursor: pointer
}

#corkcicle,
#hubbly-bubbly,
#italio,
#old-chicago,
#social,
#sonnys,
#valencia {
    padding-top: 0
}

.case-study-header {
    margin-bottom: 60px
}

#video-header {
    width: 100%;
    height: auto;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center
}

#video-header video {
    display: block
}

.case-study-client {
    font-size: 18px;
    letter-spacing: .07em;
    text-transform: uppercase;
    padding-bottom: 8px;
    border-bottom: 2px solid #333
}

.case-study-tags {
    font-family: 'Titillium Web', sans serif;
    font-size: 12px;
    font-style: italic;
    text-align: right;
    display: block
}

.case-study-title {
    text-align: center;
    margin-bottom: 70px
}

.case-study-title.top {
    margin-top: 50px
}

.case-study-title h3 {
    font-family: 'Titillium Web', sans serif;
    font-size: 12px;
    font-weight: 400;
    font-style: italic;
    text-transform: none;
    padding-bottom: 30px;
    border-bottom: 1px solid #ccc;
    margin-top: 0;
    margin-bottom: 30px
}

.case-study-title h2 {
    font-size: 22px;
    font-weight: 400;
    letter-spacing: .07em;
    text-transform: uppercase;
    margin-bottom: 0
}

.case-study-video {
    text-align: center;
    position: relative
}

.case-study-video .ui-button {
    margin-left: -118px
}

.case-study-video .img-100 {
    margin-bottom: 0
}

#case-study-infograph {
    background-color: #f5f5f5;
    padding-top: 50px;
    padding-bottom: 30px
}

#case-study-infograph h3 {
    color: #545454;
    font-size: 12px;
    text-align: center;
    margin-top: 0
}

#case-study-infograph h4 {
    color: #818386;
    font-size: 12px;
    font-weight: 400;
    font-style: italic;
    margin-top: 30px;
    margin-bottom: 0
}

.info-bubble-container {
    min-height: 122px;
    margin-top: 20px;
    margin-bottom: 40px;
    position: relative;
    float: right
}

.info-bubble {
    background-color: rgba(231, 231, 231, .6);
    padding: 55%;
    border-radius: 100%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    position: absolute;
    top: 0;
    -webkit-transform: scale(0.25);
    transform: scale(0.25);
    opacity: 0;
    -webkit-transition: all 2s ease-out;
    transition: all 2s ease-out
}

#case-study-infograph .info-bubble.transition {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1
}

#sonnys .info-bubble.active {
    background-color: rgba(175, 12, 38, .7)
}

#corkcicle .info-bubble.active {
    background-color: rgba(0, 0, 0, .7)
}

#valencia .info-bubble.active {
    background-color: rgba(253, 186, 24, .8)
}

#italio .info-bubble.active {
    background-color: rgba(227, 37, 46, .9)
}

#old-chicago .info-bubble.active {
    background-color: rgba(43, 67, 90, .9)
}

#hubbly-bubbly .info-bubble.active {
    background-color: rgba(38, 181, 213, .9)
}

.info-bubble span {
    width: 100%;
    color: #fff;
    font-size: 14px;
    text-align: center;
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    margin-top: -10px;
    margin-left: -50%
}

#audience {
    text-align: center;
    margin-bottom: 10px
}

#audience-count {
    color: #e5e5e5;
    font-size: 96px;
    text-align: left;
    line-height: 65px;
    margin-top: 10px;
    display: block;
    opacity: 0
}

#audience-count.transition {
    -webkit-animation: fadeIn 1s 1.5s forwards;
    animation: fadeIn 1s 1.5s forwards
}

#audience-disclaimer {
    color: #e5e5e5;
    text-align: left
}

#infograph-section-2 {
    clear: both
}

#audience-count em {
    font-style: normal
}

#sonnys #audience-count em {
    color: #af0c26
}

#corkcicle #audience-count em {
    color: #231f20
}

#valencia #audience-count em {
    color: #fdba18
}

#italio #audience-count em {
    color: #e3252e
}

#old-chicago #audience-count em {
    color: #2b435a
}

#hubbly-bubbly #audience-count em {
    color: #26b5d5
}

#service-graph {
    max-width: 431px;
    text-align: center;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: contain;
    margin: 0 auto 40px;
    position: relative
}

#service-values {
    width: 0;
    overflow: hidden;
    -webkit-transition: width 2s ease-out;
    transition: width 2s ease-out
}

#service-values img {
    display: block
}

#service-graph.transition #service-values {
    width: 100%;
    max-width: 431px
}

#growth-graph {
    max-width: 431px;
    text-align: center;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: contain;
    margin: 0 auto 40px;
    position: relative
}

#growth-values {
    width: 0;
    overflow: hidden;
    -webkit-transition: width 2s ease-out;
    transition: width 2s ease-out
}

#growth-values img {
    display: block
}

#growth-graph.transition #growth-values {
    width: 100%;
    max-width: 431px
}

#target-demo {
    color: #818386;
    font-size: 13px;
    margin-bottom: 40px;
    position: relative
}

#target-demo-container {
    background-color: transparent;
    padding: 40px 130px 40px 40px;
    -webkit-transition: background-color 1s 2s ease-out;
    transition: background-color 1s 2s ease-out
}

#target-demo.transition #target-demo-container {
    background-color: #eee
}

#target-demo-title {
    font-size: 66px;
    letter-spacing: .03em;
    line-height: 45px;
    margin-top: 0;
    margin-bottom: 30px
}

#sonnys #target-demo-title {
    color: #af0c26
}

#corkcicle #target-demo-title {
    color: #231f20
}

#italio #target-demo-title {
    color: #da0b24
}

#old-chicago #target-demo-title {
    color: #2b435a
}

#hubbly-bubbly #target-demo-title {
    color: #26b5d5
}

#target-demo ul {
    list-style: none;
    padding-left: 0
}

#target-demo li {
    padding-bottom: 12px
}

#target-demo-container h3 {
    text-align: left;
    margin-bottom: 5px
}

#target-demo p {
    margin: 0
}

#target-demo .case-study-person {
    position: absolute;
    top: -84px;
    opacity: 0;
    right: -200px;
    -webkit-transition: all 1s 1s ease-out;
    transition: all 1s 1s ease-out
}

#valencia #target-demo .case-study-person {
    top: 0
}

#target-demo #target-demo-title {
    opacity: 0;
    -webkit-transition: opacity 1s ease-out;
    transition: opacity 1s ease-out
}

#target-demo ul {
    opacity: 0;
    -webkit-transition: opacity 1s .5s ease-out;
    transition: opacity 1s .5s ease-out
}

#target-demo.transition #target-demo-title,
#target-demo.transition ul {
    opacity: 1
}

#target-demo.transition .case-study-person {
    opacity: 1;
    right: -100px
}

.slideshow {
    text-align: center;
    padding-bottom: 20px;
    overflow: auto
}

#case-study-next .pagination {
    text-align: center;
    position: relative;
    overflow: visible
}

.case-study .pagination {
    padding-top: 20px;
    margin-top: 0
}

.case-study .pagination li a {
    font-size: 12px
}

.case-study .pagination li a.active:before {
    background: transparent!important
}

.case-study .pagination li a:hover:before {
    background-color: #333
}

.case-study .pagination li a.active:hover:before {
    background-color: transparent
}

#social .page {
    padding: 0
}

#social .logo {
    width: 100px;
    position: absolute;
    left: 30px;
    top: 30px;
    z-index: 3
}

#social .logo a {
    display: block
}

#social .logo img {
    width: 100%
}

#social .topfold {
    position: relative
}

#social #video-header {
    background: #000;
    min-height: 400px
}

#social #video-header video {
    min-height: 400px
}

#social .topfold .grid-container {
    position: relative;
    top: -40px
}

#social .topfold .top-container {
    position: absolute;
    top: 25%;
    width: 100%;
    z-index: 2
}

#social .topfold img {
    width: 100%
}

#social-client {
    text-align: center
}

#social-client img {
    max-width: 150px;
    max-height: 85px;
    width: auto;
    height: auto
}

#social .case-study-title {
    margin-bottom: 0
}

#social .case-study-title h2 {
    font-size: 45px;
    text-transform: none;
    font-weight: 300;
    letter-spacing: initial
}

#social .case-study-title h3 {
    font-family: inherit;
    font-size: 18px;
    font-weight: 400;
    font-style: normal;
    border: none;
    margin: 40px 0 0;
    padding-bottom: 18px;
    border-bottom: none
}

#social .case-study-title p {
    font-size: 16px;
    line-height: 24px;
    margin-top: 30px;
    margin-bottom: 30px
}

#social .info-block {
    color: #707070;
    padding: 80px 0
}

#social .sm-services h3,
#social .sm-services p {
    letter-spacing: .03em;
    line-height: 22px
}

#social .sm-services h3 {
    font-size: 16px
}

#social .sm-services p {
    font-size: 13px;
    margin-top: 0
}

#social .sm-services h3,
#social .sm-services p {
    max-width: 250px;
    margin-left: auto;
    margin-right: auto
}

#social .full-bg .grid-container.sm-services {
    padding: 4% 0
}

#social .full-bg,
#social .full-bg .info-block {
    color: #fff
}

#social .full-bg {
    position: relative
}

#social .full-bg .grid-container {
    padding: 10% 0
}

#social .full-bg .grid-container.end-cta {
    padding-top: 0
}

#social .lonely {
    padding-top: 80px
}

#social .info-block p:last-of-type {
    padding-bottom: 40px
}

#social .lonely img {
    width: 85%;
    max-width: 355px
}

.circle {
    display: inline-block;
    width: 70px;
    height: 70px;
    background: rgba(225, 225, 225, .3);
    border-radius: 100%;
    padding: 30px
}

.full-bg .info-block h2 {
    margin-bottom: 30px;
    margin-top: 0;
    line-height: 1.2em
}

#campaign .grid-container,
#social .grid-container {
    max-width: 1050px
}

#social .full-bg .bottom-cta {
    position: absolute;
    bottom: 0;
    padding: 0 0 40px;
    text-align: center;
    font-size: 16px;
    color: #fff
}

#social .bottom-cta .social-modal-submit,
#social .submit-overlay .social-modal-submit {
    width: 270px
}

#social .bottom-cta .button,
#social .submit-overlay .button {
    border-radius: 5px;
    border-width: 2px;
    padding: 5px;
    transition: .2s;
    -webkit-transition: .2s
}

#social .bottom-cta .button:hover,
#social .submit-overlay .button:hover {
    background: #fff
}

#social .bottom-cta .button span,
#social .submit-overlay .button span {
    transition: .2s;
    -webkit-transition: .2s
}

#social .bottom-cta .button:hover span,
#social .submit-overlay .button:hover span {
    color: #000
}

#social .morepadding {
    padding-bottom: 30px
}

.submit-overlay h2 {
    text-transform: none;
    font-size: 40px;
    font-weight: 300
}

#social input {
    padding: 16px;
    font-size: 16px;
    margin: 10px;
    color: #000;
    border-radius: 5px;
    border: none
}

.social-modal-submit {
    display: inline-block;
    position: static;
    width: 225px
}

#social .case-study-title .button {
    border: none;
    background: #7ED321;
    padding: 3px;
    opacity: 1;
    border-radius: 5px;
    transition: background .2s;
    -webkit-transition: background .2s
}

#social .case-study-title .button:hover {
    background: #68B712
}

.social-button .button span {
    text-transform: none
}

#valencia-billboards {
    margin-top: 18px
}

#sonnys-building {
    margin-top: -160px;
    position: relative
}

.button-full-video {
    z-index: 1
}

.still-full-video {
    width: 100%;
    height: auto
}

.full-video {
    width: 100%;
    height: 100%;
    position: absolute;
    top: -2px;
    left: 0
}

#italio-illustration {
    margin-top: 20px;
    position: relative
}

#italio-illustration img {
    margin-bottom: 0
}

#italio-illustration-02 {
    opacity: 0;
    position: absolute;
    top: 0;
    left: 0
}

#old-chicago #additional-content {
    margin-bottom: 60px
}

#hubbly-drink-container,
#hubbly-pita-container {
    text-align: center
}

#additional-content #hubbly-pita-2 {
    display: none
}

#see-more {
    font-size: 18px;
    font-weight: 300;
    text-align: center;
    padding-top: 70px;
    position: relative
}

#see-more-title {
    font-size: 60px;
    text-transform: uppercase
}

@media only screen and (min-width:1025px) {
    .social-modal-submit {
        margin: 0 10px
    }
}

@media only screen and (max-width:1024px) {
    body,
    html {
        overflow-x: hidden
    }
    img.onScreen {
        opacity: 1;
        -webkit-transition: none;
        transition: none
    }
    .fixed-full-bg {
        min-height: 1px;
        background-image: none!important
    }
    .case-study .grid-50 {
        width: 50%;
        float: left;
        clear: none
    }
    #video-header {
        height: 432px
    }
    #video-header.playing {
        height: 100%;
        position: absolute;
        z-index: 1
    }
    #social .logo {
        position: relative;
        margin-bottom: 15px
    }
    #social .topfold .top-container {
        top: 100px
    }
    #social input {
        margin: 15px 10%
    }
    .social-modal-submit {
        width: 80%;
        padding: 0;
        margin-top: 15px
    }
    #social .case-study-title h2 {
        font-size: 30px
    }
    #social .case-study-title p {
        font-size: 14px
    }
    #social .tablet-grid-50 {
        width: 50%;
        clear: none;
        float: left;
        height: 370px
    }
    #social .full-bg:first-child:before {
        content: "";
        position: absolute;
        pointer-events: none;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: rgba(0, 0, 0, .3);
        visibility: visible
    }
    #social .full-bg .sm-services h2,
    #social .full-bg .sm-services h3,
    #social .full-bg .sm-services p {
        width: 350px;
        max-width: 90%;
        margin-left: auto;
        margin-right: auto
    }
    #social .sm-services .info-block {
        padding-bottom: 0
    }
    #social .full-bg .bottom-cta {
        position: static
    }
    #social .bottom-cta .social-modal-submit,
    #social .submit-overlay .social-modal-submit {
        width: 80%;
        margin-bottom: 30px;
        margin-top: 30px
    }
    #sonnys #video-header {
        background-image: url(../videos/sonnys_video-still_mobile.jpg)
    }
    #corkcicle #video-header {
        background-image: url(../videos/corkcicle_video-still_mobile.jpg)
    }
    #valencia #video-header {
        background-image: url(../videos/valencia_video-still.jpg)
    }
    #italio #video-header {
        background-image: url(../videos/italio_video-still.jpg)
    }
    #old-chicago #video-header {
        background-image: url(../videos/old-chicago_video-still.png)
    }
    #hubbly-bubbly #video-header {
        background-image: url(../videos/hubbly-bubbly_video-still_mobile.jpg)
    }
    #video-header video {
        width: 100%;
        height: auto;
        min-height: 100%;
        position: absolute;
        z-index: 2;
        display: none
    }
    .case-study-header {
        margin-bottom: 30px
    }
    .case-study-client {
        margin-bottom: 30px;
        display: inline-block
    }
    .case-study-tags {
        text-align: center
    }
    .case-study-title {
        margin-bottom: 30px
    }
    .case-study-title.top {
        margin-top: 30px
    }
    .case-study-title h2 {
        font-size: 18px
    }
    .info-bubble-container {
        min-height: 120px
    }
    .info-bubble span {
        font-size: 12px;
        margin-top: -8px
    }
    #audience-count {
        font-size: 72px;
        text-align: center
    }
    #audience-disclaimer {
        text-align: center
    }
    #case-study-infograph {
        padding-bottom: 0
    }
    #case-study-infograph .info-bubble {
        transition: none;
        -webkit-transform: scale(1);
        transform: scale(1);
        opacity: 1
    }
    #service-graph #service-values {
        transition: none;
        width: 100%
    }
    #service-graph img {
        width: 100%;
        max-width: 431px
    }
    #growth-graph #growth-dots,
    #growth-graph #growth-values {
        transition: none;
        width: 100%
    }
    #growth-graph img {
        width: 100%;
        max-width: 431px
    }
    #target-demo {
        margin-bottom: 0
    }
    #target-demo #target-demo-container {
        transition: none;
        background-color: #eee
    }
    #target-demo #target-demo-title {
        font-size: 50px;
        transition: none;
        opacity: 1
    }
    #target-demo ul {
        transition: none;
        opacity: 1
    }
    #old-chicago-building-02 {
        margin-bottom: 0
    }
    #hubbly-drink-container {
        width: 30%;
        float: left;
        clear: none
    }
    #hubbly-pita-container {
        width: 70%;
        float: left;
        clear: none
    }
    .case-study .back-to-top {
        text-align: center;
        position: relative;
        display: block
    }
    #sonnys-building {
        margin-top: 30px
    }
    #case-study-next {
        margin-bottom: 30px
    }
    #see-more {
        padding-bottom: 30px
    }
}

@media only screen and (max-width:767px) {
    #video-header {
        height: 239px
    }
    .case-study .img-left {
        padding-right: 0
    }
    .case-study .img-right {
        padding-left: 0
    }
    .case-study-header {
        text-align: center
    }
    .case-study-client {
        margin-bottom: 0
    }
    #info-bubbles {
        max-width: 431px;
        margin-left: auto;
        margin-right: auto;
        float: none
    }
    .info-bubble-container {
        min-height: 127px
    }
    #info-bubbles {
        margin-bottom: 20px
    }
    #audience,
    #growth-graph {
        margin-bottom: 40px
    }
    #target-demo {
        max-width: 431px;
        margin-left: auto;
        margin-right: auto;
        float: none
    }
    #target-demo-container {
        padding-right: 190px
    }
    #case-study-chart {
        margin-top: 30px;
        margin-bottom: 0
    }
    #additional-content .img-left,
    #additional-content .img-right {
        text-align: center;
        max-width: 431px;
        margin-left: auto;
        margin-right: auto;
        float: none;
        display: block
    }
    #additional-content #salad-bowl-1 {
        display: none
    }
    #additional-content #salad-bowl-2 {
        display: block
    }
    #additional-content #hubbly-pita-1 {
        display: none
    }
    #additional-content #hubbly-pita-2 {
        display: block
    }
    #hubbly-drink-container,
    #hubbly-pita-container {
        width: 100%!important
    }
    #additional-content #hubbly-drink-container .img-left {
        max-width: 211px
    }
    .slideshow .case-study-title {
        margin-bottom: 30px
    }
    .slideshow .pagination {
        padding-top: 15px;
        margin-top: 0
    }
    .slideshow-mobile {
        display: none
    }
}

@media only screen and (max-width:640px) {
    .case-study br {
        display: none
    }
    .case-study .campaign-copy br {
        display: block
    }
    .case-study .grid-20,
    .case-study .grid-50 {
        width: 100%
    }
    #audience-count {
        font-size: 56px
    }
    #target-demo-container {
        padding: 30px
    }
    #target-demo #target-demo-title {
        font-size: 40px;
        line-height: 30px
    }
    #target-demo .case-study-person {
        display: none
    }
    #see-more {
        font-size: 16px
    }
    #see-more-title {
        font-size: 40px
    }
    #social .tablet-grid-50 {
        width: 100%;
        clear: both;
        float: none
    }
    .submit-overlay h2 {
        font-size: 30px
    }
}

@media only screen and (max-width:320px) {
    #info-bubbles {
        margin-bottom: 0
    }
    .info-bubble-container {
        min-height: 70px
    }
    .info-bubble span {
        font-size: 9px;
        margin-top: -6px
    }
    #audience-count {
        text-align: left
    }
}

#process {
    padding-top: 0
}

#process .page {
    padding-top: 0;
    padding-bottom: 0
}

#process #video-header {
    height: auto;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center
}

#process #video-header video {
    display: block
}

#process-intro {
    background-color: #fff
}

#process .info-block h1 {
    font-size: 22px;
    font-weight: 500;
    margin-top: 80px
}

#process .info-block {
    font-size: 18px;
    text-align: center;
    line-height: 30px;
    letter-spacing: .03em;
    padding-bottom: 80px;
    position: relative
}

#placeholder-process,
#process .info-block p:last-of-type {
    margin-bottom: 0
}

#process-what-we-make {
    width: 100%;
    background: url(../images/process/bg_what-we-make.jpg);
    background-size: cover;
    background-attachment: fixed;
    padding-top: 60px;
    padding-bottom: 60px;
    margin-top: 80px;
    overflow: auto
}

#process-who-we-have-made-it-for {
    background-color: #f9f9f9;
    width: 100%;
    padding-top: 60px;
    padding-bottom: 60px;
    overflow: auto
}

#process .case-study-title {
    margin-bottom: 60px
}

.process-column {
    font-size: 14px;
    margin-bottom: 30px
}

.process-column h4 {
    font-weight: 500;
    text-transform: uppercase;
    display: block
}

.process-column ul {
    list-style: none;
    padding-left: 0
}

.process-column li {
    letter-spacing: .03em;
    margin-bottom: 5px
}

#process #slides {
    position: static
}

#process #slide-container {
    background-color: #f3f3f3;
    position: relative
}

#process #slide-container .case-study-title {
    position: absolute;
    top: 60px;
    z-index: 999;
    -webkit-transition: color 1s ease;
    transition: color 1s ease
}

.viewing-page-1 #process .case-study-title {
    color: #333
}

.viewing-page-2 #process .case-study-title,
.viewing-page-3 #process .case-study-title,
.viewing-page-4 #process .case-study-title,
.viewing-page-5 #process .case-study-title,
.viewing-page-6 #process .case-study-title {
    color: #fff
}

.viewing-page-7 #process .case-study-title {
    color: #333
}

.process-circle {
    text-align: center;
    background-color: rgba(255, 255, 255, .85);
    width: 400px;
    height: 400px;
    border-radius: 400px;
    display: table;
    position: absolute;
    top: 50%;
    left: 50%;
    margin-top: -200px;
    margin-left: -200px
}

.process-circle-content {
    padding: 50px;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    display: table-cell;
    vertical-align: middle;
    -webkit-transition: all .3s ease;
    transition: all .3s ease
}

.process-circle h2 {
    font-size: 20px;
    font-weight: 500
}

.process-circle p {
    font-size: 15px;
    font-weight: 300;
    line-height: 22px
}

.process-circle.green {
    color: #fff;
    background-color: rgba(0, 168, 153, .75)
}

.process-circle.red {
    color: #fff;
    background-color: rgba(237, 28, 36, .65)
}

.process-circle.yellow {
    color: #000;
    background-color: rgba(255, 241, 0, .65)
}

.process-circle.blue {
    color: #fff;
    background-color: rgba(0, 187, 231, .62)
}

#process .slide.active .process-circle.static {
    -webkit-animation: slideUp 1s forwards;
    animation: slideUp 1s forwards
}

#process .slide .process-circle.small span {
    color: #000;
    font-size: 80px;
    font-weight: 500;
    position: absolute;
    top: 50%;
    left: 50%;
    margin-top: -48px;
    margin-left: -33px
}

#process-slide-1 .process-circle.small,
#process-slide-7 .process-circle.small {
    width: 100px;
    height: 100px;
    border-radius: 50px;
    position: absolute;
    top: 55%;
    left: 50%;
    margin-top: -50px;
    margin-left: -50px;
    z-index: 5;
    opacity: 0;
    -webkit-transform: rotateZ(-179deg);
    transform: rotateZ(-179deg);
    -webkit-transition: all 1s .8s ease;
    transition: all 1s .8s ease
}

#process-slide-1 .process-circle.green,
#process-slide-7 .process-circle.green {
    position: absolute;
    top: 47%;
    left: 50%;
    margin-top: -200px;
    margin-left: -200px;
    z-index: 4;
    opacity: 0;
    -webkit-transform: translateY(-500px);
    transform: translateY(-500px);
    -webkit-transition: all 1s ease;
    transition: all 1s ease
}

#process-slide-1 .process-circle.red,
#process-slide-7 .process-circle.red {
    position: absolute;
    top: 55%;
    left: auto;
    right: 42%;
    margin-top: -200px;
    margin-left: 0;
    margin-right: -200px;
    z-index: 2;
    opacity: 0;
    -webkit-transform: translateX(500px);
    transform: translateX(500px);
    -webkit-transition: all 1s ease;
    transition: all 1s ease
}

#process-slide-1 .process-circle.yellow,
#process-slide-7 .process-circle.yellow {
    position: absolute;
    top: auto;
    bottom: 37%;
    left: 50%;
    margin-top: 0;
    margin-bottom: -200px;
    margin-left: -200px;
    z-index: 3;
    opacity: 0;
    -webkit-transform: translateY(500px);
    transform: translateY(500px);
    -webkit-transition: all 1s ease;
    transition: all 1s ease
}

#process-slide-1 .process-circle.blue,
#process-slide-7 .process-circle.blue {
    position: absolute;
    top: 55%;
    left: 42%;
    margin-top: -200px;
    margin-left: -200px;
    z-index: 1;
    opacity: 0;
    -webkit-transform: translateX(-500px);
    transform: translateX(-500px);
    -webkit-transition: all 1s ease;
    transition: all 1s ease
}

#process-slide-1.active.animate .process-circle.small,
#process-slide-7.active.animate .process-circle.small {
    opacity: 1;
    -webkit-transform: rotateZ(0.1deg);
    transform: rotateZ(0.1deg)
}

#process-slide-1.active.animate .process-circle.blue,
#process-slide-1.active.animate .process-circle.green,
#process-slide-1.active.animate .process-circle.red,
#process-slide-1.active.animate .process-circle.yellow,
#process-slide-7.active.animate .process-circle.blue,
#process-slide-7.active.animate .process-circle.green,
#process-slide-7.active.animate .process-circle.red,
#process-slide-7.active.animate .process-circle.yellow {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0)
}

#process-chart {
    text-align: center;
    padding-left: 30px;
    padding-right: 30px
}

#process-chart img {
    max-width: 1008px
}

@media only screen and (max-width:1024px) {
    #process .page {
        padding-bottom: 40px
    }
    #process #video-header {
        height: 432px;
        background-image: url(../videos/process_video-still.jpg)
    }
    #process #video-header.playing {
        height: 100%;
        position: absolute;
        z-index: 1
    }
    #process #video-header video {
        width: 100%;
        height: auto;
        min-height: 100%;
        position: absolute;
        z-index: 2;
        display: none
    }
    #process .info-block {
        padding-bottom: 40px
    }
    #process .info-block h1 {
        margin-top: 40px
    }
    .isMobile #process #slide-container {
        display: none
    }
    .isMobile #process #mobile-process-how-we-work {
        background-color: #f3f3f3;
        padding-top: 60px;
        display: block;
        overflow: hidden
    }
    #process #mobile-slide-1 img {
        width: 90%;
        height: auto;
        margin-left: 5%;
        margin-bottom: 50px
    }
    #process .mobile-slide {
        width: 100%;
        height: 600px;
        background-size: cover;
        background-repeat: no-repeat;
        background-position: center center;
        margin-bottom: 10px;
        position: relative;
        float: left
    }
    #process .case-study-title {
        color: #333!important
    }
    #process #mobile-slide-2 {
        background-image: url(../images/process/bg_how-we-work_02.jpg)
    }
    #process #mobile-slide-3 {
        background-image: url(../images/process/bg_how-we-work_03.jpg)
    }
    #process #mobile-slide-4 {
        background-image: url(../images/process/bg_how-we-work_04.jpg)
    }
    #process #mobile-slide-5 {
        background-image: url(../images/process/bg_how-we-work_05.jpg)
    }
    #process #mobile-slide-6 {
        background-image: url(../images/process/bg_how-we-work_06.jpg)
    }
    #process-what-we-make {
        background-attachment: scroll
    }
}

@media only screen and (max-width:767px) {
    #process #video-header {
        height: 239px
    }
    #process .info-block {
        font-size: 14px
    }
    #process .info-block h1 {
        font-size: 20px
    }
    #process .case-study-title {
        margin-top: 0
    }
    #process #slide-container {
        display: none
    }
    #process-what-we-make {
        padding-top: 60px;
        padding-bottom: 0;
        margin-top: 60px
    }
    #process-who-we-have-made-it-for {
        padding-top: 60px;
        padding-bottom: 0
    }
    .process-column {
        width: 100%;
        text-align: center
    }
}

@media only screen and (max-width:640px) {
    #process.case-study br {
        display: inline
    }
    #process.case-study #see-more br {
        display: none
    }
    #see-more-title br.hide-on-mobile {
        display: inline!important
    }
}

#contact.subpage {
    padding-top: 0
}

#contact .page {
    padding: 0;
    overflow: hidden
}

#lets-connect {
    font-size: 18px;
    font-weight: 300;
    text-align: center;
    padding-top: 100px;
    padding-bottom: 100px;
    position: relative
}

#contact-title {
    font-size: 72px;
    text-transform: uppercase
}

#lets-connect p {
    font-size: 14px
}

#lets-connect #request-a-meeting {
    margin-top: 30px
}

.contact-option {
    text-align: center;
    padding-top: 30px;
    padding-bottom: 30px
}

.contact-option a {
    color: #333;
    font-size: 16px;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: .03em;
    display: block;
    -webkit-perspective: 500px;
    perspective: 500px
}

#contact-general a:hover .icon-general {
    -webkit-animation: throw 1s infinite;
    animation: throw 1s infinite
}

#contact-work a:hover .icon-work {
    -webkit-animation: slide 1s infinite;
    animation: slide 1s infinite
}

#contact-intern a:hover .icon-intern {
    -webkit-animation: swim 1s infinite;
    animation: swim 1s infinite
}

.icon-general {
    width: 80px;
    height: 94px;
    background: url(../images/contact/icon_general.png) no-repeat center center;
    display: inline-block
}

.icon-work {
    width: 80px;
    height: 94px;
    background: url(../images/contact/icon_work.png) no-repeat center center;
    display: inline-block
}

.icon-intern {
    width: 80px;
    height: 94px;
    background: url(../images/contact/icon_intern.png) no-repeat center center;
    display: inline-block
}

.contact-option p {
    margin-top: 30px
}

#contact-work {
    border-left: 1px solid #333;
    border-right: 1px solid #333
}

#contact-modal {
    text-align: center;
    width: 100%;
    max-width: 400px;
    margin-right: auto;
    position: absolute;
    top: 100px;
    left: 50%;
    margin-left: -200px;
    z-index: 3;
    -webkit-transition: top .3s ease;
    transition: top .3s ease;
    display: none
}

#contact-modal-title {
    font-size: 35px;
    font-weight: 300;
    text-transform: none;
    margin-bottom: 20px
}

#contact-modal p {
    color: #999;
    font-size: 18px;
    font-weight: 300
}

#contact-modal form {
    margin-top: 30px;
    margin-bottom: 70px
}

#contact-modal input,
#contact-modal textarea {
    width: 100%;
    color: #999;
    font-size: 14px;
    font-weight: 500;
    background-color: #fff;
    padding: 15px;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    border: 2px solid transparent;
    border-radius: 10px;
    margin-bottom: 18px
}

#contact-modal textarea {
    margin-bottom: 35px
}

#contact-modal input.error,
#contact-modal textarea.error {
    border: 2px solid red
}

#contact-modal .left-spacing {
    width: 95%;
    margin-left: 5%
}

#contact-modal .right-spacing {
    width: 95%;
    margin-right: 5%
}

#contact-modal-submit-container {
    margin-top: 10px;
    margin-left: 30px;
    position: relative;
    float: left
}

#contact-modal-submit {
    width: 180px;
    padding-left: 0;
    padding-right: 0;
    left: 0
}

#contact-modal-cancel-container {
    margin-top: 10px;
    float: right
}

#contact-modal-cancel {
    color: #fff;
    font-size: 16px;
    font-weight: 500;
    text-transform: uppercase;
    padding-bottom: 3px;
    border-bottom: 1px solid #fff;
    float: right;
    position: relative;
    top: -6px;
    right: 30px
}

#contact-modal-thank-you {
    display: none
}

@keyframes throw {
    0% {
        opacity: 1;
        transform: translate3d(0, 0, 0) rotateX(0deg)
    }
    50% {
        opacity: 0;
        transform: translate3d(50px, -50px, -200px) rotateX(65deg)
    }
    51% {
        opacity: 0;
        transform: translate3d(-50px, 50px, 100px) rotateX(0deg)
    }
    100% {
        opacity: 1;
        transform: translate3d(0, 0, 0) rotateX(0deg)
    }
}

@keyframes slide {
    0% {
        opacity: 1;
        transform: translateX(0)
    }
    50% {
        opacity: 0;
        transform: translateX(50px)
    }
    51% {
        opacity: 0;
        transform: translateX(-50px)
    }
    100% {
        opacity: 1;
        transform: translateX(0)
    }
}

@keyframes swim {
    0% {
        opacity: 1;
        transform: translate3d(0, 0, 0) rotate(0deg)
    }
    50% {
        opacity: 0;
        transform: translate3d(30px, 30px, -60px) rotate(15deg)
    }
    51% {
        opacity: 0;
        transform: translate3d(-30px, -30px, -60px) rotate(-15deg)
    }
    100% {
        opacity: 1;
        transform: translate3d(0, 0, 0) rotate(0deg)
    }
}

@-webkit-keyframes throw {
    0% {
        opacity: 1;
        -webkit-transform: translate3d(0, 0, 0) rotateX(0deg)
    }
    50% {
        opacity: 0;
        -webkit-transform: translate3d(50px, -50px, -200px) rotateX(65deg)
    }
    51% {
        opacity: 0;
        -webkit-transform: translate3d(-50px, 50px, 100px) rotateX(0deg)
    }
    100% {
        opacity: 1;
        -webkit-transform: translate3d(0, 0, 0) rotateX(0deg)
    }
}

@-webkit-keyframes slide {
    0% {
        opacity: 1;
        -webkit-transform: translateX(0)
    }
    50% {
        opacity: 0;
        -webkit-transform: translateX(50px)
    }
    51% {
        opacity: 0;
        -webkit-transform: translateX(-50px)
    }
    100% {
        opacity: 1;
        -webkit-transform: translateX(0)
    }
}

@-webkit-keyframes swim {
    0% {
        opacity: 1;
        -webkit-transform: translate3d(0, 0, 0) rotate(0deg)
    }
    50% {
        opacity: 0;
        -webkit-transform: translate3d(30px, 30px, -60px) rotate(15deg)
    }
    51% {
        opacity: 0;
        -webkit-transform: translate3d(-30px, -30px, -60px) rotate(-15deg)
    }
    100% {
        opacity: 1;
        -webkit-transform: translate3d(0, 0, 0) rotate(0deg)
    }
}

@media only screen and (max-width:1024px) {
    #contact .page {
        padding-bottom: 30px
    }
    #contact-modal-title {
        font-size: 32px
    }
    #contact-map-info {
        width: 90%;
        margin-left: -45%;
        top: 90px
    }
    #contact-modal {
        padding-left: 30px;
        padding-right: 30px;
        -moz-box-sizing: border-box;
        box-sizing: border-box
    }
    #contact-modal .left-spacing {
        width: 100%;
        margin-left: 0
    }
    #contact-modal .right-spacing {
        width: 100%;
        margin-right: 0
    }
    .icon-general {
        background-image: url(../images/contact/mobile/icon_general.png);
        background-size: 80px 94px
    }
    .icon-work {
        background-image: url(../images/contact/mobile/icon_work.png);
        background-size: 80px 94px
    }
    .icon-intern {
        background-image: url(../images/contact/mobile/icon_intern.png);
        background-size: 80px 94px
    }
}

@media only screen and (max-width:767px) {
    #lets-connect {
        padding-bottom: 30px
    }
    #contact-work {
        border-top: 1px solid #333;
        border-bottom: 1px solid #333;
        border-left: none;
        border-right: none
    }
    .contact-option {
        width: 100%
    }
    #contact-map-container {
        margin-top: 30px
    }
}

@media only screen and (max-width:640px) {
    #lets-connect {
        font-size: 16px
    }
    #contact-title {
        font-size: 40px
    }
    #contact-modal {
        top: 50px
    }
}

@media only screen and (max-width:400px) {
    #contact-modal {
        margin-left: 0;
        left: auto
    }
    #contact-modal-submit-container {
        margin-left: 40px
    }
}

#careers {
    padding-top: 0
}

#careers .page {
    padding-top: 0;
    padding-bottom: 0
}

#careers-hero {
    width: 100%;
    height: auto;
    display: block
}

#careers-intro {
    background-color: #fff
}

#careers .info-block h1 {
    font-size: 22px;
    font-weight: 500;
    margin-top: 80px
}

#careers .info-block {
    font-size: 18px;
    text-align: center;
    line-height: 30px;
    letter-spacing: .03em;
    padding-bottom: 80px;
    position: relative
}

#careers .info-block p:last-of-type {
    margin-bottom: 0
}

#careers #slides {
    position: static
}

#careers #slide-container {
    background-color: #f5f5f5;
    position: relative
}

#careers-slide-1 .slide-bg,
#careers-slide-6 .slide-bg {
    background-repeat: no-repeat;
    background-size: auto auto
}

.careers-circle {
    text-align: center;
    background-color: rgba(255, 255, 255, .85);
    width: 400px;
    height: 400px;
    border-radius: 400px;
    display: table;
    position: absolute;
    top: 50%;
    left: 50%;
    margin-top: -200px;
    margin-left: -200px
}

.careers-circle-content {
    padding: 50px;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    display: table-cell;
    vertical-align: middle;
    -webkit-transition: all .3s ease;
    transition: all .3s ease
}

.careers-circle h2 {
    font-size: 20px;
    font-weight: 500
}

.careers-circle p {
    font-size: 15px;
    font-weight: 300;
    line-height: 22px
}

.careers-circle.green {
    color: #fff;
    background-color: rgba(0, 168, 153, .75)
}

.careers-circle.red {
    color: #fff;
    background-color: rgba(237, 28, 36, .65)
}

.careers-circle.yellow {
    color: #000;
    background-color: rgba(255, 241, 0, .65)
}

.careers-circle.blue {
    color: #fff;
    background-color: rgba(0, 187, 231, .62)
}

#careers .slide.active .careers-circle.static {
    -webkit-animation: slideUp 1s forwards;
    animation: slideUp 1s forwards
}

#careers #slides img {
    display: block
}

#careers-slide-1.kenburns .slide-bg,
#careers-slide-6.kenburns .slide-bg {
    -webkit-animation: none;
    animation: none
}

#careers #contact-form-title {
    font-weight: 300;
    text-align: center;
    text-transform: none;
    margin-top: 80px;
    margin-bottom: 60px
}

#careers .contact-form-heading {
    font-weight: 500;
    margin-bottom: 20px
}

#careers p.contact-form-disclaimer {
    margin-top: 0;
    padding-top: 0;
    margin-bottom: 30px
}

#careers .ui-textarea {
    min-height: 140px
}

#careers input.error,
#careers textarea.error {
    border: 1px solid red
}

#careers-form-thank-you {
    display: none
}

#careers #careers-form-thank-you.info-block {
    padding-bottom: 0
}

@media only screen and (max-width:1024px) {
    #contact-form-title {
        padding-left: 30px;
        padding-right: 30px
    }
    #careers .info-block,
    #careers .page {
        padding-bottom: 40px
    }
    #careers .info-block h1 {
        margin-top: 40px
    }
    .isMobile #careers #slide-container {
        display: none
    }
    .isMobile #careers #mobile-slideshow {
        background-color: #f3f3f3;
        display: block;
        overflow: hidden
    }
    #careers #mobile-slide-1 img,
    #careers #mobile-slide-6 img {
        width: 90%;
        height: auto;
        margin-left: 5%;
        margin-bottom: 50px
    }
    #careers .mobile-slide {
        width: 100%;
        height: 600px;
        background-size: cover;
        background-repeat: no-repeat;
        background-position: center center;
        margin-bottom: 10px;
        position: relative;
        float: left
    }
    #careers #mobile-slide-2 {
        background-image: url(../images/careers/bg_careers_02.jpg)
    }
    #careers #mobile-slide-3 {
        background-image: url(../images/careers/bg_careers_03.jpg)
    }
    #careers #mobile-slide-4 {
        background-image: url(../images/careers/bg_careers_04.jpg)
    }
    #careers #mobile-slide-5 {
        background-image: url(../images/careers/bg_careers_05.jpg);
        margin-bottom: 0
    }
    #careers .ui-submit {
        text-align: center
    }
}

@media only screen and (max-width:767px) {
    #careers .info-block {
        font-size: 14px
    }
    #careers .info-block h1 {
        font-size: 20px
    }
    #careers .case-study-title {
        margin-top: 0
    }
    #careers #slide-container {
        display: none;
        text-align: center
    }
}

@media only screen and (max-width:640px) {
    #careers.case-study br {
        display: inline
    }
}

#privacy.subpage {
    padding-top: 0
}

#privacy .page {
    padding: 0;
    overflow: hidden
}

#privacy-policy {
    font-size: 18px;
    font-weight: 300;
    text-align: left;
    padding-top: 100px;
    padding-bottom: 100px;
    position: relative
}

#privacy-title {
    font-size: 72px;
    text-align: center;
    text-transform: uppercase
}

#privacy-policy h2 {
    text-transform: none;
    margin-top: 60px
}

#privacy-policy p {
    font-size: 14px;
    letter-spacing: .03em;
    line-height: 28px
}

#privacy-policy a {
    color: #333;
    text-decoration: underline
}

@media only screen and (max-width:1024px) {
    #privacy .page {
        padding-bottom: 30px
    }
    #contact-map-info {
        width: 90%;
        margin-left: -45%;
        top: 90px
    }
}

@media only screen and (max-width:767px) {
    #privacy-title {
        font-size: 40px
    }
    #privacy-policy h2 {
        font-size: 20px
    }
    #privacy-policy {
        padding-bottom: 30px
    }
    #contact-map-container {
        margin-top: 30px
    }
}

@media only screen and (max-width:640px) {
    #privacy-policy {
        font-size: 16px
    }
    #privacy-title {
        font-size: 40px
    }
}

#terms.subpage {
    padding-top: 0
}

#terms .page {
    padding: 0;
    overflow: hidden
}

#terms-of-service {
    font-size: 18px;
    font-weight: 300;
    text-align: left;
    padding-top: 100px;
    padding-bottom: 100px;
    position: relative
}

#terms-title {
    font-size: 72px;
    text-align: center;
    text-transform: uppercase
}

#terms-of-service h2 {
    text-transform: none;
    margin-top: 60px
}

#terms-of-service p {
    font-size: 14px;
    letter-spacing: .03em;
    line-height: 28px
}

#terms-of-service a {
    color: #333;
    text-decoration: underline
}

#contact .ui-button {
    margin: 0;
    position: relative;
    top: auto;
    left: auto
}

#contact-map-container {
    background-color: #333;
    height: 583px;
    margin-top: 70px;
    position: relative
}

#contact-map-info {
    width: 768px;
    position: absolute;
    top: 142px;
    left: 50%;
    margin-left: -384px;
    z-index: 1
}

.contact-map-info-section {
    font-size: 15px;
    text-align: center;
    text-transform: uppercase;
    background-color: #fff;
    padding: 30px;
    margin-bottom: 1px
}

#contact-map-info.hide {
    -webkit-animation: slideDown .5s forwards ease;
    animation: slideDown .5s forwards ease
}

#contact-address {
    font-size: 18px;
    letter-spacing: .07em;
    margin-top: 30px;
    margin-bottom: 30px
}

#contact-map-info-footer {
    letter-spacing: .07em;
    -webkit-transform-origin: center top;
    transform-origin: center top
}

.contact-map-info-section a {
    color: #000
}

#contact-email {
    margin-right: 20px
}

#contact-map {
    width: 100%;
    height: 583px
}

@media only screen and (max-width:1024px) {
    #terms .page {
        padding-bottom: 30px
    }
    #contact-map-info {
        width: 90%;
        margin-left: -45%;
        top: 90px
    }
}

@media only screen and (max-width:767px) {
    #terms-title {
        font-size: 40px
    }
    #terms-of-service h2 {
        font-size: 20px
    }
    #terms-of-service {
        padding-bottom: 30px
    }
    #contact-map-container {
        margin-top: 30px
    }
}

@media only screen and (max-width:640px) {
    #terms-of-service {
        font-size: 16px
    }
    #terms-title {
        font-size: 40px
    }
}

#oops.subpage {
    padding-top: 0
}

#oops .page {
    padding: 0;
    overflow: hidden
}

#oops-content {
    font-size: 18px;
    font-weight: 300;
    text-align: center;
    padding-top: 100px;
    padding-bottom: 100px;
    position: relative
}

#oops-title {
    font-size: 72px;
    text-align: center;
    text-transform: uppercase
}

#oops-content h2 {
    text-transform: none;
    margin-top: 0
}

#oops-content p {
    font-size: 14px;
    letter-spacing: .03em;
    line-height: 28px
}

#oops-links {
    margin-top: 40px
}

#oops-link-contact,
#oops-link-home {
    height: 50px;
    position: relative
}

#oops-link-home .ui-button {
    right: 0
}

#oops-link-contact .ui-button {
    left: 0
}

@media only screen and (max-width:1024px) {
    #oops .page {
        padding-bottom: 30px
    }
    #oops-link-contact .ui-button,
    #oops-link-home .ui-button {
        width: 100%;
        margin-left: -50%;
        left: 50%;
        right: auto;
        -moz-box-sizing: border-box;
        box-sizing: border-box
    }
}

@media only screen and (max-width:767px) {
    #oops-title {
        font-size: 34px;
        margin-top: 0
    }
    #oops-content h2 {
        font-size: 20px
    }
    #oops-content {
        padding-bottom: 30px
    }
    #oops-links {
        margin-top: 20px
    }
}