@import 'normalize.css';
@import 'font-awesome.css';
@import 'swiper.css';
@import 'typography.css';

html { box-sizing:border-box; }
*, *:before, *:after { box-sizing: inherit; }

body {
  background:#fff;
  color:#000;
  font-size:15px;
  line-height:18px;
  font-family:'amaranthregular', Arial, Helvetica, sans-serif;
}
a {
  color:#000;
  text-decoration:none;
  border-bottom-color:#000;
  transition:all .3s ease-out;
}
a:hover {
  color:#ef615f;
  border-color:#ef615f;
}
p {
  margin:18px 0;
}
h1 {

}
h2 {
  margin:8px 0 5px 0;
  font-size:34px;
  line-height:34px;
  font-family:'abril_fatfaceregular';
  font-weight:normal;
  text-transform:uppercase;
}

.container {
  overflow:hidden;
}

sidebar {
  position:fixed;
  top:0;
  left:36px;
  width:176px;
  height:100%;
  padding:34px 16px;
  display:block;
  background:#000;
  color:#fff;
  z-index:99;
}
sidebar a {
  color:#fff;
  border:none;
}
sidebar a:hover {
  color:#ef615f;
}
.logo {
  width:104px;
  height:114px;
  display:block;
  margin:0 auto 40px auto;
}
.logo svg {
  width:100%;
  height:100%;
  display:block;
}
.logo svg path {
  transition:all .3s ease-out;
}
.logo:hover svg path {
  fill:#ef615f;
}
nav ul {
  margin:0;
  padding:0;
  display:block;
  list-style:none;
  text-align:center;
}
nav li {
  margin:0 0 13px 0;
}
nav a {
  position:relative;
  font-size:12px;
  line-height:15px;
}
nav li.active a:before {
  content:'';
  position:absolute;
  top:4px;
  left:-10px;
  width:5px;
  height:5px;
  display:block;
  background:#fff;
  border-radius:5px;
}
ul.social {
  position:absolute;
  bottom:23px;
  left:0;
  width:100%;
  height:auto;
  margin:0;
  padding:0;
  display:block;
  list-style:none;
  text-align:center;
}
ul.social li {
  width:26px;
  height:26px;
  margin:0 5px;
  display:inline-block;
}
ul.social a {
  width:100%;
  height:100%;
  display:block;
  font-size:26px;
}

.content {
  margin-left:244px;
}
.intro {
  max-width:780px;
  margin:30px 0 38px 0;
}
.intro a {
  border-bottom-width:1px;
}
.project {
  margin-bottom:45px;
}
.swiper-container {
  width:100%;
  height:100%;
  overflow:visible;
}
.swiper-slide {
  float:left;
  width:auto;
  height:auto;
  display:block;
}
.swiper-slide p {
  margin:3px 0;
  padding-right:20px;
  font-size:12px;
  line-height:15px;
  font-weight:bold;
}
.swiper-button-prev,
.swiper-button-next {
  position:absolute;
  top:-6px;
  left:auto;
  right:20px;
  width:12px;
  height:20px;
  display:block;
  background:none;
  font-size:36px;
  line-height:20px;
  text-align:center;
  transition:all .3s ease-out;
}
.swiper-button-prev:hover,
.swiper-button-next:hover {
  color:#ef615f;
}
.swiper-button-prev {
  right:34px;
}
#overlay,
#video-overlay {
  position:fixed;
  top:0;
  left:0;
  width:100%;
  height:100%;
  padding:40px;
  display:none;
  background:rgba(0, 0, 0, .75);
  z-index:999;
  transform-style:preserve-3d;
}
#overlay img {
  position:relative;
  top:50%;
  max-width:100%;
  max-height:100%;
  margin:0 auto;
  display:block;
  transform:translateY(-50%);
}
#video-overlay .iframe-wrapper {
  position:relative;
  top:50%;
  margin:0 auto;
  padding-top:56.25%;
  display:block;
  overflow:hidden;
  transform:translateY(-50%);
}
#video-overlay .iframe-wrapper.vertical {
  height:calc(100vh - 80px);
  padding-top:0;
}
#video-overlay .iframe-wrapper iframe {
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
  display:block;
}
.close {
  position:absolute;
  top:20px;
  right:20px;
  width:40px;
  height:40px;
  border:none;
  font-size:30px;
  line-height:40px;
  color:#fff;
  text-align:center;
  cursor:pointer;
  z-index:1;
}
.close:hover {
  color:#ef615f;
}

@media screen and (max-width:767px) {
  h2 {
    font-size:24px;
    line-height:24px;
  }
  sidebar {
    position:static;
    width:100%;
    height:auto;
    background:none;
  }
  .logo {
    margin-bottom:0;
  }
  .logo path {
    fill:#000;
  }
  .menu-toggle {
    position:fixed;
    top:0;
    left:0;
    width:44px;
    height:44px;
    display:block;
    background:#000;
    z-index:4;
  }
  .menu-toggle span {
    position:absolute;
    top:9px;
    left:7px;
    width:30px;
    height:4px;
    display:block;
    background:#fff;
    transition:all .3s ease-out;
  }
  .menu-toggle span:nth-child(2),
  .menu-toggle span:nth-child(3) {
    top:20px;
  }
  .menu-toggle span:nth-child(4) {
    top:31px;
  }
  .menu-toggle.open span:nth-child(1),
  .menu-toggle.open span:nth-child(4) {
    opacity:0;
  }
  .menu-toggle.open span:nth-child(2) {
    transform:rotate(45deg);
  }
  .menu-toggle.open span:nth-child(3) {
    transform:rotate(-45deg);
  }
  nav {
    position:fixed;
    top:0;
    left:0;
    width:100%;
    height:100%;
    padding:36px 44px;
    display:none;
    background:#000;
    z-index:3;
  }
  nav li.active a:before {
    display:none;
  }
  ul.social {
    position:fixed;
    bottom:0;
    left:0;
    width:100%;
    height:auto;
    padding:36px;
    display:none;
    background:#000;
    z-index:4;
  }
  .content {
    margin-left:0;
    padding:0 14px;
  }
  .intro {
    margin-top:0;
  }
  .swiper-button-prev,
  .swiper-button-next {
    top:145px;
    font-size:26px;
  }
  .swiper-button-prev {
    right:auto;
    left:-13px;
  }
  .swiper-button-next {
    right:-13px;
  }
  .swiper-slide {
  }
  .swiper-slide img {
    width:100%;
    height:auto;
    display:block;
  }
  .swiper-slide p {
    max-width:292px;
  }
  #overlay {
    padding:40px 14px;
  }
  .close {
    top:0;
    right:0;
    width:44px;
    height:44px;
    line-height:44px;
  }
}