a, i, input, img, .grid-block, .meta {
-webkit-transition-property:color, background, border, opacity; 
-webkit-transition-duration: 0.5s, 0.5s; 
-webkit-transition-timing-function: linear;

-webkit-transform: translate3d(0,0,0);
transform: translate3d(0,0,0);
-webkit-transform: translateZ(0);
transform: translateZ(0);
}

/**
* 1.0 Reset
*
* -----------------------------------------------------------------------------
*/

html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {
border: 0;
font-family: inherit;
font-size: 100%;
font-style: inherit;
font-weight: inherit;
margin: 0;
outline: 0;
padding: 0;
vertical-align: baseline;
text-decoration: none;
list-style: none;
-webkit-margin-before: 0;
-webkit-margin-after: 0;
}

a, a img, img {
border:none;
outline : none;
}

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

a:active, a:active, a:focus {
border:none;
outline: none;
-moz-outline-style: none;
}

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

audio,
canvas,
video {
display: inline-block;
max-width: 100%;
}

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

a:hover {
cursor: pointer;
color: #ffffff;
text-decoration: none!important;
}

html, body {
position: absolute;
top: 0;
left: 0;
width: 100%;
margin: 0!important;
padding: 0!important;
}

body > * {
display: block;
position: relative;
}

* {
-webkit-box-sizing:border-box;
-moz-box-sizing:border-box;
-ms-box-sizing:border-box;
box-sizing:border-box;
}

input, textarea, select {
border-radius: 0px!important;
-webkit-appearance: none!important;
-moz-appearance: none;
}

input[type=submit], input[type=reset] {}

input[type="text"], select {}

.clear {
clear: both;
}

a, i, .button, .more, .go-back, #form-wm input[type=submit], #form-wm input[type=reset], header {
  -webkit-transition: all 1s ease-in-out;
  -moz-transition: all 1s ease-in-out;
  -o-transition: all 1s ease-in-out;
  transition: all 1s ease-in-out;
}

.center {
display: block;
margin-left: auto;
margin-right: auto;
text-align: center;
}

img.center {
display: block;
margin-left: auto;
margin-right: auto;
text-align: center;
}

.caps {
text-transform: uppercase;
}

.lowercase {
text-transform: none!important;
}

iframe {
max-width: 100%;
}

ul {
text-align: center;
}

li {
display: inline;
}

.fl {
float: left!important;
}

.fr {
float: right!important;
}

.tl {
text-align: left;
}

.tr {
text-align: right;
}

.bump {
margin-top: 30px;
}

.bottom-space {
margin-bottom: 15px;
}

.spacer {
margin-bottom: 45px!important;
}

.no-padding {
padding: 0px!important;
}

.center-y {
position: relative;
top: 50%;
transform: translateY(-50%);
}

.mobile {
display: none;
}

.shadow {
box-shadow: 1px 1px 20px rgba(0,0,0,0.05);
}

a.button {
display: inline-block;
background: #00a0ec;
width: auto;
margin: 15px auto;
padding: 10px 15px;
border: 2px solid #00a0ec;
color: #FFF;
text-align: center;
text-transform: uppercase;
font-size: 14px;
letter-spacing: 0.05em;
line-height: 1em;
}

a.button:hover {
background: #FFF;
border-color: #00a0ec!important;
color: #00a0ec!important;
}

a.button.oversize {
  padding: 20px 30px;
  font-size: 28px;
}

.restrict .button {
  margin-bottom: 0px;
}

/* TYPOGRAPHY */

body {
font-family: 'Lato', sans-serif;
font-size: 12px;
font-weight: 300;
letter-spacing: 0.02em;
line-height: 1.8em;
overflow-x: hidden;
}

a {
text-decoration: none!important;
}

.caps {
text-transform: uppercase;
}

h1, h2, h3, h4, h5, h6 {
text-transform: uppercase;
font-weight: 500;
color: #00a0ec;
}

h1 {
font-size: 48px;
}

h2 {
font-size: 36px;
}

h3 {
font-size: 28px;
}

h4 {
  font-size: 16px;
  font-weight: 400;
}

h5 {
  font-size: 12px;
  letter-spacing: 0.1em;
  font-weight: 400;
}

h6 {
font-size: 1em;
}

.title {
display: block;
margin-bottom: 10px;
line-height: 1em;
}

.section-title {
padding: 60px 0;
line-height: 1em;
}

.sub-title {
letter-spacing: 0.1em;
}

.underline {
background: #00a0ec;
width: 20%;
max-width: 100px;
height: 2px;
margin: 12px auto 10px;
}

.styled {
    font-weight: 300;
}

h2.styled {
    font-size: 36px;
}

h3.styled {
    font-size: 24px;
}

.sub-title.styled {
    margin-bottom:  15px;
}

.meta .restrict {
font-size: 1.1em;
letter-spacing: 0.1em;
}

/* COLOURS */

.dark-bg {
background: #00a0ec;
}

.light-text {
color: #FFF;
}

.dark-bg a {
color: #FFF;
}

/* BASE */

body {
background: #fafafa;
color: #7c7c7c;
}

body a {
color: #00a0ec;
}

/* HEADER */

.arrow-down {
position: absolute;
bottom: 30px;
width: 100%;
padding: 0;
text-align: center;
font-size: 2em;
z-index: 90;
}

a.arrow-down {
color: #00a0ec;
}

a.arrow-down i {
  background: #FFF;
  width: 40px;
  height: 40px;
  border-radius: 25px;
  line-height: 40px;
}

.arrow-up {
position: fixed;
bottom: 30px;
width: 100%;
padding: 0;
text-align: center;
font-size: 2em;
z-index: 90;
}

a.arrow-up {
color: #00a0ec;
}

a.arrow-up i {
  background: #FFF;
  width: 40px;
  height: 40px;
  border-radius: 25px;
  line-height: 37px;
}

#cover {
position: fixed;
background: #FFF;
top: 0px;
left: 0px;
width: 100%;
height: 100%;
z-index: 9999;
}

#cover-content img {
max-width:  200px;
}

#cover-content {
position: relative;
top: 45%;
left:  0px;
width:  100%;
text-align: center;
}

#top {
height: 0px;
}

header {
  position: fixed;
  width: 100%;
  top: 0px;
  left: 0px;
  padding: 10px 0 5px;
  z-index: 110;
  }

header.h-style {
  background: rgba(250,250,250,0.9);
  box-shadow: 0 2px 6px rgba(0,0,0,0.05);
  transition-duration: 0.2s;	
}

header a {
color: #000;
}

header a:hover {
color: #00a0ec;
}

/*.header-left {
float: left;
margin-left: 10px;
text-align: left;
}

.header-right {
float: right;
margin-top: 10px;
margin-right: 10px;
text-align: right;
}*/

.header-left {
float: left;
width: 100%;
margin: 10px auto;
text-align: center;
}

a#content {
display: block;
width: 100%;
height: 0px;
}

#logo {
position: relative;
z-index: 99;
}

#logo img {
max-height: 60px;
width: auto;
}

#top-menu {
margin-top: 8px;
font-size: 14px;
letter-spacing: 0.05em;
}

.top-nav li {
margin: 0 20px 0;
}

/*DROPDOWN*/

ul.top-nav li {
position: relative;
}

ul.sub-menu {
display:none;
position: absolute;
top: 0px;
left: 0px;
margin-left: -5px;
padding: 20px 0;
text-align: left;
}

ul.sub-menu li {
display: block;
margin: 0!important;	
}

ul.sub-menu li a {
display: block;
background: #262626;
margin: 5px 0!important; 
padding: 5px 15px 5px 10px;
border: 1px solid #6a6a6a;
border-radius: 5px;
-moz-border-radius: 5px;
-webkit-border-radius: 5px;
font-size: 0.9em;
letter-spacing: 0px;
text-transform: none!important;
color: #FFF;
}

ul.sub-menu li a:hover {
background: #6a6a6a;
}

ul.top-nav li:hover ul.sub-menu {
display:block;
}

/* FOOTER */

footer {
background: #FFF;
margin-top: -1px;
padding: 0 0 90px 0;
font-weight: 500;
line-height: 1.5em;
}

footer, footer a {
color: #00a0ec;
}

footer a:hover {
color: #7c7c7c;
}

footer .offset-top {
position: absolute;
width: 100%;
margin: -40px auto;
}

footer .offset-top img {
background: #FFF;
border-radius: 60px;
}

footer .spacer {
padding-top: 50px;
}

#social {
display: block;
width: 100%;
margin: 30px 0 0 0;
text-align: center;
}

#social li {
margin: 0 5px;
font-size: 1.5em;
}

#base-bar {
padding-top: 20px;
font-size: 0.85em;
letter-spacing: 1px;
}

#base-bar li {
display: block;
}

footer img.logo {
display: block;
max-height: 100px;
width: auto;
margin-left: auto;
margin-right: auto;
}

#base-bar img {
display: block;
max-height: 30px;
width: auto;
}

/* STRUCTURE */

.container-full {
position: relative;
float: left;
width: 100%;
padding: 0;
background-size: cover;
background-repeat: no-repeat;
text-align: center;
}

#archive .container-full {
padding-top: 0px;
}

#projects .container-full {
padding: 0!important;
}

.container-full::after {
clear: both;
}

.full {
display: block;
width: 100%;
}

footer .full {
padding: 15px auto;
text-align: center;
}

section {
float: left;
position: relative;
width: 100%;
padding: 0;
}

section#about {
background-size: cover;
background-position: top center;
background-repeat: no-repeat;
padding: 180px 0;
}

section#buy {
padding: 10%;
}

section#archive {
margin-top: 60px;
}

.container {
display: block;
width: 80%;
max-width: 780px;
margin-left: auto;
margin-right: auto;
}

.page-intro {
clear: left;
background-repeat: no-repeat;
background-position: center center;
background-size: cover;
background-attachment: scroll;
height: 70%;
overflow: hidden;
width: 100%;
position: relative;
}

.page-intro {
background-position: center 15%;
margin-top: 100px;
}

.page-intro .center-block {
background: rgba(0,0,0,0.2);
}

.center-block {
position: relative;
display: table;
width: 101%;
height: 101%;
}

.center-content {
display: table-cell;
vertical-align: middle;
margin: 20px;
text-align: center;
}

.restrict {
display: block;
width: 80%;
max-width: 800px;
margin-left: auto;
margin-right: auto;
}

.col-2 {
position: relative;
float: left;
width: 50%;
overflow: hidden;
}

.col-3 {
position: relative;
float: left;
width: 33.33%;
overflow: hidden;
}

.col-3:nth-child(3) {
  width: 33.35%;
  margin-left: -.02%;
}

.col-4 {
position: relative;
float: left;
width: 25%;
overflow: hidden;
}

.col-8 {
float: left;
width: 72.5%;
margin-left: 2.5%;
text-align:  left;
}

.col-left {
float: left;
width: 40%;
}

.col-right {
float: left;
width: 60%;
}

.archive .col-left, .archive .col-right {
  border: 5px solid #1a1a1a!important;
  box-sizing: border-box!important;
}

.post .col-right {
padding-top: 3%;
}

#page .col-left {
	float: left;
    width: 100%;
}

.col-left .flexslider-carousel {
	margin-top: 3px;
	margin-bottom: 30px;
}

.flexslider-page {
  margin-top: 5px;
}

.press {
float: left;
width: 30%;
margin-left: 1.6%;
margin-right: 1.6%;
margin-bottom: 60px;
padding-bottom: 30px;
border-bottom: 1px solid;
}

.press .thumb {
margin-bottom: 15px;
}

/* ARTICLES */

.grid-block .meta {
position: absolute;
top: 0px;
left: 0px;
width: 100%;
height: 100%;
overflow: hidden;
opacity: 0;
}

.grid-block .center-block {
  background: rgba(0,0,0,0.1);
  color: #00a0ec;
}

.meta.hide {
  display: none!important;
}

.grid-block .center-block a.button {
color: #FFF;
}

.grid-block:hover .meta, .grid-block:focus .meta {
opacity: 1;
}

.grid-block:hover .center-block, .grid-block:focus .center-block {
  background: rgba(255,255,255,0.95);
}

.grid-block {
overflow: hidden;
}

/* ARCHIVE */

.archive {
float: left;
width: 100%;
}

.archive.even {
background: #333;
}

/*.archive .thumb {
border: 10px solid #000;
}

.archive.even .thumb {
border: 10px solid #323232;
}*/

.archive .restrict {
font-size: 16px;
line-height: 1.8em;
}

.grid-block.fadein .center-block, .grid-block.fadein .center-content {
-webkit-transition: all 1s ease-in-out;
-moz-transition: all 1s ease-in-out;
-o-transition: all 1s ease-in-out;
transition: all 1s ease-in-out;
}

/** SINGLE **/

.post {
float: left;
width: 100%;
padding: 60px 0;
text-align: center;
}

.boxed {
  max-width: 960px;
  margin: 30px auto;
}

.entry {
margin: 45px 0;
font-size: 16px;
line-height: 1.5em;
letter-spacing: 0.05em;
}

.entry p {
margin-bottom: 20px;
}

/* IMAGES */

#slider, #slider li {
height: 800px;	
}

.flexslider li {
background-size: cover;
}

.thumb {
display: block;
width: 100%!important;
overflow: hidden;
}

.thumb img {
display: block;
width: 100%;
height: auto;
}

/* GALLERY */

ul#page-gallery li {
float: left;
width: 33.33%;
margin: 0;
padding: 0;
overflow: hidden;
}

ul#page-gallery li img {
display: block;
}

dl.gallery-item, dl.gallery-item img {
margin: 0!important;
border: 0!important;
}

/*.flexslider-carousel li {
overflow: hidden;
border: 5px solid #1a1a1a;
}*/

.flexslider-carousel { margin-top: 3px; }

li.gallery { margin-right: 5px;}

#carousel img {
opacity: 0.6;
}

#carousel li:hover img {
opacity: 0.4;
}

.flex-direction-nav {
margin-bottom: 0px;
}

#carousel img, ul#page-gallery li img, dl.gallery-item img, ul#gallery li img {
-webkit-transition: all 1s ease; /* Safari and Chrome */
-moz-transition: all 1s ease; /* Firefox */
-ms-transition: all 1s ease; /* IE 9 */
-o-transition: all 1s ease; /* Opera */
transition: all 1s ease;
}

ul#page-gallery li:hover img, dl.gallery-item:hover img, ul#gallery li:hover img {
-webkit-transform:scale(1.1); /* Safari and Chrome */
-moz-transform:scale(1.1); /* Firefox */
-ms-transform:scale(1.1); /* IE 9 */
-o-transform:scale(1.1); /* Opera */
transform:scale(1.1);
}

ul#gallery {
margin: 0;
padding: 0;
font-size: 0px;
line-height: 1em;
}

ul#gallery li {
float: left;
width: 25%;
overflow: hidden!important;
}

.featured {
line-height: 1em;
text-align: left;
}

.featured img {
width: 100%;
}

/* FORMS */

form {
width: 100%!important;
}

form label {
float: left!important;
width: 25%!important;
}

form textarea {
padding: 0px!important;
}

form input[type=text], form input[type=email], form textarea {
background: #373737;
width: 80%!important;
margin: 5px auto;
padding: 5px 10px!important;
border: 0px!important;
color: #6f6f6f;
font-size: 1.1em;
}

form input::-webkit-input-placeholder, form input:-moz-placeholder, form input::-moz-placeholder, form input:-ms-input-placeholder {  
color: #6f6f6f;
}


form textarea {
max-height: 137px!important;
}

input[type=submit], input[type=reset] {
background: #252525;
width: 100%!important;
padding: 10px 0;
border: 1px solid #252525!important;
text-transform: uppercase;
color: #6a6a6a;
font-family: "brandon-grotesque";
font-size: 1.6em!important;
font-weight: 700;
letter-spacing: 0.3em;
}

input[type=submit]:hover, input[type=reset]:hover {
cursor: pointer;
background: #000;
border: 1px solid #d3ccb4!important;
color: #d3ccb4;
}

footer form {
display: block;
max-width: 480px;
margin: 0 auto;
}

footer form > * {
text-align:center!important;
}

.gform_wrapper {
overflow: inherit;
margin: 30px auto!important;
max-width: 100%!important;
}

label.gfield_label {
display: none!important;
margin: 0!important;
width: 0!important;
}

.gform_footer {
width: 80%;
margin: 10px auto 0!important;
padding: 0!important;
}

.gform_confirmation_wrapper {
margin: 30px auto;
text-transform: uppercase;
}

/* IFRAME */

.nivo-lightbox-theme-default.nivo-lightbox-overlay {
background: rgba(0,0,0,0.8)!important;
}

.nivo-lightbox-inline {
background: #000!important;
padding: 10px 40px 20px!important;
}

.nivo-lightbox-wrap {
max-width: 600px;
margin-left: auto;
margin-right: auto;
}

h3.gform_title {
margin: 0 auto!important;
font-size: 1.8em!important;
text-align: center;
}

span.gform_description {
display: block;
width: 80%;
margin: 15px auto;
text-align: center!important;
font-size: 1.2em;
}

/* WIDGETS */

.essb_links li {
float: left!important;
font-size: 0.8em;
}

ul.instagram-pics {}

ul.instagram-pics li {
float: left;
width: 28%;
margin: 2.5%;
border: 5px solid #262626;
-webkit-box-sizing:border-box;
-moz-box-sizing:border-box;
-ms-box-sizing:border-box;
box-sizing:border-box;
}

ul.instagram-pics li img {
}

.nivo-lightbox-theme-default .nivo-lightbox-close {
  top: 10px!important;
  right: 10px!important;
  width: 40px!important;
  height: 40px!important;
}

/* RESPONSIVE */

.wrapper {
  float: left;
  width: 100%;
  background: #fafafa;
}

@media (min-width: 1280px) {

.container-full {
  float: none;
  display: block;
  width: 100%;
  margin: 0 auto;
  max-width: 1360px;
}

.col-2 {
  width: 33.4%;
  margin: 0 0 -0.1% -0.07%;

}

}

@media (min-width: 1280px) and (min-height: 800px) {

.restrict img {
max-width: 680px!important;
}

}

@media (min-width: 1280px) and (min-height: 500px) {

.restrict img {
max-width: 500px!important;
}

}

@media (max-width: 1280px) and (max-height: 960px) {

.restrict img {
max-width: 500px!important;
}

}

@media (max-width: 1024px) {

.desktop { display:none; }
.mobile { display:block; }

h1 {
font-size: 26px;
}

h2 {
font-size: 22px;
}

h3 {
font-size: 18px;
}

h4 {
  font-size: 16px;
  font-weight: 400;
}

h5 {
  font-size: 12px;
  letter-spacing: 0.1em;
  font-weight: 400;
}

h2.styled {
    font-size: 22px;
}

h3.styled {
    font-size: 18px;
}

a.button.oversize {
  padding: 10px 20px;
  font-size: 18px;
}
	
header {
	position: absolute;
}

.restrict img {
  max-width: 420px!important;
}

a.arrow-down, a.arrow-up {
  font-size: 36px;
}

a.arrow-up i {
  line-height: 34px;
}

h1. title, h1.section-title {
  font-size: 32px;
}

h1.section-title {
  padding: 60px 0;
}

.col-2 {
    width: 80%;
    margin: 0 10% 10%;
}

.col-2 .thumb {
    width: 35%!important;
}

.col-2.grid-block .meta {
    float: right;
    left:  35%;
    width: 65%!important;
    opacity: 1!important;
}

section#buy .col-left img {
    max-height: 100%!important;;
    width: auto!important;
}

.col-left {
    width:  50%;
}

.col-right {
    width:  50%;
}

.col-right .center-y {
	margin-top: -45px;
}

#video .container-full {
    background: #FFF;
    padding: 60px 2%;
}

.col-3.grid-block {
    width: 33%!important;
}

.col-3 .thumb {
	display: block;
    width:  90%!important;
    margin: 0 auto!important;
}

.col-3.grid-block .meta {
    position:  relative!important;
    padding: 20px 0;
    opacity: 1;
}

.grid-block .center-block {
    background:  rgba(0,0,0,0);
}

#window-resizer-tooltip {
  display: none!important;
}

}

@media (max-width: 768px) {
	
.col-2 .thumb {
    width: 50%!important;
}

.col-2.grid-block .meta {
    left:  50%!important;
    width: 50%!important;
}

.col-3, .col-3:nth-child(3), .col-3.grid-block {
    background: #FFF;
    width: 100%!important;
	padding: 45px 0!important;
}

.col-3:nth-child(1) {
    padding-top: 90px!important;
}

.col-3:nth-child(3) {
  padding-bottom: 90px!important;
}

.col-3 .thumb {
    display:block;
    width: 60%!important;
    margin: 0 20%
}

.restrict img {
  max-width: 540px!important;
}

}

@media (max-width: 640px) {
	
#cover-content img { max-width: 100px!important; }
	
.restrict { width: 90%!important; }
.restrict img { max-width: 100%!important; }

.arrow-down, .arrow-up { bottom: 20px!important; }

section#about { padding: 60px 0!important; }
.entry { font-size: 14px!important; }

.col-3:nth-child(1), .col-3:nth-child(3) {
padding: 15px 0!important;
}

.col-2 { width: 96%; margin: 0 2% 10%; }
/*.col-2 .thumb { width: 40%!important; }
.col-2.grid-block .meta { width: 60%!important; left: 40%!important; }*/

.col-2 .thumb { position: relative!important; width: 80%!important; margin: 0 auto; }
.col-2.grid-block .meta { position: relative!important; background: #FFF;  width: 100%!important; top: auto!important; bottom: 0px!important; left: 0px!important; height: auto!important; padding: 30px 0; }
.col-2.grid-block .center-content { display: block!important; margin: 0!important; }
.col-2.grid-block .center-block { display: block; width: 100%!important; height: auto!important; }

#buy .col-left, #buy .col-right { width: 100%; margin-bottom: 30px; }
#buy .col-left img { max-width: 220px!important; }
#buy .col-right { margin-top: -45px!important; }

.underline { margin: 7px auto 10px!important; }
.meta h3.sub-title { margin-bottom: -5px; font-size: 14px!important; }
.meta h4 { font-size: 12px!important; }
.meta h5 { font-size: 10px!important; }

h2.title.styled { font-size: 18px; }
h3.styled { font-size: 14px; }

}

/* 404 */

section#error {
    margin-top:  160px;
    text-align: center;
}

section#error h1.title {
    font-size:  90px;
    font-weight: 000!important;
    letter-spacing: -0.05em;
}