.disable-download img {
  pointer-events: none; }
@-webkit-keyframes rotate-forever {
  0% {
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg); }
  100% {
    -webkit-transform: rotate(360deg);
    -moz-transform: rotate(360deg);
    -ms-transform: rotate(360deg);
    -o-transform: rotate(360deg);
    transform: rotate(360deg); } }

@-moz-keyframes rotate-forever {
  0% {
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg); }
  100% {
    -webkit-transform: rotate(360deg);
    -moz-transform: rotate(360deg);
    -ms-transform: rotate(360deg);
    -o-transform: rotate(360deg);
    transform: rotate(360deg); } }

@keyframes rotate-forever {
  0% {
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg); }
  100% {
    -webkit-transform: rotate(360deg);
    -moz-transform: rotate(360deg);
    -ms-transform: rotate(360deg);
    -o-transform: rotate(360deg);
    transform: rotate(360deg); } }

.lightbox-spinner {
  -webkit-animation-duration: 0.7s;
  -moz-animation-duration: 0.7s;
  animation-duration: 0.7s;
  -webkit-animation-iteration-count: infinite;
  -moz-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
  -webkit-animation-name: rotate-forever;
  -moz-animation-name: rotate-forever;
  animation-name: rotate-forever;
  -webkit-animation-timing-function: linear;
  -moz-animation-timing-function: linear;
  animation-timing-function: linear;
  height: 30px;
  width: 30px;
  border: 4px solid #fff;
  border-right-color: transparent;
  border-radius: 50%;
  display: inline-block;
  opacity: 0.7; }
.link-transition a {
  transition: background 0.2s ease, color 0.2s ease; }
  .link-transition a svg {
    transition: fill 0.2s ease; }

.project-cover .details {
  transition: background 0.2s ease; }

.project-cover .title,
.project-cover .fields,
.project-cover .custom,
.project-cover .description,
.project-cover .date {
  transition: color 0.2s ease; }
html.lightbox-enabled,
html.lightbox-enabled body {
  overflow: hidden; }

html.lightbox-zoomed .lightbox-content {
  cursor: zoom-out;
  overflow: auto; }
  html.lightbox-zoomed .lightbox-content.zoomable-x {
    justify-content: flex-start; }
  html.lightbox-zoomed .lightbox-content.zoomable-y {
    align-items: baseline; }

html.lightbox-zoomed #lightbox-wrap img {
  max-width: inherit;
  max-height: inherit; }

html.lightbox-zoomed #lightbox-img-wrap .lightbox-extra {
  display: none; }

.lightbox-link,
.lightbox-content.zoomable {
  cursor: zoom-in; }

#lightbox-wrap .lightbox-contents {
  -moz-user-select: none;
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none; }

.lightbox-content {
  align-items: center;
  display: flex;
  height: 100%;
  justify-content: center;
  opacity: 1;
  position: absolute;
  top: 0;
  transition: opacity .4s;
  width: 100vw; }

#lightbox-blocking {
  align-items: center;
  bottom: 0;
  display: flex;
  justify-content: center;
  left: 0;
  position: fixed;
  right: 0;
  top: 0;
  z-index: 1002; }
  #lightbox-blocking .lightbox-spinner {
    display: none; }

#lightbox-wrap {
  height: 100%;
  left: 0;
  position: fixed;
  top: 0;
  width: 100vw;
  z-index: 1001; }
  #lightbox-wrap .offscreen, #lightbox-wrap.offscreen {
    height: 0;
    overflow: hidden;
    visibility: hidden;
    -webkit-transform: translateX(-99999px);
    -ms-transform: translateX(-99999px);
    transform: translateX(-99999px);
    width: 0; }
  #lightbox-wrap.loading .lightbox-spinner {
    display: block; }
  #lightbox-wrap .hidden {
    opacity: 0; }
  #lightbox-wrap .lightbox-contents {
    display: inline-block;
    max-height: 100%;
    max-width: 100%; }
  #lightbox-wrap.single .next, #lightbox-wrap.single .next:hover,
  #lightbox-wrap.single .prev,
  #lightbox-wrap.single .prev:hover {
    display: none; }
  #lightbox-wrap.extras-hidden #lightbox-img-wrap .lightbox-extra {
    opacity: 0;
    transition: opacity 1s; }
  #lightbox-wrap img {
    max-height: 100vh;
    max-width: 100vw; }

#lightbox-inner-wrap {
  height: 100%;
  margin: auto;
  position: relative;
  z-index: 1003; }
  #lightbox-inner-wrap .control {
    cursor: pointer;
    position: absolute;
    z-index: 1003; }
  #lightbox-inner-wrap svg .lightbox-icon-bg {
    fill: #696969;
    opacity: .2; }
  #lightbox-inner-wrap svg:hover .lightbox-icon-bg {
    opacity: .4; }
  #lightbox-inner-wrap .next,
  #lightbox-inner-wrap .prev {
    height: 100vh;
    opacity: 0;
    top: 0;
    width: 30vw; }
    #lightbox-inner-wrap .next:hover,
    #lightbox-inner-wrap .prev:hover {
      opacity: 1; }
    #lightbox-inner-wrap .next.hidden,
    #lightbox-inner-wrap .prev.hidden {
      cursor: default; }
      #lightbox-inner-wrap .next.hidden svg,
      #lightbox-inner-wrap .prev.hidden svg {
        display: none; }
    #lightbox-inner-wrap .next svg,
    #lightbox-inner-wrap .prev svg {
      top: -webkit-calc(50% - 30px) ;
      top: calc(50% - 30px) ;
      position: absolute; }
      #lightbox-inner-wrap .next svg .lightbox-icon-arrow,
      #lightbox-inner-wrap .prev svg .lightbox-icon-arrow {
        fill: #FFFFFF; }
  #lightbox-inner-wrap .next {
    right: 0; }
    #lightbox-inner-wrap .next svg {
      right: 20px; }
  #lightbox-inner-wrap .prev {
    left: 0; }
    #lightbox-inner-wrap .prev svg {
      left: 20px; }
  #lightbox-inner-wrap .close {
    position: fixed;
    height: 40px;
    right: 20px;
    top: 20px;
    width: 40px; }
    #lightbox-inner-wrap .close:hover {
      cursor: pointer; }
    #lightbox-inner-wrap .close .lightbox-icon-bg {
      fill: #fff; }

@media (max-width: 1024px) {
  #lightbox-inner-wrap .close {
    right: 0;
    top: 0; }
    #lightbox-inner-wrap .close circle {
      display: none; }
  #lightbox-inner-wrap .next:hover,
  #lightbox-inner-wrap .prev:hover {
    opacity: 0; } }

@media (min-width: 1024px) {
  .lightbox-link.hover-icon-enabled {
    position: relative; }
    .lightbox-link.hover-icon-enabled:hover::after {
      background: rgba(105, 105, 105, 0.2) url("") no-repeat center;
      background-size: 16px;
      border-radius: 50%;
      content: '';
      display: block;
      height: 36px;
      position: absolute;
      right: 10px;
      top: 10px;
      width: 36px;
      z-index: 1000; } }

@media all and (-ms-high-contrast: none) {
  .lightbox-link,
  .lightbox-content.zoomable {
    cursor: pointer; } }
@-webkit-keyframes fade-in {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }

@-moz-keyframes fade-in {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }

@keyframes fade-in {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }

@-webkit-keyframes fade-out {
  from {
    opacity: 1; }
  to {
    opacity: 0; } }

@-moz-keyframes fade-out {
  from {
    opacity: 1; }
  to {
    opacity: 0; } }

@keyframes fade-out {
  from {
    opacity: 1; }
  to {
    opacity: 0; } }

.transition-enabled {
  opacity: 0; }

.transition-in {
  -webkit-animation: fade-in ease-in;
  animation: fade-in ease-in;
  -webkit-animation-duration: 0.25s;
  animation-duration: 0.25s;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards; }

.transition-out {
  opacity: 1;
  -webkit-animation: fade-out ease-out;
  animation: fade-out ease-out;
  -webkit-animation-duration: 0.25s;
  animation-duration: 0.25s;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards; }
