body {
  padding: 0;
  margin: 0;
  background: #fff;
  letter-spacing: 1;
  transition: .5s ease-in-out;
}

body.dark {
  background: #191919;
} 

body #main.first {
  margin-left: 0;
}

/* body.open #main.first {
  margin-left: -100vw;
} */

@font-face {
  font-family: "Sequel";
  src: url("font/Sequel-Sans-Light-Disp.woff") format("woff"),
       url("font/Sequel-Sans-Light-Disp.otf") format("opentype");
    format("opentype");
}

#preloader {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  height: 100vh;
  width: 100vw;
  background: #fff;
  z-index: 9995;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  visibility: hidden;
  transition: opacity .5s ease-in-out, visibility .5s ease-in-out;
}

body.loading #preloader {
  opacity: 1;
  visibility: visible;
}

#header {
  padding: 30px;
  position: absolute;
  z-index: 9990;
}

body.menu #header #header-title {
  display: none;
}

#header #header-title,
#header-button {
  text-decoration: none;
  color: #999;
}

body #header-title {
  transition: opacity .5s ease-in-out;
}

body.menu #header-title {
  opacity: 0;
}

#header #header-title b {
  font-weight: lighter;
  color: #000;
}

#header-button {
  position: fixed;
  right: 30px;
  top: 30px;
  z-index: 9985;
}

#main {
  position: absolute;
  left: 0;
  width: 100vw;
  transition: left .5s ease-in-out, opacity .5s ease-in-out;
  z-index: 9950;
}

.mfp-content #main {
  position: unset !important;
  text-align: center;
  width: auto !important;
}

#main.tag {
  padding-top: 100px;
}

.mfp-content #main #single li {
  display: flex;
  align-items: center;
  justify-content: center;
}

.mfp-content #main #single li img {
  opacity: 0;
  transition: .4s ease-in-out;
}

.mfp-content #main #single li img.lazyloaded {
  opacity: 1;
}

#main #showreel {
  height: 100vh;
  width: 100vw;
  position: relative;
  z-index: 9980;
}

#main #showreel::before {
  content: 'scroll down to see more';
  position: absolute;
  left: 30px;
  bottom: 30px;
  z-index: 9980;
  font: 10pt 'Sequel';
  font-weight: lighter;
  color: #000;
  padding-right: 18px;
  opacity: 0.5;
  background: url('img/icon-arrow-bottom.svg') center right / 10px auto no-repeat;
}

#main #showreel .slick-slide li {
  display: flex !important;
  align-items: center;
  justify-content: center;
  height: calc(100vh - 120px);
  margin-top: 90px;
}

#main #showreel .arrow {
  position: absolute;
  border: 0;
  font-size: 0;
  background-repeat: no-repeat;
  background-size: 20px auto;
  background-color: transparent;
  opacity: 1;
  top: 50%;
  margin-top: -10px;
  height: 20px;
  width: 20px;
  z-index: 9985;
  transition: opacity .5s ease-in-out;
  padding: 0;
  margin: 0;
}

#main #showreel #showreel-prev {
  background-image: url(img/icon-arrow-left.svg);
  left: 30px;
  background-position: center center;
}

#main #showreel #showreel-next {
  background-image: url(img/icon-arrow-right.svg);
  right: 30px;
  background-position: center center;
}

#main #gallery {
  font-size: 0;
  background: #fff;
}

#main #gallery .post {
  display: inline-flex;
  align-items: center;
  flex-direction: column;
  float: left;
}

#main #gallery .post a {
  text-decoration: none;
}

#main #gallery .post {
  opacity: 1;
  transition: opacity .5s ease-in-out;
}

#main #gallery .post a.fade img {
  opacity: 0.1;
}

#main #gallery .post a .caption {
  color: #999;
  margin-top: 10px;
  display: block;
  transition: .5s ease-in-out;
}

#main #gallery .post a:hover .caption {
  color: #000;
}

body.dark #main #gallery .post a:hover .caption {
  color: #fff;
}

#main #gallery .post a .caption u {
  text-decoration: none;
  font: 12pt 'Sequel';
  display: inline-block;
  color: #000;
  transition: color .5s ease-in-out;
}

body.dark #main #gallery .post a .caption u {
  color: #fff;
}

#main #gallery .post a .icon-video {
  position: absolute;
  background: #fff;
  top: 0;
  right: 0;
  padding: 5px;
}

#main #gallery .post:nth-child(3n) {
  width: 100%;
}

#main #gallery .post .post-content {
  margin: 0 auto;
  position: relative;
  display: block;
}

#main #gallery .post .post-content img {
  height: auto;
  transition: .5s ease-in-out;
}

#main #gallery .post .post-tags {
  text-align: left;
  margin: 0 auto;
  padding: 0;
}

#main #gallery .post .post-tags li {
  display: inline-block;
  margin-right: 8px;
  text-transform: lowercase;
}

#main #gallery .post .post-tags li a {
  color: #bbb;
  transition: color .5s ease-in-out;
}

#main #gallery .post .post-tags li a:hover {
  color: #fff;
}

#main #gallery .post:hover .post-tags li {
  color: #999;
}

#sidebar {
  position: fixed;
  box-sizing: border-box;
  top: 0;
  background: #fff;
  opacity: 0;
  transition: right .01s ease-in-out, opacity .8s ease-in-out;
  z-index: 9980;
}

#sidebar div:last-child {
  margin: 0;
}

#sidebar ul,
#sidebar p {
  margin: 0;
  padding: 0;
}

#sidebar ul {
  text-align: left;
}

#sidebar .tags li {
  list-style: none;
  margin-right: 10px;
  margin-bottom: 10px;
  font-family: 'Sequel';
  display: inline-block;
}

#sidebar .links {
  margin-top: 30px;
}

#sidebar .links li {
  list-style: none;
  display: inline-block;
  color: #999;
  text-transform: lowercase;
}

#sidebar .tags li a,
#sidebar .links li a {
  color: #999;
  transition: color .5s ease-in-out, border-color .5s ease-in-out;
  text-decoration: none;
  font-family: 'Sequel';
  text-transform: lowercase;
  display: inline-block;
  padding-bottom: 3px;
  border-bottom: 1px solid #eee;
}

#sidebar .links li {
  margin-right: 30px;
}

#sidebar li a.selected,
#sidebar li a:hover,
#sidebar .links li a:hover {
  color: #000;
  border-color: #000;
}

body.menu #main {
  opacity: 0.2;
  filter: blur(4px);
}

body.menu #sidebar {
  right: 0;
  opacity: 1;
}

#sidebar #credit {
  font: 9pt 'Sequel';
  text-decoration: none;
  color: #aaa;
  padding-bottom: 0 !important;
  border: 0 !important;
  position: absolute;
  right: 30px;
  bottom: 30px;
  transition: color .5s ease-in-out;
}

#sidebar #credit:hover {
  color: #000;
}

#single {
  padding: 0;
  margin: 0;
}

#single li {
  height: 100vh;
  width: 100%;
  list-style: none;
  padding: 0;
  margin: 0;
}

#single li img {
  height: calc(100vh - 60px);
  width: auto;
}



/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  padding: 0;
  margin: 0;
  text-align: center;
}

.slick-list {
  position: relative;
  display: block;
  overflow: hidden;
  margin: 0;
  padding: 0 !important;
}

.slick-list:focus {
  outline: none;
}

.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
      -ms-transform: translate3d(0, 0, 0);
        -o-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  top: 0;
  left: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.slick-track:before,
.slick-track:after {
  display: table;
  content: '';
}

.slick-track:after {
  clear: both;
}

.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  display: none;
  float: left;
  height: 100%;
  min-height: 1px;
}

.slick-slide.slick-loading img {
  display: none;
}

.slick-initialized .slick-slide {
  display: block;
}
.slick-loading .slick-slide
{
    visibility: hidden;
}
.slick-vertical .slick-slide
{
    display: block;

    height: auto;

    border: 1px solid transparent;
}
.slick-arrow.slick-hidden {
    display: none;
}

.slick-arrow {
  border: 0;
  overflow: hidden;
  font-size: 0;
  display: inline-block;
  vertical-align: middle;
  height: 22px;
  width: 14px;
  background-size: 100% auto;
  background-position: center center;
  background-repeat: no-repeat;
  margin: 0 5px;
  opacity: 0.4;
}

.slick-arrow.arrow-prev {
  background-image: url('img/icon-arrow-left.svg');
}

.slick-arrow.arrow-next {
  background-image: url('img/icon-arrow-right.svg');
}

#page {
  padding-top: 100px;
}

#page .col h2,
#page .col h3 {
  font-family: 'Sequel', sans-serif;
  font-weight: lighter;
}

#page .col p {
  font: 20pt 'Sequel';
  line-height: 32pt;
  letter-spacing: 1pt;
}

#page .small p {
  font: 11pt 'Sequel';
  line-height: 16pt;
}

#page .col p a {
  color: #000;
  padding-bottom: 1px;
  text-decoration: none;
}

#page .col h3 {
  font-size: 14pt;
}

#page .col h2 {
  font-size: 20pt;
}


/* responsive */

@media (max-width: 800px) and (orientation: portrait) {
  #header #header-title,
  #header-button,
  #main #gallery .post .post-info h2,
  button.mfp-close,
  #preloader span,
  #sidebar p,
  #sidebar ul li a,
  #sidebar p a {
    font: 14pt 'Sequel';
  }
  #header-title b {
    display: block;
  }
  #sidebar {
    width: 100vw;
    right: -100vw;
    height: 100vh;
    padding: 30px;
    height: 100vh;
  }
  #sidebar div {
    margin-top: 90px;
  }
  #main #gallery .post,
  .mfp-content #main #single li img {
    margin: 40px 0;
  }
  #main #showreel .slick-slide img,
  #main #gallery .post .post-content img,
  #main #gallery .post a .caption {
    width: calc(100% - 60px);
  }
  #main #gallery .post a .caption {
    text-align: left;
    margin-left: auto;
    margin-right: auto;
  }
  #main #gallery .post {
    width: 100%;
  }
  #main #gallery .post .post-content {
    width: 100%;
    text-align: center;
  }
  #main #showreel .slick-slide li img {
    width: calc(100% - 60px);
    height: auto;
  }
  .mfp-content #main #single li img {
    width: calc(100% - 60px);
    height: auto;
  }
  #main #gallery .post a .caption u {
    color: #999;
  }
  #page .col,
  #page .col.double {
    width: calc(100% - 60px); 
    padding: 30px;
  }
  #page .col.double {
    padding-bottom: 0 !important;
  }
  #page .col > .col {
  	padding: 0 !important;
  }
}

@media (min-width: 800px) {
  #header #header-title,
  #header-button,
  #main #gallery .post .post-info h2,
  button.mfp-close,
  #sidebar ul.links li,
  #sidebar ul.links li a,
  #preloader span {
    font: 20pt 'Sequel';
  }
  #sidebar ul {
    max-width: 60%;
  }
  #sidebar ul.tags li,
  #sidebar ul.tags li a {
  	font: 20pt 'Sequel';
  }
  #main #gallery .post a .caption {
    font: 13pt 'Sequel';
    line-height: 20pt;
  }
  #main #gallery .post .post-tags li {
  	font: 10pt 'Sequel';
  }
  #sidebar ul.tags,
  #sidebar ul.tags li {
    line-height: 22pt;
  }
  #sidebar {
    width: 100vw;
    right: -100vw;
    padding: 30px;
    height: 100vh;
    min-width: 300px;
  }
  #main #gallery .post {
    margin: 5vh 0;
  }
  #main #gallery .post:nth-child(3n+1),
  #main #gallery .post:nth-child(3n+2) {
    width: 50%;
  }
  #main #gallery .post:nth-child(3n+1) .post-content,
  #main #gallery .post:nth-child(3n+1) .post-tags {
    width: 55%;
  }
  #main #gallery .post:nth-child(3n+2) .post-content,
  #main #gallery .post:nth-child(3n+2) .post-tags {
    width: 45%;
  }
  #main #gallery .post:nth-child(3n+2) {
    padding-top: 40vh;
  }
  #main #gallery .post .post-content img {
    width: 100%;
  }
  #main #gallery .post:nth-child(3n) img {
    height: auto;
    margin: 0 auto;
    display: block;
  }
  #main #gallery .post:nth-child(3n) .post-content,
  #main #gallery .post:nth-child(3n) .post-tags {
    width: 35%;
    max-width: 1000px;
  }
  .mfp-content #main #single li img {
    height: 90%;
    width: auto;
  }
  #main #showreel .slick-slide li img {
    max-height: 100%;
    max-width: calc(100vw - 60px);
    height: auto;
    width: auto;
  }
  #page {
    display: flex;
  }
  #page .col {
    width: calc(25% - 60px);
    padding: 30px;
  }
  #page .col.double {
    width: calc(70% - 60px);
    padding: 30px; 
    margin-right: 5%;
  }
  #page .col .col {
    float: left;
    padding: 0 !important;
    width: 50%;
  }
}



