@charset "UTF-8";
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
hr,
img,
menu,
nav,
section {
    display: block
}

a,
hr {
    padding: 0
}

.flex-caption {
    margin: 20px 5px;
}

body,
html {
    height: 100%
}

a,
body {
    margin: 0
}

#nav a,
#title a,
.fourohfour .goback,
a,
a:hover,
ins {
    text-decoration: none
}

.controls,
.nav ul,
nav ul {
    list-style: none
}

#header,
#main,
*,
.controls {
    position: relative
}

#full-frame,
.flexslider,
body.full-frame {
    overflow: hidden
}

abbr,
address,
article,
aside,
audio,
b,
blockquote,
body,
canvas,
caption,
cite,
code,
dd,
del,
details,
dfn,
div,
dl,
dt,
em,
fieldset,
figcaption,
figure,
footer,
form,
h1,
h2,
h3,
h4,
h5,
h6,
header,
hgroup,
html,
i,
iframe,
img,
ins,
kbd,
label,
legend,
li,
mark,
menu,
nav,
object,
ol,
p,
pre,
q,
samp,
section,
small,
span,
strong,
sub,
summary,
sup,
table,
tbody,
td,
tfoot,
th,
thead,
time,
tr,
ul,
var,
video {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: 0 0
}

ins,
mark {
    background-color: #ff9;
    color: #000
}

blockquote,
q {
    quotes: none
}

blockquote:after,
blockquote:before,
q:after,
q:before {
    content: '';
    content: none
}

a {
    font-size: 70%;
    vertical-align: baseline;
    background: 0 0;
    color: #333
}

mark {
    font-style: italic;
    font-weight: 700
}

del {
    text-decoration: line-through
}

abbr[title],
dfn[title] {
    border-bottom: 1px dotted;
    cursor: help
}

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

hr {
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: 1em 0
}

input,
select {
    vertical-align: middle
}

.clear:after,
.clear:before {
    content: "";
    display: table
}

#push-footer,
.hide {
    display: none
}

.clear:after {
    clear: both
}

html {
    -webkit-text-size-adjust: 100%;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    padding-left: calc(100vw - 100%)
}

body {
    padding: 0
}

#push-footer {
    height: 60px
}

::-moz-selection {
    background-color: #ddd;
    color: #000
}

::selection {
    background-color: #ddd;
    color: #000
}

a:hover {
    color: #000
}

p {
    font-size: 70%;
    line-height: 1.3em;
    margin: 0 auto;
    text-align: left
}

#bio a,
b,
strong {
    font-weight: 700;
    text-transform: uppercase
}

.fourohfour h1 {
    font-size: 2em;
    margin-bottom: 1em
}

.fourohfour h2 {
    font-size: 1em;
    margin-top: 1em
}

.fourohfour .goback {
    margin-top: 1em;
    float: left;
    font-style: italic;
    text-transform: lowercase
}

#title,
.nav a {
    display: inline-block
}

.nav ul {
    padding: 0
}

.nav a {
    height: 20px
}

body {
    background-color: #fff;
    color: #333;
    font: .825em 'Crimson Text', Georgia, 'Times New Roman', Times, serif;
    font-variant-ligatures: normal;
    font-family: exo;
    line-height: 1.8em
}

#nav,
#title {
    text-transform: lowercase;
    font-size: 17.5px
}

#nav a.on,
.nav-projects li.on a h1 {
    font-family: Montserrat, sans-serif
}

#container {
    max-width: 1140px;
    margin: 0 auto -60px;
    padding: 0 20px;
    height: auto!important;
    height: 100%;
    min-height: 100%
}

#header {
    float: left;
    margin: 0 auto;
    padding: 56px 0 0;
    width: 170px;
    z-index: 2
}

#title {
    font-weight: 400;
    margin-bottom: 40px;
    height: 30px
}

#title a {
    padding: 4px 0;
    display: block
}

.nav-films li {
    display: block !important;
}

.nav-plays a,
.nav-films a,
.nav-audios a,
.nav-digitals a {
    margin-bottom: 0 !important;
}

.nav-projects li.on a h1,
.nav-projects li.on a.nav-ddd h1 {
    text-transform: uppercase;
    font-style: normal;
    font-weight: bold;
}

#nav a {
    padding: 0 0 1px
}

#nav a.on {
    font-size: 70%;
    text-transform: uppercase;
    font-weight: bold;
}

#main {
    font-size: 1.4em;
    padding-left: 170px;
    padding-top: 126px;
    z-index: 1
}

.flexslider {
    background: 0 0;
    border: 0;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    -o-border-radius: 0;
    border-radius: 0;
    box-shadow: none;
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    -o-box-shadow: none;
    margin: 0;
    height: 100%
}

.flexslider ul {
    list-style-type: none
}

.flexslider li {
    display: none
}

.flexslider li img {
    cursor: pointer;
    max-width: 691px
}

.flex-direction-nav {
    display: none!important
}

.nav-projects li {
    list-style: none;
    display: inline;
    clear: both;
    float: left;
}

.nav-projects a {
    display: inline-block;
    margin: 0 55px 12px 0
}

.nav-projects li:last-child a {
    margin-right: 0
}

.nav-projects a h1 {
    display: inline;
    font-style: italic;
    font-weight: 400
}

.nav-projects li.on a h1 {
    font-size: 90%;
}

.nav-projects a.nav-ddd h1 {
    font-family: "Times New Roman", Georgia, serif
}

.nav-projects li.on a.nav-ddd h1 {
    font-family: Roboto, sans-serif;
    font-size: 90%;
    top: 1px
}

.controls,
.project-detail {
    display: none;
    float: left;
    margin-top: 16px;
    margin-bottom: 20px
    width: 100%;
}

#contact h1,
#contact h2 span {
    font-size: 90%;
    font-weight: 400
}

.project-detail .separator {
    display: inline-block;
    padding: 0 4px
}

.controls {
    margin-right: 34px;
    z-index: 3
}

.controls li {
    display: inline;
    text-align: center
}

#contact h2,
#contact h2 span,
.controls a {
    display: inline-block
}

.controls a {
    padding-right: 6px
}

.controls li:active,
.controls li:hover {
    font-weight: 700
}

.controls .control {
    white-space: nowrap;
    text-transform: lowercase
}

.controls .control.control-imdb {
    text-transform: uppercase
}

.controls .control.disabled {
    text-decoration: line-through
}

.controls a.control.disabled:active,
.controls a.control.disabled:hover {
    color: #333;
    font-weight: 400
}

.control-play {
    width: 29px
}

.control-pause {
    width: 38px
}

.control-prev {
    width: 59px
}

.control-next {
    width: 31px
}

.control-imdb {
    width: 40px
}

.control-close {
    width: 32px
}

.control-full {
    width: 67px
}

#contact h1 {
    text-transform: lowercase;
    font-style: normal;
    margin-bottom: .8em
}

#contact h2 span {
    font-style: italic
}

#contact h2 {
    font-size: 80%;
    font-style: normal;
    margin-right: .5em;
    margin-top: 0;
    margin-bottom: 12px
}

#contact p {
    margin-bottom: 1.2em
}

.inset {
    margin: 0 3em
}

.no-feature .inset {
    margin: 0
}

#full-frame,
#full-frame img {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto
}

#video-feature {
    display: none
}

.fluid-width-video-wrapper {
    z-index: 80
}

#full-frame-wrapper {
    background-color: #fff;
    display: none;
    height: 100%;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 999
}

#full-frame {
    width: 95%;
    height: 95%
}

#full-frame img {
    cursor: pointer;
    max-width: 100%;
    max-height: 100%;
    height: auto;
    width: auto
}

form>div {
    margin-bottom: 1em
}

label {
    width: 100px;
    display: block;
    text-align: right;
    margin-right: 10px;
    float: left;
    padding: .8em 0
}

input,
textarea {
    border: 1px solid #ccc;
    padding: .8em 1em;
    outline: 0;
    font: 1em 'Crimson Text', Georgia, 'Times New Roman', Times, serif;
    width: 300px;
    -webkit-transition: border-color .5s;
    -moz-transition: border-color .5s;
    -o-transition: border-color .5s;
    -ms-transition: border-color .5s;
    transition: border-color .5s;
    display: block;
    -webkit-appearance: none;
    border-radius: 0
}

input:hover,
textarea:hover {
    border-color: #aaa
}

input:focus,
textarea:focus {
    border-color: #666
}

input[type=submit] {
    background-color: #ccc;
    color: #fff;
    margin-left: 110px;
    border: 0;
    cursor: pointer;
    width: 330px;
    -webkit-transition: background-color .5s;
    -moz-transition: background-color .5s;
    -o-transition: background-color .5s;
    -ms-transition: background-color .5s;
    transition: background-color .5s
}

input[type=submit]:hover {
    background-color: #666
}

input[type=submit]:active {
    background-color: #333
}

.emailLink {
        vertical-align: unset;
        font-size: unset;
}

#film-nav-float {
        float: left;
        width: 250px;
}

#theatre-nav-float {
    float: left;
    width: 250px;
}

#audio-nav-float {
    float: left;
    width: 250px;
}

#digital-nav-float {
    float: left;
    width: 250px;
}

#filmDetail {
    float: right;
    width: calc(100% - 280px);
    min-width: 300px;
}

#photoDetail {
    width: calc(100% - 250px);
    min-width: 300px;
}

#playDetail {
    float: right;
    width: calc(100% - 250px);
    min-width: 300px;
}

#audioDetail {
    float: right;
    width: calc(100% - 250px);
    min-width: 300px;
}

#digitalDetail {
    float: right;
    width: calc(100% - 250px);
    min-width: 300px;
}

#runtime {
    font-size: 70%;
}

#footnote {
    clear: both;
    float: none;
}

#iframeOuter{
    width: 500px;
    height: 620px;
    margin: auto;
    display: block;
}

#iframeInnerShowreel {
    position: absolute;
    width: 100%;
    height: 330px;
    clip: rect(0px 600px 300px 0px);
}

@media screen and (max-width:1060px) {
    #header {
        width: 170px
    }
    #main {
        padding-left: 170px
    }
}

@media screen and (max-width:990px) {
    #header {
        width: 170px
    }
    #main {
        padding-left: 170px
    }
    .flexslider li img {
        max-width: 580px
    }
}

@media screen and (max-width:900px) {
    #header,
    label {
        float: none;
        width: auto
    }
    #footer p,
    label {
        text-align: center
    }
    #header {
        padding-top: 50px
    }
    #title {
        margin-bottom: 34px
    }
    #header nav li {
        display: inline
    }
    #header nav a,
    .nav-projects a {
        display: inline-block;
        margin: 12px 16px 0 0
    }
    #main {
        padding-left: 0;
        padding-top: 34px
    }
    .section {
        margin-top: 0
    }
    .section.copy {
        margin-bottom: 20px
    }
    .section .nav-projects {
        margin-bottom: 50px
    }
    #bio,
    #contact {
        margin-top: 40px
    }
    .controls {
        margin-top: 0
    }
    .controls,
    .project-detail {
        float: none
    }
    .controls a,
    .project-detail {
        margin: 12px 16px 0 0;
        padding-right: 0
    }
    input,
    label,
    textarea {
        margin: auto
    }
    input[type=submit] {
        margin: 2em auto auto
    }
    #footer p {
        line-height: 1.6em
    }
}

@media screen and (max-width:590px) {
    #header {
        padding-top: 40px;
        margin: 0 auto
    }
    #title {
        margin-bottom: 22px
    }
    #main {
        padding-top: 26px
    }
    #header nav a,
    .controls a,
    .nav-projects a,
    .project-detail {
        margin: 4px 15px 0 0
    }
    .controls {
        margin-right: 0
    }
    .project-detail {
        width: 100%;
        margin-bottom: 20px
    }
    input,
    input[type=submit],
    textarea {
        width: 100%;
        padding-left: 0;
        padding-right: 0
    }
    textarea {
        text-align: left
    }
    #filmDetail, #digitalDetail, #photoDetail {
        float: none;
        clear: both;
        width: 100%;
        min-width: unset;
    }
}

@media screen and (min-width:901px) {
    .controls {
        margin-bottom: 0
    }
    #performance {
        margin-top: 0
    }
    #performance .nav-projects {
        margin-bottom: 30px
    }
    #film {
        margin-top: 21px
    }
    #film .nav-projects {
        margin-bottom: 118px
    }
    #photography {
        margin-top: 69px
    }
    #photography .nav-projects {
        margin-bottom: 95px
    }
    #theatre {
        margin-top: 49px
    }
    #theatre .nav-projects {
        margin-bottom: 72px
    }
    #other {
        margin-top: 89px
    }
    #other .nav-projects {
        margin-bottom: 49px
    }
    #bio {
        margin-top: 5px
    }
    #contact {
        margin-top: -15px
    }
    #audio {
        margin-top: 70px
    }
    #digital {
        margin-top: 90px
    }
}

