/* 576    phone  */
/* 768    tablet */
/* 992    laptop */
/* 1200   desktop */
/* $point: xs, sm, md, lg, or xl */
/* $first: up, down */
@media screen and (max-width: 0rem) {
  .hidden-xs-down {
    display: none !important; } }

@media screen and (min-width: 0rem) {
  .hidden-xs-up {
    display: none !important; } }

@media screen and (max-width: 36em) {
  .hidden-sm-down {
    display: none !important; } }

@media screen and (min-width: 36em) {
  .hidden-sm-up {
    display: none !important; } }

@media screen and (max-width: 48em) {
  .hidden-md-down {
    display: none !important; } }

@media screen and (min-width: 48em) {
  .hidden-md-up {
    display: none !important; } }

@media screen and (max-width: 62em) {
  .hidden-lg-down {
    display: none !important; } }

@media screen and (min-width: 62em) {
  .hidden-lg-up {
    display: none !important; } }

@media screen and (max-width: 75em) {
  .hidden-xl-down {
    display: none !important; } }

@media screen and (min-width: 75em) {
  .hidden-xl-up {
    display: none !important; } }

html, body {
  margin: 0;
  padding: 0;
  background-color: #fff;
  font-family: 'Cormorant', sans-serif;
  font-size: 10px;
  height: 100%; }

body {
  display: flex;
  flex-direction: column; }
  body #content {
    flex: 1 0 auto; }
  body footer {
    flex-shrink: 0; }

.icon:before, .icon:after {
  display: inline-block;
  position: relative;
  top: 1px;
  font-family: 'Font Awesome 5 Free', sans-serif;
  font-weight: 900;
  margin-right: 10px; }

.content {
  font-size: 1.6em;
  text-align: justify;
  overflow: hidden; }
  .content h1, .content h2, .content h3, .content h4, .content h5, .content h6, .content p {
    text-align: left;
    margin-top: 0; }
  .content h2 {
    font-family: 'Open Sans', sans-serif;
    font-style: italic;
    font-size: 1.0em; }
  .content p, .content a, .content li, .content label, .content input, .content textarea {
    font-family: 'Open Sans', sans-serif;
    line-height: 150%; }
  .content p {
    text-align: justify; }
  .content a {
    color: #de4a44;
    text-decoration: none; }
    .content a:hover {
      text-decoration: underline; }
  .content ul {
    padding-left: 10px; }
    .content ul li {
      list-style: none;
      padding-left: 1em;
      text-indent: -1em; }
      .content ul li:before {
        content: '\f0c8';
        font-family: 'Font Awesome 5 Free', sans-serif;
        font-weight: 900;
        font-size: 0.4em;
        color: #de4a44;
        margin-right: 10px;
        position: relative;
        bottom: 1.5px; }
  .content input, .content textarea {
    width: 100%;
    padding: 6px;
    margin-bottom: 10px;
    font-size: 1em; }
    .content input[type=submit], .content textarea[type=submit] {
      cursor: pointer;
      border: 0;
      background-color: #de4a44;
      color: #fff; }
      .content input[type=submit]:hover, .content textarea[type=submit]:hover {
        background-color: rgba(222, 74, 68, 0.8); }
    .content input.error, .content textarea.error {
      border: 1px dashed #de4a44; }

img.highRes {
  display: none; }

header {
  padding-bottom: 40px; }
  header #main-menu {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    z-index: 1;
    background-color: rgba(255, 255, 255, 0.9); }
  header .menu {
    position: relative;
    margin: 10px 0; }
    header .menu img {
      width: 100px;
      margin-right: 40px; }
    header .menu nav {
      position: absolute;
      top: 0;
      left: calc(100px + 40px);
      height: 100%;
      display: flex;
      align-items: center;
      margin: 0 -10px; }
      header .menu nav a {
        white-space: nowrap;
        font-size: 2em;
        padding: 10px 10px;
        color: #000;
        line-height: 20px;
        text-decoration: none; }
        @media screen and (max-width: 62em) {
          header .menu nav a {
            font-size: 1.8em; } }
        header .menu nav a:hover {
          color: #fff;
          background-color: #000; }
      header .menu nav .row div {
        margin-top: 10px;
        margin-bottom: 10px; }
    header .menu .hamburger-wrapper {
      position: absolute;
      top: 0;
      right: 0;
      display: flex;
      align-items: center;
      height: 100%; }
      header .menu .hamburger-wrapper .hamburger:active, header .menu .hamburger-wrapper .hamburger:focus {
        outline: none; }
  header .menu-mobile {
    left: 15px;
    right: 15px;
    max-height: 0;
    opacity: 0;
    overflow: hidden;
    transition: max-height 0.6s ease 0s;
    text-align: right; }
    header .menu-mobile a {
      display: block;
      font-size: 2em;
      padding: 10px 10px;
      color: #000;
      line-height: 20px;
      text-decoration: none; }
      header .menu-mobile a:hover {
        color: #fff;
        background-color: #000; }
      header .menu-mobile a:last-of-type {
        margin-bottom: 30px; }
      @media screen and (max-width: 48em) {
        header .menu-mobile a:first-of-type {
          display: none; } }
  header .rainbow-wrapper {
    position: relative;
    height: 50vh;
    overflow: hidden; }
    header .rainbow-wrapper .automatic-slider-1 {
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      height: 100%; }
      header .rainbow-wrapper .automatic-slider-1 .project-image {
        animation: fade-1 6s infinite;
        -webkit-animation: fade-1 6s infinite;
        -moz-animation: fade-1 6s infinite;
        -o-animation: fade-1 6s infinite;
        -ms-animation: fade-1 6s infinite;
        opacity: 0; }
      header .rainbow-wrapper .automatic-slider-1 .project-image-0 {
        animation-delay: 0s;
        -webkit-animation-delay: 0s;
        -moz-animation-delay: 0s;
        -o-animation-delay: 0s;
        -ms-animation-delay: 0s; }
@keyframes fade-1 {
  0% {
    opacity: 0; }
  33.3333333333% {
    opacity: 1;
    pointer-events: auto; }
  100% {
    opacity: 1;
    pointer-events: auto; }
  116.6666666667% {
    opacity: 0;
    pointer-events: none; }
  100% {
    opacity: 0; } }
    header .rainbow-wrapper .automatic-slider-2 {
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      height: 100%; }
      header .rainbow-wrapper .automatic-slider-2 .project-image {
        animation: fade-2 12s infinite;
        -webkit-animation: fade-2 12s infinite;
        -moz-animation: fade-2 12s infinite;
        -o-animation: fade-2 12s infinite;
        -ms-animation: fade-2 12s infinite;
        opacity: 0; }
      header .rainbow-wrapper .automatic-slider-2 .project-image-0 {
        animation-delay: 0s;
        -webkit-animation-delay: 0s;
        -moz-animation-delay: 0s;
        -o-animation-delay: 0s;
        -ms-animation-delay: 0s; }
      header .rainbow-wrapper .automatic-slider-2 .project-image-1 {
        animation-delay: 6s;
        -webkit-animation-delay: 6s;
        -moz-animation-delay: 6s;
        -o-animation-delay: 6s;
        -ms-animation-delay: 6s; }
@keyframes fade-2 {
  0% {
    opacity: 0; }
  16.6666666667% {
    opacity: 1;
    pointer-events: auto; }
  50% {
    opacity: 1;
    pointer-events: auto; }
  58.3333333333% {
    opacity: 0;
    pointer-events: none; }
  100% {
    opacity: 0; } }
    header .rainbow-wrapper .automatic-slider-3 {
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      height: 100%; }
      header .rainbow-wrapper .automatic-slider-3 .project-image {
        animation: fade-3 18s infinite;
        -webkit-animation: fade-3 18s infinite;
        -moz-animation: fade-3 18s infinite;
        -o-animation: fade-3 18s infinite;
        -ms-animation: fade-3 18s infinite;
        opacity: 0; }
      header .rainbow-wrapper .automatic-slider-3 .project-image-0 {
        animation-delay: 0s;
        -webkit-animation-delay: 0s;
        -moz-animation-delay: 0s;
        -o-animation-delay: 0s;
        -ms-animation-delay: 0s; }
      header .rainbow-wrapper .automatic-slider-3 .project-image-1 {
        animation-delay: 6s;
        -webkit-animation-delay: 6s;
        -moz-animation-delay: 6s;
        -o-animation-delay: 6s;
        -ms-animation-delay: 6s; }
      header .rainbow-wrapper .automatic-slider-3 .project-image-2 {
        animation-delay: 12s;
        -webkit-animation-delay: 12s;
        -moz-animation-delay: 12s;
        -o-animation-delay: 12s;
        -ms-animation-delay: 12s; }
@keyframes fade-3 {
  0% {
    opacity: 0; }
  11.1111111111% {
    opacity: 1;
    pointer-events: auto; }
  33.3333333333% {
    opacity: 1;
    pointer-events: auto; }
  38.8888888889% {
    opacity: 0;
    pointer-events: none; }
  100% {
    opacity: 0; } }
    header .rainbow-wrapper .automatic-slider-4 {
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      height: 100%; }
      header .rainbow-wrapper .automatic-slider-4 .project-image {
        animation: fade-4 24s infinite;
        -webkit-animation: fade-4 24s infinite;
        -moz-animation: fade-4 24s infinite;
        -o-animation: fade-4 24s infinite;
        -ms-animation: fade-4 24s infinite;
        opacity: 0; }
      header .rainbow-wrapper .automatic-slider-4 .project-image-0 {
        animation-delay: 0s;
        -webkit-animation-delay: 0s;
        -moz-animation-delay: 0s;
        -o-animation-delay: 0s;
        -ms-animation-delay: 0s; }
      header .rainbow-wrapper .automatic-slider-4 .project-image-1 {
        animation-delay: 6s;
        -webkit-animation-delay: 6s;
        -moz-animation-delay: 6s;
        -o-animation-delay: 6s;
        -ms-animation-delay: 6s; }
      header .rainbow-wrapper .automatic-slider-4 .project-image-2 {
        animation-delay: 12s;
        -webkit-animation-delay: 12s;
        -moz-animation-delay: 12s;
        -o-animation-delay: 12s;
        -ms-animation-delay: 12s; }
      header .rainbow-wrapper .automatic-slider-4 .project-image-3 {
        animation-delay: 18s;
        -webkit-animation-delay: 18s;
        -moz-animation-delay: 18s;
        -o-animation-delay: 18s;
        -ms-animation-delay: 18s; }
@keyframes fade-4 {
  0% {
    opacity: 0; }
  8.3333333333% {
    opacity: 1;
    pointer-events: auto; }
  25% {
    opacity: 1;
    pointer-events: auto; }
  29.1666666667% {
    opacity: 0;
    pointer-events: none; }
  100% {
    opacity: 0; } }
    header .rainbow-wrapper .automatic-slider-5 {
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      height: 100%; }
      header .rainbow-wrapper .automatic-slider-5 .project-image {
        animation: fade-5 30s infinite;
        -webkit-animation: fade-5 30s infinite;
        -moz-animation: fade-5 30s infinite;
        -o-animation: fade-5 30s infinite;
        -ms-animation: fade-5 30s infinite;
        opacity: 0; }
      header .rainbow-wrapper .automatic-slider-5 .project-image-0 {
        animation-delay: 0s;
        -webkit-animation-delay: 0s;
        -moz-animation-delay: 0s;
        -o-animation-delay: 0s;
        -ms-animation-delay: 0s; }
      header .rainbow-wrapper .automatic-slider-5 .project-image-1 {
        animation-delay: 6s;
        -webkit-animation-delay: 6s;
        -moz-animation-delay: 6s;
        -o-animation-delay: 6s;
        -ms-animation-delay: 6s; }
      header .rainbow-wrapper .automatic-slider-5 .project-image-2 {
        animation-delay: 12s;
        -webkit-animation-delay: 12s;
        -moz-animation-delay: 12s;
        -o-animation-delay: 12s;
        -ms-animation-delay: 12s; }
      header .rainbow-wrapper .automatic-slider-5 .project-image-3 {
        animation-delay: 18s;
        -webkit-animation-delay: 18s;
        -moz-animation-delay: 18s;
        -o-animation-delay: 18s;
        -ms-animation-delay: 18s; }
      header .rainbow-wrapper .automatic-slider-5 .project-image-4 {
        animation-delay: 24s;
        -webkit-animation-delay: 24s;
        -moz-animation-delay: 24s;
        -o-animation-delay: 24s;
        -ms-animation-delay: 24s; }
@keyframes fade-5 {
  0% {
    opacity: 0; }
  6.6666666667% {
    opacity: 1;
    pointer-events: auto; }
  20% {
    opacity: 1;
    pointer-events: auto; }
  23.3333333333% {
    opacity: 0;
    pointer-events: none; }
  100% {
    opacity: 0; } }
    header .rainbow-wrapper .automatic-slider-6 {
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      height: 100%; }
      header .rainbow-wrapper .automatic-slider-6 .project-image {
        animation: fade-6 36s infinite;
        -webkit-animation: fade-6 36s infinite;
        -moz-animation: fade-6 36s infinite;
        -o-animation: fade-6 36s infinite;
        -ms-animation: fade-6 36s infinite;
        opacity: 0; }
      header .rainbow-wrapper .automatic-slider-6 .project-image-0 {
        animation-delay: 0s;
        -webkit-animation-delay: 0s;
        -moz-animation-delay: 0s;
        -o-animation-delay: 0s;
        -ms-animation-delay: 0s; }
      header .rainbow-wrapper .automatic-slider-6 .project-image-1 {
        animation-delay: 6s;
        -webkit-animation-delay: 6s;
        -moz-animation-delay: 6s;
        -o-animation-delay: 6s;
        -ms-animation-delay: 6s; }
      header .rainbow-wrapper .automatic-slider-6 .project-image-2 {
        animation-delay: 12s;
        -webkit-animation-delay: 12s;
        -moz-animation-delay: 12s;
        -o-animation-delay: 12s;
        -ms-animation-delay: 12s; }
      header .rainbow-wrapper .automatic-slider-6 .project-image-3 {
        animation-delay: 18s;
        -webkit-animation-delay: 18s;
        -moz-animation-delay: 18s;
        -o-animation-delay: 18s;
        -ms-animation-delay: 18s; }
      header .rainbow-wrapper .automatic-slider-6 .project-image-4 {
        animation-delay: 24s;
        -webkit-animation-delay: 24s;
        -moz-animation-delay: 24s;
        -o-animation-delay: 24s;
        -ms-animation-delay: 24s; }
      header .rainbow-wrapper .automatic-slider-6 .project-image-5 {
        animation-delay: 30s;
        -webkit-animation-delay: 30s;
        -moz-animation-delay: 30s;
        -o-animation-delay: 30s;
        -ms-animation-delay: 30s; }
@keyframes fade-6 {
  0% {
    opacity: 0; }
  5.5555555556% {
    opacity: 1;
    pointer-events: auto; }
  16.6666666667% {
    opacity: 1;
    pointer-events: auto; }
  19.4444444444% {
    opacity: 0;
    pointer-events: none; }
  100% {
    opacity: 0; } }
    header .rainbow-wrapper .automatic-slider-7 {
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      height: 100%; }
      header .rainbow-wrapper .automatic-slider-7 .project-image {
        animation: fade-7 42s infinite;
        -webkit-animation: fade-7 42s infinite;
        -moz-animation: fade-7 42s infinite;
        -o-animation: fade-7 42s infinite;
        -ms-animation: fade-7 42s infinite;
        opacity: 0; }
      header .rainbow-wrapper .automatic-slider-7 .project-image-0 {
        animation-delay: 0s;
        -webkit-animation-delay: 0s;
        -moz-animation-delay: 0s;
        -o-animation-delay: 0s;
        -ms-animation-delay: 0s; }
      header .rainbow-wrapper .automatic-slider-7 .project-image-1 {
        animation-delay: 6s;
        -webkit-animation-delay: 6s;
        -moz-animation-delay: 6s;
        -o-animation-delay: 6s;
        -ms-animation-delay: 6s; }
      header .rainbow-wrapper .automatic-slider-7 .project-image-2 {
        animation-delay: 12s;
        -webkit-animation-delay: 12s;
        -moz-animation-delay: 12s;
        -o-animation-delay: 12s;
        -ms-animation-delay: 12s; }
      header .rainbow-wrapper .automatic-slider-7 .project-image-3 {
        animation-delay: 18s;
        -webkit-animation-delay: 18s;
        -moz-animation-delay: 18s;
        -o-animation-delay: 18s;
        -ms-animation-delay: 18s; }
      header .rainbow-wrapper .automatic-slider-7 .project-image-4 {
        animation-delay: 24s;
        -webkit-animation-delay: 24s;
        -moz-animation-delay: 24s;
        -o-animation-delay: 24s;
        -ms-animation-delay: 24s; }
      header .rainbow-wrapper .automatic-slider-7 .project-image-5 {
        animation-delay: 30s;
        -webkit-animation-delay: 30s;
        -moz-animation-delay: 30s;
        -o-animation-delay: 30s;
        -ms-animation-delay: 30s; }
      header .rainbow-wrapper .automatic-slider-7 .project-image-6 {
        animation-delay: 36s;
        -webkit-animation-delay: 36s;
        -moz-animation-delay: 36s;
        -o-animation-delay: 36s;
        -ms-animation-delay: 36s; }
@keyframes fade-7 {
  0% {
    opacity: 0; }
  4.7619047619% {
    opacity: 1;
    pointer-events: auto; }
  14.2857142857% {
    opacity: 1;
    pointer-events: auto; }
  16.6666666667% {
    opacity: 0;
    pointer-events: none; }
  100% {
    opacity: 0; } }
    header .rainbow-wrapper .automatic-slider-8 {
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      height: 100%; }
      header .rainbow-wrapper .automatic-slider-8 .project-image {
        animation: fade-8 48s infinite;
        -webkit-animation: fade-8 48s infinite;
        -moz-animation: fade-8 48s infinite;
        -o-animation: fade-8 48s infinite;
        -ms-animation: fade-8 48s infinite;
        opacity: 0; }
      header .rainbow-wrapper .automatic-slider-8 .project-image-0 {
        animation-delay: 0s;
        -webkit-animation-delay: 0s;
        -moz-animation-delay: 0s;
        -o-animation-delay: 0s;
        -ms-animation-delay: 0s; }
      header .rainbow-wrapper .automatic-slider-8 .project-image-1 {
        animation-delay: 6s;
        -webkit-animation-delay: 6s;
        -moz-animation-delay: 6s;
        -o-animation-delay: 6s;
        -ms-animation-delay: 6s; }
      header .rainbow-wrapper .automatic-slider-8 .project-image-2 {
        animation-delay: 12s;
        -webkit-animation-delay: 12s;
        -moz-animation-delay: 12s;
        -o-animation-delay: 12s;
        -ms-animation-delay: 12s; }
      header .rainbow-wrapper .automatic-slider-8 .project-image-3 {
        animation-delay: 18s;
        -webkit-animation-delay: 18s;
        -moz-animation-delay: 18s;
        -o-animation-delay: 18s;
        -ms-animation-delay: 18s; }
      header .rainbow-wrapper .automatic-slider-8 .project-image-4 {
        animation-delay: 24s;
        -webkit-animation-delay: 24s;
        -moz-animation-delay: 24s;
        -o-animation-delay: 24s;
        -ms-animation-delay: 24s; }
      header .rainbow-wrapper .automatic-slider-8 .project-image-5 {
        animation-delay: 30s;
        -webkit-animation-delay: 30s;
        -moz-animation-delay: 30s;
        -o-animation-delay: 30s;
        -ms-animation-delay: 30s; }
      header .rainbow-wrapper .automatic-slider-8 .project-image-6 {
        animation-delay: 36s;
        -webkit-animation-delay: 36s;
        -moz-animation-delay: 36s;
        -o-animation-delay: 36s;
        -ms-animation-delay: 36s; }
      header .rainbow-wrapper .automatic-slider-8 .project-image-7 {
        animation-delay: 42s;
        -webkit-animation-delay: 42s;
        -moz-animation-delay: 42s;
        -o-animation-delay: 42s;
        -ms-animation-delay: 42s; }
@keyframes fade-8 {
  0% {
    opacity: 0; }
  4.1666666667% {
    opacity: 1;
    pointer-events: auto; }
  12.5% {
    opacity: 1;
    pointer-events: auto; }
  14.5833333333% {
    opacity: 0;
    pointer-events: none; }
  100% {
    opacity: 0; } }
    header .rainbow-wrapper .automatic-slider-9 {
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      height: 100%; }
      header .rainbow-wrapper .automatic-slider-9 .project-image {
        animation: fade-9 54s infinite;
        -webkit-animation: fade-9 54s infinite;
        -moz-animation: fade-9 54s infinite;
        -o-animation: fade-9 54s infinite;
        -ms-animation: fade-9 54s infinite;
        opacity: 0; }
      header .rainbow-wrapper .automatic-slider-9 .project-image-0 {
        animation-delay: 0s;
        -webkit-animation-delay: 0s;
        -moz-animation-delay: 0s;
        -o-animation-delay: 0s;
        -ms-animation-delay: 0s; }
      header .rainbow-wrapper .automatic-slider-9 .project-image-1 {
        animation-delay: 6s;
        -webkit-animation-delay: 6s;
        -moz-animation-delay: 6s;
        -o-animation-delay: 6s;
        -ms-animation-delay: 6s; }
      header .rainbow-wrapper .automatic-slider-9 .project-image-2 {
        animation-delay: 12s;
        -webkit-animation-delay: 12s;
        -moz-animation-delay: 12s;
        -o-animation-delay: 12s;
        -ms-animation-delay: 12s; }
      header .rainbow-wrapper .automatic-slider-9 .project-image-3 {
        animation-delay: 18s;
        -webkit-animation-delay: 18s;
        -moz-animation-delay: 18s;
        -o-animation-delay: 18s;
        -ms-animation-delay: 18s; }
      header .rainbow-wrapper .automatic-slider-9 .project-image-4 {
        animation-delay: 24s;
        -webkit-animation-delay: 24s;
        -moz-animation-delay: 24s;
        -o-animation-delay: 24s;
        -ms-animation-delay: 24s; }
      header .rainbow-wrapper .automatic-slider-9 .project-image-5 {
        animation-delay: 30s;
        -webkit-animation-delay: 30s;
        -moz-animation-delay: 30s;
        -o-animation-delay: 30s;
        -ms-animation-delay: 30s; }
      header .rainbow-wrapper .automatic-slider-9 .project-image-6 {
        animation-delay: 36s;
        -webkit-animation-delay: 36s;
        -moz-animation-delay: 36s;
        -o-animation-delay: 36s;
        -ms-animation-delay: 36s; }
      header .rainbow-wrapper .automatic-slider-9 .project-image-7 {
        animation-delay: 42s;
        -webkit-animation-delay: 42s;
        -moz-animation-delay: 42s;
        -o-animation-delay: 42s;
        -ms-animation-delay: 42s; }
      header .rainbow-wrapper .automatic-slider-9 .project-image-8 {
        animation-delay: 48s;
        -webkit-animation-delay: 48s;
        -moz-animation-delay: 48s;
        -o-animation-delay: 48s;
        -ms-animation-delay: 48s; }
@keyframes fade-9 {
  0% {
    opacity: 0; }
  3.7037037037% {
    opacity: 1;
    pointer-events: auto; }
  11.1111111111% {
    opacity: 1;
    pointer-events: auto; }
  12.962962963% {
    opacity: 0;
    pointer-events: none; }
  100% {
    opacity: 0; } }
    header .rainbow-wrapper .automatic-slider-10 {
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      height: 100%; }
      header .rainbow-wrapper .automatic-slider-10 .project-image {
        animation: fade-10 60s infinite;
        -webkit-animation: fade-10 60s infinite;
        -moz-animation: fade-10 60s infinite;
        -o-animation: fade-10 60s infinite;
        -ms-animation: fade-10 60s infinite;
        opacity: 0; }
      header .rainbow-wrapper .automatic-slider-10 .project-image-0 {
        animation-delay: 0s;
        -webkit-animation-delay: 0s;
        -moz-animation-delay: 0s;
        -o-animation-delay: 0s;
        -ms-animation-delay: 0s; }
      header .rainbow-wrapper .automatic-slider-10 .project-image-1 {
        animation-delay: 6s;
        -webkit-animation-delay: 6s;
        -moz-animation-delay: 6s;
        -o-animation-delay: 6s;
        -ms-animation-delay: 6s; }
      header .rainbow-wrapper .automatic-slider-10 .project-image-2 {
        animation-delay: 12s;
        -webkit-animation-delay: 12s;
        -moz-animation-delay: 12s;
        -o-animation-delay: 12s;
        -ms-animation-delay: 12s; }
      header .rainbow-wrapper .automatic-slider-10 .project-image-3 {
        animation-delay: 18s;
        -webkit-animation-delay: 18s;
        -moz-animation-delay: 18s;
        -o-animation-delay: 18s;
        -ms-animation-delay: 18s; }
      header .rainbow-wrapper .automatic-slider-10 .project-image-4 {
        animation-delay: 24s;
        -webkit-animation-delay: 24s;
        -moz-animation-delay: 24s;
        -o-animation-delay: 24s;
        -ms-animation-delay: 24s; }
      header .rainbow-wrapper .automatic-slider-10 .project-image-5 {
        animation-delay: 30s;
        -webkit-animation-delay: 30s;
        -moz-animation-delay: 30s;
        -o-animation-delay: 30s;
        -ms-animation-delay: 30s; }
      header .rainbow-wrapper .automatic-slider-10 .project-image-6 {
        animation-delay: 36s;
        -webkit-animation-delay: 36s;
        -moz-animation-delay: 36s;
        -o-animation-delay: 36s;
        -ms-animation-delay: 36s; }
      header .rainbow-wrapper .automatic-slider-10 .project-image-7 {
        animation-delay: 42s;
        -webkit-animation-delay: 42s;
        -moz-animation-delay: 42s;
        -o-animation-delay: 42s;
        -ms-animation-delay: 42s; }
      header .rainbow-wrapper .automatic-slider-10 .project-image-8 {
        animation-delay: 48s;
        -webkit-animation-delay: 48s;
        -moz-animation-delay: 48s;
        -o-animation-delay: 48s;
        -ms-animation-delay: 48s; }
      header .rainbow-wrapper .automatic-slider-10 .project-image-9 {
        animation-delay: 54s;
        -webkit-animation-delay: 54s;
        -moz-animation-delay: 54s;
        -o-animation-delay: 54s;
        -ms-animation-delay: 54s; }
@keyframes fade-10 {
  0% {
    opacity: 0; }
  3.3333333333% {
    opacity: 1;
    pointer-events: auto; }
  10% {
    opacity: 1;
    pointer-events: auto; }
  11.6666666667% {
    opacity: 0;
    pointer-events: none; }
  100% {
    opacity: 0; } }
    header .rainbow-wrapper .rainbow {
      position: absolute;
      display: inline-block;
      color: #fff;
      overflow: hidden;
      z-index: 1;
      text-decoration: none;
      transition: width 0.5s ease-in, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-in, left 0.5s ease-in, bottom 0.5s ease-in, height 0.5s ease-in;
      -webkit-transition: width 0.5s ease-in, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-in, left 0.5s ease-in, bottom 0.5s ease-in, height 0.5s ease-in;
      -moz-transition: width 0.5s ease-in, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-in, left 0.5s ease-in, bottom 0.5s ease-in, height 0.5s ease-in;
      -o-transition: width 0.5s ease-in, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-in, left 0.5s ease-in, bottom 0.5s ease-in, height 0.5s ease-in;
      -ms-transition: width 0.5s ease-in, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-in, left 0.5s ease-in, bottom 0.5s ease-in, height 0.5s ease-in; }
      header .rainbow-wrapper .rainbow.bow-1 {
        bottom: calc(calc(2 * 50px)/-2);
        left: calc(50vw - 1 * 25px);
        width: calc(2 * 50px);
        height: calc(2 * 50px);
        border-top-left-radius: calc(calc(2 * 50px)/2);
        border-top-right-radius: calc(calc(2 * 50px)/2);
        opacity: 1; }
        header .rainbow-wrapper .rainbow.bow-1:hover {
          width: 100%;
          left: 0;
          border-top-right-radius: 0;
          border-top-left-radius: 0;
          transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out;
          -webkit-transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out;
          -moz-transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out;
          -o-transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out;
          -ms-transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out; }
          header .rainbow-wrapper .rainbow.bow-1:hover + a .project-image {
            opacity: 1;
            pointer-events: auto; }
          header .rainbow-wrapper .rainbow.bow-1:hover span.icon {
            top: 1px;
            left: 15px;
            line-height: calc(calc(2 * 50px)/2);
            font-size: 2.5em; }
          header .rainbow-wrapper .rainbow.bow-1:hover span.title {
            opacity: 1; }
        header .rainbow-wrapper .rainbow.bow-1 span.icon {
          position: absolute;
          top: calc(calc(2 * 50px) / 4 - 7.5px);
          left: calc(50% - 12.5px);
          width: 25px;
          line-height: 25px;
          text-align: center;
          font-size: 1.6em;
          transition: line-height 0.5s, left 0.5s, top 0.5s;
          -webkit-transition: line-height 0.5s, left 0.5s, top 0.5s;
          -moz-transition: line-height 0.5s, left 0.5s, top 0.5s;
          -o-transition: line-height 0.5s, left 0.5s, top 0.5s;
          -ms-transition: line-height 0.5s, left 0.5s, top 0.5s; }
        header .rainbow-wrapper .rainbow.bow-1 span.title {
          line-height: calc(calc(2 * 50px)/2);
          font-family: 'Open Sans', sans-serif;
          font-size: 2.5em;
          opacity: 0;
          margin-left: 40px;
          transition: opacity 0.5s;
          -webkit-transition: opacity 0.5s;
          -moz-transition: opacity 0.5s;
          -o-transition: opacity 0.5s;
          -ms-transition: opacity 0.5s; }
        header .rainbow-wrapper .rainbow.bow-1.active {
          bottom: calc(calc(2 * 50px)/-2 - 25px * 1.5);
          left: 0;
          width: 100%;
          height: calc(calc(2 * 50px) * 1.25);
          border-top-right-radius: 0;
          border-top-left-radius: 0;
          transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out;
          -webkit-transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out;
          -moz-transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out;
          -o-transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out;
          -ms-transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out; }
          header .rainbow-wrapper .rainbow.bow-1.active span.icon {
            top: 1px;
            font-size: 1.8em;
            line-height: calc(25px * 1.5); }
          header .rainbow-wrapper .rainbow.bow-1.active span.title {
            opacity: 1;
            font-size: 1.8em;
            line-height: calc(25px * 1.5); }
      header .rainbow-wrapper .rainbow.bow-2 {
        bottom: calc(calc(3 * 50px)/-2);
        left: calc(50vw - 2 * 25px);
        width: calc(3 * 50px);
        height: calc(3 * 50px);
        border-top-left-radius: calc(calc(3 * 50px)/2);
        border-top-right-radius: calc(calc(3 * 50px)/2);
        opacity: 1; }
        header .rainbow-wrapper .rainbow.bow-2:hover {
          width: 100%;
          left: 0;
          border-top-right-radius: 0;
          border-top-left-radius: 0;
          transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out;
          -webkit-transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out;
          -moz-transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out;
          -o-transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out;
          -ms-transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out; }
          header .rainbow-wrapper .rainbow.bow-2:hover + a .project-image {
            opacity: 1;
            pointer-events: auto; }
          header .rainbow-wrapper .rainbow.bow-2:hover span.icon {
            top: 1px;
            left: 15px;
            line-height: calc(calc(3 * 50px)/2);
            font-size: 2.5em; }
          header .rainbow-wrapper .rainbow.bow-2:hover span.title {
            opacity: 1; }
        header .rainbow-wrapper .rainbow.bow-2 span.icon {
          position: absolute;
          top: 1px;
          left: calc(50% - 12.5px);
          width: 25px;
          line-height: 25px;
          text-align: center;
          font-size: 1.6em;
          transition: line-height 0.5s, left 0.5s, top 0.5s;
          -webkit-transition: line-height 0.5s, left 0.5s, top 0.5s;
          -moz-transition: line-height 0.5s, left 0.5s, top 0.5s;
          -o-transition: line-height 0.5s, left 0.5s, top 0.5s;
          -ms-transition: line-height 0.5s, left 0.5s, top 0.5s; }
        header .rainbow-wrapper .rainbow.bow-2 span.title {
          line-height: calc(calc(3 * 50px)/2);
          font-family: 'Open Sans', sans-serif;
          font-size: 2.5em;
          opacity: 0;
          margin-left: 40px;
          transition: opacity 0.5s;
          -webkit-transition: opacity 0.5s;
          -moz-transition: opacity 0.5s;
          -o-transition: opacity 0.5s;
          -ms-transition: opacity 0.5s; }
        header .rainbow-wrapper .rainbow.bow-2.active {
          bottom: calc(calc(3 * 50px)/-2 - 25px * 1.5);
          left: 0;
          width: 100%;
          height: calc(calc(3 * 50px) * 1.25);
          border-top-right-radius: 0;
          border-top-left-radius: 0;
          transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out;
          -webkit-transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out;
          -moz-transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out;
          -o-transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out;
          -ms-transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out; }
          header .rainbow-wrapper .rainbow.bow-2.active span.icon {
            top: 1px;
            font-size: 1.8em;
            line-height: calc(25px * 1.5); }
          header .rainbow-wrapper .rainbow.bow-2.active span.title {
            opacity: 1;
            font-size: 1.8em;
            line-height: calc(25px * 1.5); }
      header .rainbow-wrapper .rainbow.bow-3 {
        bottom: calc(calc(4 * 50px)/-2);
        left: calc(50vw - 3 * 25px);
        width: calc(4 * 50px);
        height: calc(4 * 50px);
        border-top-left-radius: calc(calc(4 * 50px)/2);
        border-top-right-radius: calc(calc(4 * 50px)/2);
        opacity: 1; }
        header .rainbow-wrapper .rainbow.bow-3:hover {
          width: 100%;
          left: 0;
          border-top-right-radius: 0;
          border-top-left-radius: 0;
          transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out;
          -webkit-transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out;
          -moz-transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out;
          -o-transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out;
          -ms-transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out; }
          header .rainbow-wrapper .rainbow.bow-3:hover + a .project-image {
            opacity: 1;
            pointer-events: auto; }
          header .rainbow-wrapper .rainbow.bow-3:hover span.icon {
            top: 1px;
            left: 15px;
            line-height: calc(calc(4 * 50px)/2);
            font-size: 2.5em; }
          header .rainbow-wrapper .rainbow.bow-3:hover span.title {
            opacity: 1; }
        header .rainbow-wrapper .rainbow.bow-3 span.icon {
          position: absolute;
          top: 1px;
          left: calc(50% - 12.5px);
          width: 25px;
          line-height: 25px;
          text-align: center;
          font-size: 1.6em;
          transition: line-height 0.5s, left 0.5s, top 0.5s;
          -webkit-transition: line-height 0.5s, left 0.5s, top 0.5s;
          -moz-transition: line-height 0.5s, left 0.5s, top 0.5s;
          -o-transition: line-height 0.5s, left 0.5s, top 0.5s;
          -ms-transition: line-height 0.5s, left 0.5s, top 0.5s; }
        header .rainbow-wrapper .rainbow.bow-3 span.title {
          line-height: calc(calc(4 * 50px)/2);
          font-family: 'Open Sans', sans-serif;
          font-size: 2.5em;
          opacity: 0;
          margin-left: 40px;
          transition: opacity 0.5s;
          -webkit-transition: opacity 0.5s;
          -moz-transition: opacity 0.5s;
          -o-transition: opacity 0.5s;
          -ms-transition: opacity 0.5s; }
        header .rainbow-wrapper .rainbow.bow-3.active {
          bottom: calc(calc(4 * 50px)/-2 - 25px * 1.5);
          left: 0;
          width: 100%;
          height: calc(calc(4 * 50px) * 1.25);
          border-top-right-radius: 0;
          border-top-left-radius: 0;
          transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out;
          -webkit-transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out;
          -moz-transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out;
          -o-transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out;
          -ms-transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out; }
          header .rainbow-wrapper .rainbow.bow-3.active span.icon {
            top: 1px;
            font-size: 1.8em;
            line-height: calc(25px * 1.5); }
          header .rainbow-wrapper .rainbow.bow-3.active span.title {
            opacity: 1;
            font-size: 1.8em;
            line-height: calc(25px * 1.5); }
      header .rainbow-wrapper .rainbow.bow-4 {
        bottom: calc(calc(5 * 50px)/-2);
        left: calc(50vw - 4 * 25px);
        width: calc(5 * 50px);
        height: calc(5 * 50px);
        border-top-left-radius: calc(calc(5 * 50px)/2);
        border-top-right-radius: calc(calc(5 * 50px)/2);
        opacity: 1; }
        header .rainbow-wrapper .rainbow.bow-4:hover {
          width: 100%;
          left: 0;
          border-top-right-radius: 0;
          border-top-left-radius: 0;
          transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out;
          -webkit-transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out;
          -moz-transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out;
          -o-transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out;
          -ms-transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out; }
          header .rainbow-wrapper .rainbow.bow-4:hover + a .project-image {
            opacity: 1;
            pointer-events: auto; }
          header .rainbow-wrapper .rainbow.bow-4:hover span.icon {
            top: 1px;
            left: 15px;
            line-height: calc(calc(5 * 50px)/2);
            font-size: 2.5em; }
          header .rainbow-wrapper .rainbow.bow-4:hover span.title {
            opacity: 1; }
        header .rainbow-wrapper .rainbow.bow-4 span.icon {
          position: absolute;
          top: 1px;
          left: calc(50% - 12.5px);
          width: 25px;
          line-height: 25px;
          text-align: center;
          font-size: 1.6em;
          transition: line-height 0.5s, left 0.5s, top 0.5s;
          -webkit-transition: line-height 0.5s, left 0.5s, top 0.5s;
          -moz-transition: line-height 0.5s, left 0.5s, top 0.5s;
          -o-transition: line-height 0.5s, left 0.5s, top 0.5s;
          -ms-transition: line-height 0.5s, left 0.5s, top 0.5s; }
        header .rainbow-wrapper .rainbow.bow-4 span.title {
          line-height: calc(calc(5 * 50px)/2);
          font-family: 'Open Sans', sans-serif;
          font-size: 2.5em;
          opacity: 0;
          margin-left: 40px;
          transition: opacity 0.5s;
          -webkit-transition: opacity 0.5s;
          -moz-transition: opacity 0.5s;
          -o-transition: opacity 0.5s;
          -ms-transition: opacity 0.5s; }
        header .rainbow-wrapper .rainbow.bow-4.active {
          bottom: calc(calc(5 * 50px)/-2 - 25px * 1.5);
          left: 0;
          width: 100%;
          height: calc(calc(5 * 50px) * 1.25);
          border-top-right-radius: 0;
          border-top-left-radius: 0;
          transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out;
          -webkit-transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out;
          -moz-transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out;
          -o-transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out;
          -ms-transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out; }
          header .rainbow-wrapper .rainbow.bow-4.active span.icon {
            top: 1px;
            font-size: 1.8em;
            line-height: calc(25px * 1.5); }
          header .rainbow-wrapper .rainbow.bow-4.active span.title {
            opacity: 1;
            font-size: 1.8em;
            line-height: calc(25px * 1.5); }
      header .rainbow-wrapper .rainbow.bow-5 {
        bottom: calc(calc(6 * 50px)/-2);
        left: calc(50vw - 5 * 25px);
        width: calc(6 * 50px);
        height: calc(6 * 50px);
        border-top-left-radius: calc(calc(6 * 50px)/2);
        border-top-right-radius: calc(calc(6 * 50px)/2);
        opacity: 1; }
        header .rainbow-wrapper .rainbow.bow-5:hover {
          width: 100%;
          left: 0;
          border-top-right-radius: 0;
          border-top-left-radius: 0;
          transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out;
          -webkit-transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out;
          -moz-transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out;
          -o-transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out;
          -ms-transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out; }
          header .rainbow-wrapper .rainbow.bow-5:hover + a .project-image {
            opacity: 1;
            pointer-events: auto; }
          header .rainbow-wrapper .rainbow.bow-5:hover span.icon {
            top: 1px;
            left: 15px;
            line-height: calc(calc(6 * 50px)/2);
            font-size: 2.5em; }
          header .rainbow-wrapper .rainbow.bow-5:hover span.title {
            opacity: 1; }
        header .rainbow-wrapper .rainbow.bow-5 span.icon {
          position: absolute;
          top: 1px;
          left: calc(50% - 12.5px);
          width: 25px;
          line-height: 25px;
          text-align: center;
          font-size: 1.6em;
          transition: line-height 0.5s, left 0.5s, top 0.5s;
          -webkit-transition: line-height 0.5s, left 0.5s, top 0.5s;
          -moz-transition: line-height 0.5s, left 0.5s, top 0.5s;
          -o-transition: line-height 0.5s, left 0.5s, top 0.5s;
          -ms-transition: line-height 0.5s, left 0.5s, top 0.5s; }
        header .rainbow-wrapper .rainbow.bow-5 span.title {
          line-height: calc(calc(6 * 50px)/2);
          font-family: 'Open Sans', sans-serif;
          font-size: 2.5em;
          opacity: 0;
          margin-left: 40px;
          transition: opacity 0.5s;
          -webkit-transition: opacity 0.5s;
          -moz-transition: opacity 0.5s;
          -o-transition: opacity 0.5s;
          -ms-transition: opacity 0.5s; }
        header .rainbow-wrapper .rainbow.bow-5.active {
          bottom: calc(calc(6 * 50px)/-2 - 25px * 1.5);
          left: 0;
          width: 100%;
          height: calc(calc(6 * 50px) * 1.25);
          border-top-right-radius: 0;
          border-top-left-radius: 0;
          transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out;
          -webkit-transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out;
          -moz-transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out;
          -o-transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out;
          -ms-transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out; }
          header .rainbow-wrapper .rainbow.bow-5.active span.icon {
            top: 1px;
            font-size: 1.8em;
            line-height: calc(25px * 1.5); }
          header .rainbow-wrapper .rainbow.bow-5.active span.title {
            opacity: 1;
            font-size: 1.8em;
            line-height: calc(25px * 1.5); }
      header .rainbow-wrapper .rainbow.bow-6 {
        bottom: calc(calc(7 * 50px)/-2);
        left: calc(50vw - 6 * 25px);
        width: calc(7 * 50px);
        height: calc(7 * 50px);
        border-top-left-radius: calc(calc(7 * 50px)/2);
        border-top-right-radius: calc(calc(7 * 50px)/2);
        opacity: 1; }
        header .rainbow-wrapper .rainbow.bow-6:hover {
          width: 100%;
          left: 0;
          border-top-right-radius: 0;
          border-top-left-radius: 0;
          transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out;
          -webkit-transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out;
          -moz-transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out;
          -o-transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out;
          -ms-transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out; }
          header .rainbow-wrapper .rainbow.bow-6:hover + a .project-image {
            opacity: 1;
            pointer-events: auto; }
          header .rainbow-wrapper .rainbow.bow-6:hover span.icon {
            top: 1px;
            left: 15px;
            line-height: calc(calc(7 * 50px)/2);
            font-size: 2.5em; }
          header .rainbow-wrapper .rainbow.bow-6:hover span.title {
            opacity: 1; }
        header .rainbow-wrapper .rainbow.bow-6 span.icon {
          position: absolute;
          top: 1px;
          left: calc(50% - 12.5px);
          width: 25px;
          line-height: 25px;
          text-align: center;
          font-size: 1.6em;
          transition: line-height 0.5s, left 0.5s, top 0.5s;
          -webkit-transition: line-height 0.5s, left 0.5s, top 0.5s;
          -moz-transition: line-height 0.5s, left 0.5s, top 0.5s;
          -o-transition: line-height 0.5s, left 0.5s, top 0.5s;
          -ms-transition: line-height 0.5s, left 0.5s, top 0.5s; }
        header .rainbow-wrapper .rainbow.bow-6 span.title {
          line-height: calc(calc(7 * 50px)/2);
          font-family: 'Open Sans', sans-serif;
          font-size: 2.5em;
          opacity: 0;
          margin-left: 40px;
          transition: opacity 0.5s;
          -webkit-transition: opacity 0.5s;
          -moz-transition: opacity 0.5s;
          -o-transition: opacity 0.5s;
          -ms-transition: opacity 0.5s; }
        header .rainbow-wrapper .rainbow.bow-6.active {
          bottom: calc(calc(7 * 50px)/-2 - 25px * 1.5);
          left: 0;
          width: 100%;
          height: calc(calc(7 * 50px) * 1.25);
          border-top-right-radius: 0;
          border-top-left-radius: 0;
          transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out;
          -webkit-transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out;
          -moz-transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out;
          -o-transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out;
          -ms-transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out; }
          header .rainbow-wrapper .rainbow.bow-6.active span.icon {
            top: 1px;
            font-size: 1.8em;
            line-height: calc(25px * 1.5); }
          header .rainbow-wrapper .rainbow.bow-6.active span.title {
            opacity: 1;
            font-size: 1.8em;
            line-height: calc(25px * 1.5); }
      header .rainbow-wrapper .rainbow.bow-7 {
        bottom: calc(calc(8 * 50px)/-2);
        left: calc(50vw - 7 * 25px);
        width: calc(8 * 50px);
        height: calc(8 * 50px);
        border-top-left-radius: calc(calc(8 * 50px)/2);
        border-top-right-radius: calc(calc(8 * 50px)/2);
        opacity: 1; }
        header .rainbow-wrapper .rainbow.bow-7:hover {
          width: 100%;
          left: 0;
          border-top-right-radius: 0;
          border-top-left-radius: 0;
          transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out;
          -webkit-transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out;
          -moz-transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out;
          -o-transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out;
          -ms-transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out; }
          header .rainbow-wrapper .rainbow.bow-7:hover + a .project-image {
            opacity: 1;
            pointer-events: auto; }
          header .rainbow-wrapper .rainbow.bow-7:hover span.icon {
            top: 1px;
            left: 15px;
            line-height: calc(calc(8 * 50px)/2);
            font-size: 2.5em; }
          header .rainbow-wrapper .rainbow.bow-7:hover span.title {
            opacity: 1; }
        header .rainbow-wrapper .rainbow.bow-7 span.icon {
          position: absolute;
          top: 1px;
          left: calc(50% - 12.5px);
          width: 25px;
          line-height: 25px;
          text-align: center;
          font-size: 1.6em;
          transition: line-height 0.5s, left 0.5s, top 0.5s;
          -webkit-transition: line-height 0.5s, left 0.5s, top 0.5s;
          -moz-transition: line-height 0.5s, left 0.5s, top 0.5s;
          -o-transition: line-height 0.5s, left 0.5s, top 0.5s;
          -ms-transition: line-height 0.5s, left 0.5s, top 0.5s; }
        header .rainbow-wrapper .rainbow.bow-7 span.title {
          line-height: calc(calc(8 * 50px)/2);
          font-family: 'Open Sans', sans-serif;
          font-size: 2.5em;
          opacity: 0;
          margin-left: 40px;
          transition: opacity 0.5s;
          -webkit-transition: opacity 0.5s;
          -moz-transition: opacity 0.5s;
          -o-transition: opacity 0.5s;
          -ms-transition: opacity 0.5s; }
        header .rainbow-wrapper .rainbow.bow-7.active {
          bottom: calc(calc(8 * 50px)/-2 - 25px * 1.5);
          left: 0;
          width: 100%;
          height: calc(calc(8 * 50px) * 1.25);
          border-top-right-radius: 0;
          border-top-left-radius: 0;
          transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out;
          -webkit-transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out;
          -moz-transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out;
          -o-transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out;
          -ms-transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out; }
          header .rainbow-wrapper .rainbow.bow-7.active span.icon {
            top: 1px;
            font-size: 1.8em;
            line-height: calc(25px * 1.5); }
          header .rainbow-wrapper .rainbow.bow-7.active span.title {
            opacity: 1;
            font-size: 1.8em;
            line-height: calc(25px * 1.5); }
      header .rainbow-wrapper .rainbow.bow-8 {
        bottom: calc(calc(9 * 50px)/-2);
        left: calc(50vw - 8 * 25px);
        width: calc(9 * 50px);
        height: calc(9 * 50px);
        border-top-left-radius: calc(calc(9 * 50px)/2);
        border-top-right-radius: calc(calc(9 * 50px)/2);
        opacity: 1; }
        header .rainbow-wrapper .rainbow.bow-8:hover {
          width: 100%;
          left: 0;
          border-top-right-radius: 0;
          border-top-left-radius: 0;
          transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out;
          -webkit-transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out;
          -moz-transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out;
          -o-transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out;
          -ms-transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out; }
          header .rainbow-wrapper .rainbow.bow-8:hover + a .project-image {
            opacity: 1;
            pointer-events: auto; }
          header .rainbow-wrapper .rainbow.bow-8:hover span.icon {
            top: 1px;
            left: 15px;
            line-height: calc(calc(9 * 50px)/2);
            font-size: 2.5em; }
          header .rainbow-wrapper .rainbow.bow-8:hover span.title {
            opacity: 1; }
        header .rainbow-wrapper .rainbow.bow-8 span.icon {
          position: absolute;
          top: 1px;
          left: calc(50% - 12.5px);
          width: 25px;
          line-height: 25px;
          text-align: center;
          font-size: 1.6em;
          transition: line-height 0.5s, left 0.5s, top 0.5s;
          -webkit-transition: line-height 0.5s, left 0.5s, top 0.5s;
          -moz-transition: line-height 0.5s, left 0.5s, top 0.5s;
          -o-transition: line-height 0.5s, left 0.5s, top 0.5s;
          -ms-transition: line-height 0.5s, left 0.5s, top 0.5s; }
        header .rainbow-wrapper .rainbow.bow-8 span.title {
          line-height: calc(calc(9 * 50px)/2);
          font-family: 'Open Sans', sans-serif;
          font-size: 2.5em;
          opacity: 0;
          margin-left: 40px;
          transition: opacity 0.5s;
          -webkit-transition: opacity 0.5s;
          -moz-transition: opacity 0.5s;
          -o-transition: opacity 0.5s;
          -ms-transition: opacity 0.5s; }
        header .rainbow-wrapper .rainbow.bow-8.active {
          bottom: calc(calc(9 * 50px)/-2 - 25px * 1.5);
          left: 0;
          width: 100%;
          height: calc(calc(9 * 50px) * 1.25);
          border-top-right-radius: 0;
          border-top-left-radius: 0;
          transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out;
          -webkit-transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out;
          -moz-transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out;
          -o-transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out;
          -ms-transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out; }
          header .rainbow-wrapper .rainbow.bow-8.active span.icon {
            top: 1px;
            font-size: 1.8em;
            line-height: calc(25px * 1.5); }
          header .rainbow-wrapper .rainbow.bow-8.active span.title {
            opacity: 1;
            font-size: 1.8em;
            line-height: calc(25px * 1.5); }
      header .rainbow-wrapper .rainbow.bow-9 {
        bottom: calc(calc(10 * 50px)/-2);
        left: calc(50vw - 9 * 25px);
        width: calc(10 * 50px);
        height: calc(10 * 50px);
        border-top-left-radius: calc(calc(10 * 50px)/2);
        border-top-right-radius: calc(calc(10 * 50px)/2);
        opacity: 1; }
        header .rainbow-wrapper .rainbow.bow-9:hover {
          width: 100%;
          left: 0;
          border-top-right-radius: 0;
          border-top-left-radius: 0;
          transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out;
          -webkit-transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out;
          -moz-transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out;
          -o-transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out;
          -ms-transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out; }
          header .rainbow-wrapper .rainbow.bow-9:hover + a .project-image {
            opacity: 1;
            pointer-events: auto; }
          header .rainbow-wrapper .rainbow.bow-9:hover span.icon {
            top: 1px;
            left: 15px;
            line-height: calc(calc(10 * 50px)/2);
            font-size: 2.5em; }
          header .rainbow-wrapper .rainbow.bow-9:hover span.title {
            opacity: 1; }
        header .rainbow-wrapper .rainbow.bow-9 span.icon {
          position: absolute;
          top: 1px;
          left: calc(50% - 12.5px);
          width: 25px;
          line-height: 25px;
          text-align: center;
          font-size: 1.6em;
          transition: line-height 0.5s, left 0.5s, top 0.5s;
          -webkit-transition: line-height 0.5s, left 0.5s, top 0.5s;
          -moz-transition: line-height 0.5s, left 0.5s, top 0.5s;
          -o-transition: line-height 0.5s, left 0.5s, top 0.5s;
          -ms-transition: line-height 0.5s, left 0.5s, top 0.5s; }
        header .rainbow-wrapper .rainbow.bow-9 span.title {
          line-height: calc(calc(10 * 50px)/2);
          font-family: 'Open Sans', sans-serif;
          font-size: 2.5em;
          opacity: 0;
          margin-left: 40px;
          transition: opacity 0.5s;
          -webkit-transition: opacity 0.5s;
          -moz-transition: opacity 0.5s;
          -o-transition: opacity 0.5s;
          -ms-transition: opacity 0.5s; }
        header .rainbow-wrapper .rainbow.bow-9.active {
          bottom: calc(calc(10 * 50px)/-2 - 25px * 1.5);
          left: 0;
          width: 100%;
          height: calc(calc(10 * 50px) * 1.25);
          border-top-right-radius: 0;
          border-top-left-radius: 0;
          transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out;
          -webkit-transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out;
          -moz-transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out;
          -o-transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out;
          -ms-transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out; }
          header .rainbow-wrapper .rainbow.bow-9.active span.icon {
            top: 1px;
            font-size: 1.8em;
            line-height: calc(25px * 1.5); }
          header .rainbow-wrapper .rainbow.bow-9.active span.title {
            opacity: 1;
            font-size: 1.8em;
            line-height: calc(25px * 1.5); }
      header .rainbow-wrapper .rainbow.bow-10 {
        bottom: calc(calc(11 * 50px)/-2);
        left: calc(50vw - 10 * 25px);
        width: calc(11 * 50px);
        height: calc(11 * 50px);
        border-top-left-radius: calc(calc(11 * 50px)/2);
        border-top-right-radius: calc(calc(11 * 50px)/2);
        opacity: 1; }
        header .rainbow-wrapper .rainbow.bow-10:hover {
          width: 100%;
          left: 0;
          border-top-right-radius: 0;
          border-top-left-radius: 0;
          transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out;
          -webkit-transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out;
          -moz-transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out;
          -o-transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out;
          -ms-transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out; }
          header .rainbow-wrapper .rainbow.bow-10:hover + a .project-image {
            opacity: 1;
            pointer-events: auto; }
          header .rainbow-wrapper .rainbow.bow-10:hover span.icon {
            top: 1px;
            left: 15px;
            line-height: calc(calc(11 * 50px)/2);
            font-size: 2.5em; }
          header .rainbow-wrapper .rainbow.bow-10:hover span.title {
            opacity: 1; }
        header .rainbow-wrapper .rainbow.bow-10 span.icon {
          position: absolute;
          top: 1px;
          left: calc(50% - 12.5px);
          width: 25px;
          line-height: 25px;
          text-align: center;
          font-size: 1.6em;
          transition: line-height 0.5s, left 0.5s, top 0.5s;
          -webkit-transition: line-height 0.5s, left 0.5s, top 0.5s;
          -moz-transition: line-height 0.5s, left 0.5s, top 0.5s;
          -o-transition: line-height 0.5s, left 0.5s, top 0.5s;
          -ms-transition: line-height 0.5s, left 0.5s, top 0.5s; }
        header .rainbow-wrapper .rainbow.bow-10 span.title {
          line-height: calc(calc(11 * 50px)/2);
          font-family: 'Open Sans', sans-serif;
          font-size: 2.5em;
          opacity: 0;
          margin-left: 40px;
          transition: opacity 0.5s;
          -webkit-transition: opacity 0.5s;
          -moz-transition: opacity 0.5s;
          -o-transition: opacity 0.5s;
          -ms-transition: opacity 0.5s; }
        header .rainbow-wrapper .rainbow.bow-10.active {
          bottom: calc(calc(11 * 50px)/-2 - 25px * 1.5);
          left: 0;
          width: 100%;
          height: calc(calc(11 * 50px) * 1.25);
          border-top-right-radius: 0;
          border-top-left-radius: 0;
          transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out;
          -webkit-transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out;
          -moz-transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out;
          -o-transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out;
          -ms-transition: width 0.5s ease-out, border-top-right-radius 1s, border-top-left-radius 1s, opacity 0.5s ease-out, left 0.5s ease-out, bottom 0.5s ease-out, height 0.5s ease-out; }
          header .rainbow-wrapper .rainbow.bow-10.active span.icon {
            top: 1px;
            font-size: 1.8em;
            line-height: calc(25px * 1.5); }
          header .rainbow-wrapper .rainbow.bow-10.active span.title {
            opacity: 1;
            font-size: 1.8em;
            line-height: calc(25px * 1.5); }
    header .rainbow-wrapper .project-image {
      position: absolute;
      pointer-events: none;
      top: 0;
      left: 0;
      right: 0;
      height: 100%;
      opacity: 0;
      background-repeat: no-repeat;
      background-size: cover; }
      header .rainbow-wrapper .project-image:hover {
        opacity: 1;
        pointer-events: auto; }
    header .rainbow-wrapper .project-image-no-animation {
      position: absolute;
      pointer-events: none;
      top: 0;
      left: 0;
      right: 0;
      height: 100%;
      opacity: 1;
      background-repeat: no-repeat;
      background-size: cover; }
  header .rainbow-mobile {
    font-family: 'Open Sans', sans-serif; }
    header .rainbow-mobile a {
      display: block;
      text-decoration: none;
      color: #fff;
      font-size: 1.8em;
      padding: 6px 6px 6px 15px; }
      header .rainbow-mobile a i {
        display: inline-block;
        width: 30px; }

footer {
  position: relative;
  background-color: #262626;
  color: #fff;
  font-family: 'Open Sans', sans-serif;
  font-size: 1.4em;
  line-height: 150%;
  margin-top: 40px; }
  footer p {
    margin: 0; }
  footer a {
    color: #fff;
    text-decoration: none; }
    footer a:hover {
      text-decoration: underline; }
    footer a.dark {
      color: rgba(255, 255, 255, 0.4); }
  footer .row {
    padding-top: 30px; }
    footer .row .footer-col {
      padding-bottom: 30px; }
  footer .rainbow-strip-wrapper {
    position: absolute;
    top: 0;
    bottom: 0;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap; }
    footer .rainbow-strip-wrapper.left {
      left: 0;
      align-items: flex-start; }
    footer .rainbow-strip-wrapper.right {
      right: 0;
      align-items: flex-end;
      flex-direction: row-reverse; }
    footer .rainbow-strip-wrapper .rainbow-strip {
      display: inline-block;
      width: 20px; }
      footer .rainbow-strip-wrapper .rainbow-strip.strip-1 {
        height: calc(1 * 10%); }
      footer .rainbow-strip-wrapper .rainbow-strip.strip-2 {
        height: calc(2 * 10%); }
      footer .rainbow-strip-wrapper .rainbow-strip.strip-3 {
        height: calc(3 * 10%); }
      footer .rainbow-strip-wrapper .rainbow-strip.strip-4 {
        height: calc(4 * 10%); }
      footer .rainbow-strip-wrapper .rainbow-strip.strip-5 {
        height: calc(5 * 10%); }
      footer .rainbow-strip-wrapper .rainbow-strip.strip-6 {
        height: calc(6 * 10%); }
      footer .rainbow-strip-wrapper .rainbow-strip.strip-7 {
        height: calc(7 * 10%); }
      footer .rainbow-strip-wrapper .rainbow-strip.strip-8 {
        height: calc(8 * 10%); }
      footer .rainbow-strip-wrapper .rainbow-strip.strip-9 {
        height: calc(9 * 10%); }
      footer .rainbow-strip-wrapper .rainbow-strip.strip-10 {
        height: calc(10 * 10%); }

.home .rainbow-menu a {
  display: block;
  text-decoration: none;
  color: #fff;
  font-family: 'Open Sans', sans-serif;
  font-size: 1.0em;
  padding: 6px 6px 6px 15px; }
  .home .rainbow-menu a:hover {
    text-decoration: none; }
    .home .rainbow-menu a:hover i {
      left: 5px; }
  .home .rainbow-menu a i {
    position: relative;
    display: inline-block;
    width: 30px;
    left: 0;
    transition: left 0.1s;
    -webkit-transition: left 0.1s;
    -moz-transition: left 0.1s;
    -o-transition: left 0.1s;
    -ms-transition: left 0.1s; }

.phone:before {
  content: '\f095'; }

.email:before {
  content: '\f0e0'; }

.icon.facebook:before {
  content: '\f09a';
  font-family: 'Font Awesome 5 Brands', sans-serif;
  font-weight: 400; }

.pdf:before {
  content: '\f1c1';
  top: 1px; }

.contact-form .form-col {
  display: flex;
  align-items: center;
  padding-bottom: 10px; }
.contact-form span.error-msg {
  position: absolute;
  top: 6px;
  right: 21px; }

.map-wrapper {
  min-height: 300px;
  margin-bottom: 30px;
  overflow: hidden; }
  .map-wrapper #map {
    width: 100%;
    height: 100%;
    margin-top: 24px; }

.partners img {
  width: 100%; }

@media screen and (min-width: 48em) {
  .content article.preview {
    height: 250px; } }
.content article.preview h3 a {
  font-family: 'Cormorant', sans-serif;
  font-size: 1.4em; }
.content article.preview p {
  overflow: hidden; }
  @media screen and (min-width: 48em) {
    .content article.preview p {
      max-height: 100px; } }
  .content article.preview p.posted {
    font-size: 0.8em; }
  .content article.preview p a {
    font-size: 0.8em; }

.event .date {
  text-align: left; }
  .event .date h3 {
    display: inline;
    white-space: nowrap; }

#testimonials {
  position: relative;
  right: 0;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  transition: right 0.5s;
  -webkit-transition: right 0.5s;
  -moz-transition: right 0.5s;
  -o-transition: right 0.5s;
  -ms-transition: right 0.5s; }
  #testimonials.list {
    flex-direction: column;
    align-items: left; }
  #testimonials article {
    padding: 0 15px;
    text-align: center; }
    #testimonials article h3 {
      position: relative;
      display: inline-block;
      width: 60%;
      padding: 0 20px;
      text-align: center; }
      #testimonials article h3:before, #testimonials article h3:after {
        font-family: 'Font Awesome 5 Free', sans-serif;
        font-weight: 900;
        color: rgba(0, 0, 0, 0.5); }
      #testimonials article h3:before {
        content: '\f10d';
        padding-right: 10px; }
      #testimonials article h3:after {
        content: '\f10e';
        padding-left: 10px; }
      #testimonials article h3 p {
        display: inline; }

.gallery {
  margin-bottom: 20px; }
  .gallery .gallery-row {
    margin: 0 calc(20px / -2); }
  .gallery .gallery-row.gutter-row {
    margin: 0 calc(20px / -2) 20px; }
  .gallery .gallery-col {
    padding: 0 calc(20px / 2); }
  @media screen and (max-width: 62em) {
    .gallery .gutter-col {
      margin-bottom: 20px; } }
  .gallery .full-height {
    height: 400px; }
  .gallery .half-height {
    height: calc(380px / 2); }
    @media screen and (max-width: 62em) {
      .gallery .half-height {
        height: 400px; } }
  .gallery#galleries .gallery-wrapper {
    pointer-events: none; }
  .gallery .gallery-wrapper {
    width: 100%;
    height: 100%;
    cursor: pointer; }
    .gallery .gallery-wrapper.active {
      position: fixed;
      top: 0;
      bottom: 0;
      left: 0;
      right: 0;
      display: flex;
      align-items: center;
      justify-content: space-around;
      flex-direction: row;
      background-color: rgba(0, 0, 0, 0.9);
      z-index: 2;
      cursor: auto; }
      .gallery .gallery-wrapper.active .image-container {
        width: 80%;
        height: 80%; }
      .gallery .gallery-wrapper.active .prev, .gallery .gallery-wrapper.active .next, .gallery .gallery-wrapper.active .close {
        display: block;
        cursor: pointer; }
      .gallery .gallery-wrapper.active .navigational-placeholder {
        display: block;
        opacity: 0; }
    .gallery .gallery-wrapper .image-container {
      position: relative;
      width: 100%;
      height: 100%;
      background-repeat: no-repeat;
      background-size: cover; }
    .gallery .gallery-wrapper .close {
      position: absolute;
      top: 10px;
      right: 10px;
      display: none;
      width: 50px;
      height: 50px;
      overflow: hidden; }
      @media screen and (max-width: 36em) {
        .gallery .gallery-wrapper .close {
          width: 24px;
          height: 24px; } }
      .gallery .gallery-wrapper .close:hover::before, .gallery .gallery-wrapper .close:hover::after {
        background-color: white; }
      .gallery .gallery-wrapper .close::before, .gallery .gallery-wrapper .close::after {
        content: '';
        position: absolute;
        height: 2px;
        width: 100%;
        top: 50%;
        left: 0;
        margin-top: -1px;
        background-color: rgba(255, 255, 255, 0.9); }
      .gallery .gallery-wrapper .close::before {
        transform: rotate(45deg);
        -webkit-transform: rotate(45deg);
        -moz-transform: rotate(45deg);
        -o-transform: rotate(45deg);
        -ms-transform: rotate(45deg); }
      .gallery .gallery-wrapper .close::after {
        transform: rotate(-45deg);
        -webkit-transform: rotate(-45deg);
        -moz-transform: rotate(-45deg);
        -o-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg); }
  .gallery .prev, .gallery .next, .gallery .navigational-placeholder {
    display: none;
    width: 50px;
    height: 50px;
    font-family: 'Open Sans', sans-serif;
    text-align: center;
    line-height: 50px; }
    .gallery .prev i, .gallery .next i, .gallery .navigational-placeholder i {
      color: #fff;
      font-size: 3em; }
    .gallery .prev:hover i, .gallery .next:hover i, .gallery .navigational-placeholder:hover i {
      color: #ddd; }
  .gallery .gallery-title {
    box-sizing: border-box;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 10px;
    margin: 0 calc(20px / 2);
    color: #fff;
    background-color: rgba(0, 0, 0, 0.9);
    font-family: 'Open Sans', sans-serif;
    transition: padding-bottom 0.5s;
    -webkit-transition: padding-bottom 0.5s;
    -moz-transition: padding-bottom 0.5s;
    -o-transition: padding-bottom 0.5s;
    -ms-transition: padding-bottom 0.5s; }
    .gallery .gallery-title:hover {
      padding-bottom: 30px;
      text-decoration: none; }
  .gallery img {
    width: 100%;
    cursor: pointer; }

/*# sourceMappingURL=index.css.map */
