/*a {
  font-weight: 600;
  color: #47b475;
  transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  cursor: poitner;
}*/
body {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 13px;
  line-height: 24px;
  font-family: "Open Sans", "Helvetica Neue", Helvetica, Arial, sans-serif;
  color: #666;
  overflow-x: hidden;
}
/*!---------- 28. BLOG ----------*/
.post-title .label {
  margin-right: 16px;
}
.post-title h4 {
  position: relative;
  top: 2px;
  margin-bottom: 16px;
}
.post-meta,
.post-meta .tags {
  overflow: hidden;
  display: inline-block;
  margin-bottom: 12px;
}
.post-meta > li {
  float: left;
  margin-right: 24px;
}
.post-meta i {
  font-size: 16px;
  margin-right: 8px;
  position: relative;
  top: 2px;
}
.post-snippet iframe {
  width: 100%;
  margin-bottom: 12px;
}
.post-snippet .embed-video-container {
  margin-bottom: 24px;
}
.post-snippet .embed-video-container iframe {
  margin: 0;
}
.post-snippet .inner {
  background: #fff;
  padding: 24px;
}
.comments-list,
.comments-list ul {
  width: 100%;
  overflow: hidden;
}
.comments-list li {
  overflow: hidden;
  margin-bottom: 40px;
}
.comments-list p:last-of-type {
  margin: 0;
}
.comments-list .avatar,
.comments-list .comment {
  display: inline-block;
  float: left;
}
.comments-list .avatar {
  width: 10%;
}
.comments-list .avatar img {
  width: 75px;
}
.comments-list .comment {
  width: 90%;
  padding-left: 5%;
}
.comments-list .author {
  display: inline-block;
  margin-right: 16px;
  margin-bottom: 16px;
}
.comments-list .comment .btn {
  position: relative;
  margin: 0;
}
.comments-list ul {
  padding-left: 10%;
  padding-top: 40px;
}
.comments-list ul li:last-of-type {
  margin-bottom: 0;
}
.comments input[type="submit"] {
  max-width: 25%;
  float: right;
}
.masonry {
  transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  opacity: 0;
  transform: translate3d(0, 100px, 0);
  -webkit-transform: translate3d(0, 100px, 0);
  -moz-transform: translate3d(0, 100px, 0);
}
.masonry.fadeIn {
  opacity: 1;
  transform: translate3d(0, 0, 0);
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
}
.masonry-item {
  max-width: 100%;
}
.container .masonry-item {
  margin-bottom: 30px;
}
.masonry-item blockquote:hover {
  background: #47b475;
  transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  color: #fff;
}
.masonryFlyIn .masonry-item {
  opacity: 0;
  transform: translate3d(0, 50px, 0);
  -webkit-transform: translate3d(0, 50px, 0);
  -moz-transform: translate3d(0, 50px, 0);
}
.masonryFlyIn .masonry-item.fadeIn {
  opacity: 1;
  transform: translate3d(0, 0, 0);
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
}
.masonry-loader {
  transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  opacity: 1;
  position: absolute;
  width: 100%;
  z-index: 10;
  top: 80px;
}
.masonry-loader.fixed-center {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate3d(-50%, 0, 0);
  -webkit-transform: translate3d(-50%, 0, 0);
  -moz-transform: translate3d(-50%, 0, 0);
  margin-top: -25px;
}
.masonry-loader.fadeOut {
  opacity: 0;
  max-height: 0;
  padding: 0;
  overflow: hidden;
}
.spinner {
  width: 50px;
  height: 50px;
  margin: 0 auto;
  border-radius: 50%;
  box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.1), 2px 1px 0px #47b475;
  -moz-animation: spin 0.7s linear infinite;
  -webkit-animation: spin 0.7s linear infinite;
  animation: spin 0.7s linear infinite;
  display: inline-block;
  transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
}
@-moz-keyframes spin {
  100% {
    -moz-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@-webkit-keyframes spin {
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@keyframes spin {
  100% {
    -moz-transform: rotate(360deg);
    -ms-transform: rotate(360deg);
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@media all and (max-width: 767px) {
  .post-title .label {
    margin-bottom: 8px;
    display: inline-block;
  }
  .post-title h4 {
    top: 0;
    display: block;
  }
  .comments input[type="submit"] {
    max-width: 100%;
    float: none;
  }
}
/*!---------- 29. IMAGE BLOCKS ----------*/
.image-md {
  max-height: 120px;
}
.image-small {
  max-height: 80px;
}
.image-xs {
  max-height: 50px;
}
.image-xxs {
  max-height: 30px;
}
.fade-half {
  opacity: 0.5;
}
.fade-1-4 {
  opacity: 0.75;
}
.fade-3-4 {
  opacity: 0.25;
}
.fade-on-hover {
  transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  opacity: .5;
}
.fade-on-hover:hover {
  opacity: 1;
}
.cast-shadow {
  -webkit-box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.2);
  -moz-box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.2);
  box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.2);
}
.cast-shadow-light {
  -webkit-box-shadow: 0px 0px 4px 0px rgba(0, 0, 0, 0.2);
  -moz-box-shadow: 0px 0px 4px 0px rgba(0, 0, 0, 0.2);
  box-shadow: 0px 0px 4px 0px rgba(0, 0, 0, 0.2);
}
.image-block,
.image-block .image-bg {
  padding: 0;
  height: 50vw;
  max-height: 700px;
}
.image-block .container {
  height: 100%;
}
.image-block-right .image-bg {
  position: absolute;
  top: 0;
}
@media all and (max-width: 768px) {
  .image-block {
    height: auto;
    max-height: 1000000px;
  }
  .image-block .image-bg {
    height: 350px;
  }
  .image-block .v-align-transform {
    top: 0;
    transform: none;
    -webkit-transform: none;
  }
  .image-block-right .image-bg {
    position: relative;
  }
}
.image-edge .container {
  position: relative;
}
.image-edge .container div[class*='col-'] {
  position: absolute;
}
@media all and (max-width: 990px) {
  .image-edge .container div[class*='col-'] {
    position: relative;
    top: 0;
    transform: none;
    -webkit-transform: none;
  }
}
.image-square {
  height: 50vw;
  max-height: 640px;
  overflow: hidden;
  padding: 0;
}
.image-square .image,
.image-square > .content {
  position: absolute;
}
.image-square .image {
  height: 100%;
}
.image-square > .content {
  padding: 0 10%;
  top: 50%;
  transform: translate3d(0, -50%, 0);
  -webkit-transform: translate3d(0, -50%, 0);
  -moz-transform: translate3d(0, -50%, 0);
}
.image-square.left .image {
  left: 0;
}
.image-square.left > .content {
  right: 0;
}
.image-square.right .image {
  right: 0;
}
.image-square.right > .content {
  left: 0;
}
@media all and (max-width: 990px) {
  .image-square {
    height: auto;
    max-height: 100000px;
    padding-bottom: 48px;
  }
  .image-square .image,
  .image-square > .content {
    position: relative;
  }
  .image-square .image {
    height: 100vw;
    margin-bottom: 48px;
    max-height: 500px;
  }
  .image-square > .content {
    top: 0;
    transform: none;
    -webkit-transform: none;
    padding: 0 20%;
  }
}
@media all and (max-width: 767px) {
  .image-square > .content {
    padding: 0 15px;
  }
}
.image-zoom img {
  transition: all 9s ease;
  -webkit-transition: all 9s ease;
  -moz-transition: all 9s ease;
}
.image-zoom:hover img {
  transform: scale(1.1);
  -webkit-transform: scale(1.1);
}
.image-caption {
  position: relative;
  overflow: hidden;
}
.image-caption .caption {
  position: absolute;
  width: 100%;
  bottom: 0;
  padding: 16px;
  color: #fff;
}
.image-caption .caption p {
  position: relative;
  z-index: 4;
  margin: 0;
}
.image-caption .caption:before {
  content: '' attr(data-caption) '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
  opacity: 1;
  background: -moz-linear-gradient(top, rgba(0, 0, 0, 0) 0%, rgba(34, 34, 34, 0.7) 100%);
  /* FF3.6+ */
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, rgba(0, 0, 0, 0)), color-stop(100%, rgba(34, 34, 34, 0.7)));
  /* Chrome,Safari4+ */
  background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0) 0%, rgba(34, 34, 34, 0.7) 100%);
  /* Chrome10+,Safari5.1+ */
  background: -o-linear-gradient(top, rgba(0, 0, 0, 0) 0%, rgba(34, 34, 34, 0.7) 100%);
  /* Opera 11.10+ */
  background: -ms-linear-gradient(top, rgba(0, 0, 0, 0) 0%, rgba(34, 34, 34, 0.7) 100%);
  /* IE10+ */
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(34, 34, 34, 0.7) 100%);
  /* W3C */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#e6222222', GradientType=0);
  /* IE6-9 */
}
.image-caption.hover-caption .caption {
  opacity: 0;
  transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  transform: translate3d(0, 100px, 0);
  -webkit-transform: translate3d(0, 100px, 0);
  -moz-transform: translate3d(0, 100px, 0);
}
.image-caption.hover-caption:hover .caption {
  opacity: 1;
  transform: translate3d(0, 0, 0);
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
}
/*!---------- 30. PORTOFLIO ----------*/
.filters {
  overflow: hidden;
  display: inline-block;
}
.filters li {
  float: left;
  margin-right: 32px;
  cursor: pointer;
  font-family: "Raleway", "Helvetica Neue", Helvetica, Arial, sans-serif;
  border: 2px solid #47b475;
  padding: 0 26px;
  height: 40px;
  min-width: 150px;
  line-height: 36px;
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 1px;
  border-radius: 0;
  color: #47b475;
  text-align: center;
  transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  margin-right: 8px;
  margin-bottom: 24px;
  height: 30px;
  font-size: 11px;
  line-height: 27px;
  min-width: 0;
  border-color: rgba(255, 255, 255, 0);
  opacity: .7;
  border-radius: 25px;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  display: inline-block;
}
.filters li.active {
  border-color: #47b475;
  opacity: 1;
}
.filters li:last-child {
  margin-right: 0;
}
.filters.floating {
  position: absolute;
  z-index: 10;
  top: 16px;
  text-align: center;
  left: 50%;
  transform: translate3d(-50%, 0, 0);
  -webkit-transform: translate3d(-50%, 0, 0);
  -moz-transform: translate3d(-50%, 0, 0);
  background: rgba(255, 255, 255, 0.98);
  transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  border-radius: 200px;
}
.filters.floating li {
  margin-bottom: 0;
}
.bg-dark .filters.floating {
  background: #292929;
}
.bg-dark .filters.floating h1,
.bg-dark .filters.floating h2,
.bg-dark .filters.floating h3,
.bg-dark .filters.floating h4,
.bg-dark .filters.floating h5,
.bg-dark .filters.floating h6 {
  color: #ffffff;
}
.bg-dark .filters.floating p,
.bg-dark .filters.floating span,
.bg-dark .filters.floating li {
  color: #fefefe;
}
.project {
  transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  opacity: 1;
  padding: 0;
}
.container .project {
  padding: 0 15px;
}
.project.inactive {
  opacity: .1 !important;
  pointer-events: none !important;
}
.project .image-tile {
  margin: 0;
}
.project.inactive:hover .title,
.project.inactive .image-tile:hover:before {
  display: none;
}
@media all and (max-width: 868px) {
  .filters.floating {
    width: 90vw;
  }
  .filters.floating li {
    float: none;
  }
}
@media all and (max-width: 767px) {
  .filters.floating {
    border-radius: 0;
    padding: 8px;
  }
  .filters.floating li {
    width: 50%;
    float: left;
    margin: 0;
  }
}
section + .portfolio-pullup {
  padding-top: 0;
  margin-top: -128px;
  position: relative;
  z-index: 20;
}
.portfolio-pullup .project {
  margin-bottom: 0;
}
.portfolio-pullup .inner-title:hover {
  opacity: 1;
}


img {
  max-width: 100%;
}
.image-tile {
  overflow: hidden;
  position: relative;
  margin-bottom: 24px;
}
.image-tile img {
  width: 100%;
  display: inline-block;
}
.image-tile .label {
  position: absolute;
  top: 16px;
  right: 16px;
  z-index: 5;
}
.inner-title:before {
  transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  content: '';
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  background: -moz-linear-gradient(top, rgba(0, 0, 0, 0) 0%, rgba(34, 34, 34, 0.9) 100%);
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, rgba(0, 0, 0, 0)), color-stop(100%, rgba(34, 34, 34, 0.9)));
  background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0) 0%, rgba(34, 34, 34, 0.9) 100%);
  background: -o-linear-gradient(top, rgba(0, 0, 0, 0) 0%, rgba(34, 34, 34, 0.9) 100%);
  background: -ms-linear-gradient(top, rgba(0, 0, 0, 0) 0%, rgba(34, 34, 34, 0.9) 100%);
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(34, 34, 34, 0.9) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#292929', GradientType=0);
  pointer-events: none;
}
.inner-title.title-center:before {
  background: #292929;
  opacity: .4;
}
.inner-title:hover:before {
  transform: scale(1.2);
  -webkit-transform: scale(1.2);
}
.inner-title .title {
  position: absolute;
  width: 100%;
  bottom: 24px;
  z-index: 5;
}
.inner-title .title h1,
.inner-title .title h2,
.inner-title .title h3,
.inner-title .title h4,
.inner-title .title h5,
.inner-title .title h6 {
  color: #ffffff;
}
.inner-title .title p,
.inner-title .title span,
.inner-title .title li {
  color: #ffffff;
}
.inner-title.title-center .title {
  bottom: auto;
  top: 50%;
  transform: translate3d(0, -50%, 0);
  -webkit-transform: translate3d(0, -50%, 0);
  -moz-transform: translate3d(0, -50%, 0);
}
.inner-title .title h5 {
  font-weight: 600;
}
.inner-title {
  transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  opacity: 1;
}
.inner-title:hover {
  opacity: .95;
}
.inner-title.hover-reveal:before {
  opacity: 0;
}
.inner-title.hover-reveal .title {
  opacity: 0;
  transform: translate3d(0, 50px, 0);
  -webkit-transform: translate3d(0, 50px, 0);
  -moz-transform: translate3d(0, 50px, 0);
  transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
}
.inner-title.hover-reveal:hover .title {
  opacity: 1;
  transform: translate3d(0, 0px, 0);
  -webkit-transform: translate3d(0, 0px, 0);
  -moz-transform: translate3d(0, 0px, 0);
}
.inner-title.hover-reveal:hover:before {
  opacity: 1;
}
.outer-title img {
  display: inline-block;
  margin-bottom: 12px;
}
.hover-tile {
  position: relative;
  overflow: hidden;
  background: #292929;
}
.hover-tile img {
  transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
}
.hover-tile:hover img {
  opacity: .5;
}
.hover-tile .hover-state {
  position: relative;
  transform: translate3d(0, -50%, 0);
  -webkit-transform: translate3d(0, -50%, 0);
  top: 50%;
  z-index: 2;
  position: absolute;
  transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  opacity: 0;
  width: 100%;
}
.hover-state {
  z-index: 99;
  padding: 0 40px;
  cursor: default;
}
.hover-state h1,
.hover-state h2,
.hover-state h3,
.hover-state h4,
.hover-state h5,
.hover-state h6 {
  color: #ffffff;
}
.hover-state p,
.hover-state span,
.hover-state li {
  color: #ffffff;
}
.hover-state * {
  transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  transform: translate3d(0, 30px, 0) scale(1.05);
  -webkit-transform: translate3d(0, 30px, 0) scale(1.05);
}
.hover-tile:hover .hover-state {
  opacity: 1;
}
.hover-tile:hover .hover-state * {
  transform: translate3d(0, 0px, 0) scale(1);
  -webkit-transform: translate3d(0, 0px, 0) scale(1);
}
.hover-state *:last-child {
  margin-bottom: 0;
}
.border-thick {
  border: 16px solid #fff;
  border-top: none;
}
.border-thick.col-sm-6:first-child {
  border-right: 8px solid #fff;
}
.border-thick.col-sm-6:last-child {
  border-left: 8px solid #fff;
}
.horizontal-tile {
  overflow: hidden;
}
.horizontal-tile:not(:last-of-type) {
  margin-bottom: 30px;
}
.tile-left,
.tile-right {
  width: 50%;
  float: left;
  display: inline-block;
  overflow: hidden;
  min-height: 300px;
  position: relative;
}
.tile-right .description,
.tile-left .description {
  padding: 48px;
}
.tile-right:hover .background-image-holder,
.tile-left:hover .background-image-holder {
  transform: scale(1.1);
  -webkit-transform: scale(1.1);
}
@media all and (max-width: 767px) {
  .tile-left,
  .tile-right {
    width: 100%;
    float: none;
  }
}