@charset "utf-8";
/* CSS Document */

body {
  margin: 0;
  padding: 0;
  font-family: 'Raleway', sans-serif;
}

.flex-container {
  position: absolute;
  height: 100vh;
  width: 100%;
  display: -webkit-flex;
  /* Safari */
  display: flex;
  overflow: hidden;
}
@media screen and (max-width: 768px) {

.flex-container { flex-direction: column; }
}

.flex-title {
  color: #F00;
  position: relative;
  font-size: 5vw;
  font-weight: bold;
  margin: auto;
  text-align: center;
  transform: rotate(90deg);
  top: 25%;
  -webkit-transition: all 500ms ease;
  -moz-transition: all 500ms ease;
  -ms-transition: all 500ms ease;
  -o-transition: all 500ms ease;
  transition: all 500ms ease;
}
@media screen and (max-width: 768px) {

.flex-title { transform: rotate(0deg) !important; }
}

.flex-about {
  background: rgba(102, 255, 255, .75);
  opacity: 0;
  color: #FFF;
  position: relative;
  width: 70%;
/*  min-height: 300px;*/
  font-size: 1em;
  padding: 5%;
  top: 15%;
  border: 2px solid #f1f1f1;
  border-radius: 10px;
  line-height: 1.3;
  margin: auto;
  text-align: left;
  transform: rotate(0deg);
  -webkit-transition: all 500ms ease;
  -moz-transition: all 500ms ease;
  -ms-transition: all 500ms ease;
  -o-transition: all 500ms ease;
  transition: all 500ms ease;
}
@media screen and (max-width: 768px) {

.flex-about {
  padding: 0%;
  border: 0px solid #f1f1f1;
}
}

.flex-slide {
  -webkit-flex: 1;
  /* Safari 6.1+ */
  -ms-flex: 1;
  /* IE 10 */
  flex: 1;
  cursor: pointer;
  -webkit-transition: all 500ms ease;
  -moz-transition: all 500ms ease;
  -ms-transition: all 500ms ease;
  -o-transition: all 500ms ease;
  transition: all 500ms ease;
}
@media screen and (max-width: 768px) {

.flex-slide {
  overflow: auto;
  overflow-x: hidden;
}
}
 @media screen and (max-width: 768px) {

.flex-slide p { font-size: 1em; }
}
 @media screen and (max-width: 768px) {

.flex-slide ul li { font-size: 1em; }
}

.flex-slide:hover {
  -webkit-flex-grow: 3;
  flex-grow: 3;
}

.home {
  height: 100vh;
  background: linear-gradient(rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.2)), url(../images/intropage/intro1.jpg);
  background-size: cover;
  background-position: center center;
  background-attachment: fixed;
}
@media screen and (min-width: 768px) {

.home {
  -moz-animation: aboutFlexSlide;
  -moz-animation-duration: 3s;
  -moz-animation-iteration-count: 1;
  -moz-animation-delay: 0s;
  -webkit-animation: aboutFlexSlide;
  -webkit-animation-duration: 3s;
  -webkit-animation-iteration-count: 1;
  -webkit-animation-delay: 0s;
  animation: aboutFlexSlide;
  animation-duration: 3s;
  animation-iteration-count: 1;
  animation-delay: 0s;
}
}
 @keyframes 
aboutFlexSlide {  0% {
 -webkit-flex-grow: 1;
 flex-grow: 1;
}
 50% {
 -webkit-flex-grow: 3;
 flex-grow: 3;
}
 100% {
 -webkit-flex-grow: 1;
 flex-grow: 1;
}
}
@media screen and (min-width: 768px) {

.flex-title-home {
  transform: rotate(90deg);
  top: 20%;
  -moz-animation: homeFlextitle;
  -moz-animation-duration: 3s;
  -moz-animation-iteration-count: 1;
  -moz-animation-delay: 0s;
  -webkit-animation: homeFlextitle;
  -webkit-animation-duration: 3s;
  -webkit-animation-iteration-count: 1;
  -webkit-animation-delay: 0s;
  animation: homeFlextitle;
  animation-duration: 3s;
  animation-iteration-count: 1;
  animation-delay: 0s;
}
}
 @keyframes 
homeFlextitle {  0% {
 transform: rotate(90deg);
 top: 20%%;
}
 50% {
 transform: rotate(0deg);
 top: 20%;
}
 100% {
 transform: rotate(90deg);
 top: 20%;
}
}

.flex-about-home { opacity: 0; }
@media screen and (min-width: 768px) {

.flex-about-home {
  -moz-animation: flexAboutHome;
  -moz-animation-duration: 3s;
  -moz-animation-iteration-count: 1;
  -moz-animation-delay: 0s;
  -webkit-animation: flexAboutHome;
  -webkit-animation-duration: 3s;
  -webkit-animation-iteration-count: 1;
  -webkit-animation-delay: 0s;
  animation: flexAboutHome;
  animation-duration: 3s;
  animation-iteration-count: 1;
  animation-delay: 0s;
}
}
 @keyframes 
flexAboutHome {  0% {
 opacity: 0;
}
 50% {
 opacity: 1;
}
 100% {
 opacity: 0;
}
}

.about {
  background: linear-gradient(rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.2)), url(../images/intropage/intro3.jpg);
  background-size: cover;
  background-position: center center;
  background-attachment: fixed;
}

.contact-form { width: 100%; }

input { width: 100%; }

textarea { width: 100%; }

.contact {
  background: linear-gradient(rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.2)), url(../images/intropage/intro4.jpg);
  background-size: cover;
  background-position: center center;
  background-attachment: fixed;
}

.work {
  background: linear-gradient(rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.2)), url(../images/intropage/intro2.jpg);
  background-size: cover;
  background-position: center center;
  background-attachment: fixed;
}

.spinner {
  position: fixed;
  top: 0;
  left: 0;
  background: #222;
  height: 100%;
  width: 100%;
  z-index: 11;
  margin-top: 0;
  color: #fff;
  font-size: 4em;
}

.loading {position: absolute; color: #fff; top: 60%; left: 45%; font-size: 24px}

.cube1, .cube2 {
  background-color: #fff;
  width: 50px;
  height: 50px;
  position: absolute;
  top: 45%;
  left: 45%;
  -webkit-animation: sk-cubemove 1.8s infinite ease-in-out;
  animation: sk-cubemove 1.8s infinite ease-in-out;
}

.cube2 {
  -webkit-animation-delay: -0.9s;
  animation-delay: -0.9s;
}
 @-webkit-keyframes 
sk-cubemove {  25% {
 -webkit-transform: translateX(42px) rotate(-90deg) scale(0.5);
}
 50% {
 -webkit-transform: translateX(42px) translateY(42px) rotate(-180deg);
}
 75% {
 -webkit-transform: translateX(0px) translateY(42px) rotate(-270deg) scale(0.5);
}
 100% {
 -webkit-transform: rotate(-360deg);
}
}
@keyframes 
sk-cubemove {  25% {
 transform: translateX(42px) rotate(-90deg) scale(0.5);
 -webkit-transform: translateX(42px) rotate(-90deg) scale(0.5);
}
 50% {
 transform: translateX(42px) translateY(42px) rotate(-179deg);
 -webkit-transform: translateX(42px) translateY(42px) rotate(-179deg);
}
 50.1% {
 transform: translateX(42px) translateY(42px) rotate(-180deg);
 -webkit-transform: translateX(42px) translateY(42px) rotate(-180deg);
}
 75% {
 transform: translateX(0px) translateY(42px) rotate(-270deg) scale(0.5);
 -webkit-transform: translateX(0px) translateY(42px) rotate(-270deg) scale(0.5);
}
 100% {
 transform: rotate(-360deg);
 -webkit-transform: rotate(-360deg);
}
}



#logointro {

	position: absolute; 
	margin: 15px; 
	z-index: 0;
	
}

@media screen and (max-width: 768px) {
#logointro img {

	width: 100px;
	height: 100px;
	
}	
	
}

.logoslideinright
{
	animation: slideInRight;
	-webkit-animation-duration: 2s;
	animation-duration: 2s;
	animation-delay: 3s;
    -webkit-animation-delay: 3s;
	animation-iteration-count: 1;
}

.logobounce
{
	animation: jump;
	-webkit-animation-duration: 2s;
	animation-duration: 2s;
	animation-delay: 5s;
    -webkit-animation-delay: 5s;
	animation-iteration-count: 2;
}


/* Animations */

@-webkit-keyframes jump {
	0% {top: 0;
		-webkit-animation-timing-function: ease-in;
	}
	40% {}
	50% {top: 140px;
		height: 140px;
		-webkit-animation-timing-function: ease-out;
	}
	55% {top: 160px; height: 120px; border-radius: 70px / 60px;
		-webkit-animation-timing-function: ease-in;}
	65% {top: 120px; height: 140px; border-radius: 70px;
		-webkit-animation-timing-function: ease-out;}
	95% {
		top: 0;		
		-webkit-animation-timing-function: ease-in;
	}
	100% {top: 0;
		-webkit-animation-timing-function: ease-in;
	}
}

@-moz-keyframes jump {
	0% {top: 0;
		-moz-animation-timing-function: ease-in;
	}
	40% {}
	50% {top: 140px;
		height: 140px;
		-moz-animation-timing-function: ease-out;
	}
	55% {top: 160px; height: 120px; border-radius: 70px / 60px;
		-moz-animation-timing-function: ease-in;}
	65% {top: 120px; height: 140px; border-radius: 70px;
		-moz-animation-timing-function: ease-out;}
	95% {
		top: 0;		
		-moz-animation-timing-function: ease-in;
	}
	100% {top: 0;
		-moz-animation-timing-function: ease-in;
	}
}

@-o-keyframes jump {
	0% {top: 0;
		-o-animation-timing-function: ease-in;
	}
	40% {}
	50% {top: 140px;
		height: 140px;
		-o-animation-timing-function: ease-out;
	}
	55% {top: 160px; height: 120px; border-radius: 70px / 60px;
		-o-animation-timing-function: ease-in;}
	65% {top: 120px; height: 140px; border-radius: 70px;
		-o-animation-timing-function: ease-out;}
	95% {
		top: 0;		
		-o-animation-timing-function: ease-in;
	}
	100% {top: 0;
		-o-animation-timing-function: ease-in;
	}
}

@-ms-keyframes jump {
	0% {top: 0;
		-ms-animation-timing-function: ease-in;
	}
	40% {}
	50% {top: 140px;
		height: 140px;
		-ms-animation-timing-function: ease-out;
	}
	55% {top: 160px; height: 120px; border-radius: 70px / 60px;
		-ms-animation-timing-function: ease-in;}
	65% {top: 120px; height: 140px; border-radius: 70px;
		-ms-animation-timing-function: ease-out;}
	95% {
		top: 0;		
		-ms-animation-timing-function: ease-in;
	}
	100% {top: 0;
		-ms-animation-timing-function: ease-in;
	}
}

@keyframes jump {
	0% {
		top: 0;
		animation-timing-function: ease-in;
	}
	50% {
		top: 140px;
		height: 140px;
		animation-timing-function: ease-out;
	}
	55% {
		top: 160px; 
		height: 120px; 
		border-radius: 70px / 60px;
		animation-timing-function: ease-in;
	}
	65% {
		top: 120px; 
		height: 140px; 
		border-radius: 70px;
		animation-timing-function: ease-out;
	}
	95% {
		top: 0;		
		animation-timing-function: ease-in;
	}
	100% {
		top: 0;
		animation-timing-function: ease-in;
	}
}



@-webkit-keyframes shrink {
	0% {
		bottom: 0;
		margin-left: -30px;
		width: 60px;
		height: 75px;
		background: rgba(20, 20, 20, .1);
		box-shadow: 0px 0 20px 35px rgba(20,20,20,.1);
		border-radius: 30px / 40px;
		-webkit-animation-timing-function: ease-in;
	}
	50% {
		bottom: 30px;
		margin-left: -10px;
		width: 20px;
		height: 5px;
		background: rgba(20, 20, 20, .3);
		box-shadow: 0px 0 20px 35px rgba(20,20,20,.3);
		border-radius: 20px / 20px;
		-webkit-animation-timing-function: ease-out;
	}
	100% {
		bottom: 0;
		margin-left: -30px;
		width: 60px;
		height: 75px;
		background: rgba(20, 20, 20, .1);
		box-shadow: 0px 0 20px 35px rgba(20,20,20,.1);
		border-radius: 30px / 40px;
		-webkit-animation-timing-function: ease-in;
	}
}

@-moz-keyframes shrink {
	0% {
		bottom: 0;
		margin-left: -30px;
		width: 60px;
		height: 75px;
		background: rgba(20, 20, 20, .1);
		box-shadow: 0px 0 20px 35px rgba(20,20,20,.1);
		border-radius: 30px / 40px;
		-moz-animation-timing-function: ease-in;
	}
	50% {
		bottom: 30px;
		margin-left: -10px;
		width: 20px;
		height: 5px;
		background: rgba(20, 20, 20, .3);
		box-shadow: 0px 0 20px 35px rgba(20,20,20,.3);
		border-radius: 20px / 20px;
		-moz-animation-timing-function: ease-out;
	}
	100% {
		bottom: 0;
		margin-left: -30px;
		width: 60px;
		height: 75px;
		background: rgba(20, 20, 20, .1);
		box-shadow: 0px 0 20px 35px rgba(20,20,20,.1);
		border-radius: 30px / 40px;
		-moz-animation-timing-function: ease-in;
	}
}

@-o-keyframes shrink {
	0% {
		bottom: 0;
		margin-left: -30px;
		width: 60px;
		height: 75px;
		background: rgba(20, 20, 20, .1);
		box-shadow: 0px 0 20px 35px rgba(20,20,20,.1);
		border-radius: 30px / 40px;
		-o-animation-timing-function: ease-in;
	}
	50% {
		bottom: 30px;
		margin-left: -10px;
		width: 20px;
		height: 5px;
		background: rgba(20, 20, 20, .3);
		box-shadow: 0px 0 20px 35px rgba(20,20,20,.3);
		border-radius: 20px / 20px;
		-o-animation-timing-function: ease-out;
	}
	100% {
		bottom: 0;
		margin-left: -30px;
		width: 60px;
		height: 75px;
		background: rgba(20, 20, 20, .1);
		box-shadow: 0px 0 20px 35px rgba(20,20,20,.1);
		border-radius: 30px / 40px;
		-o-animation-timing-function: ease-in;
	}
}

@-ms-keyframes shrink {
	0% {
		bottom: 0;
		margin-left: -30px;
		width: 60px;
		height: 75px;
		background: rgba(20, 20, 20, .1);
		box-shadow: 0px 0 20px 35px rgba(20,20,20,.1);
		border-radius: 30px / 40px;
		-ms-animation-timing-function: ease-in;
	}
	50% {
		bottom: 30px;
		margin-left: -10px;
		width: 20px;
		height: 5px;
		background: rgba(20, 20, 20, .3);
		box-shadow: 0px 0 20px 35px rgba(20,20,20,.3);
		border-radius: 20px / 20px;
		-ms-animation-timing-function: ease-out;
	}
	100% {
		bottom: 0;
		margin-left: -30px;
		width: 60px;
		height: 75px;
		background: rgba(20, 20, 20, .1);
		box-shadow: 0px 0 20px 35px rgba(20,20,20,.1);
		border-radius: 30px / 40px;
		-ms-animation-timing-function: ease-in;
	}
}

@keyframes shrink {
	0% {
		bottom: 0;
		margin-left: -30px;
		width: 60px;
		height: 75px;
		background: rgba(20, 20, 20, .1);
		box-shadow: 0px 0 20px 35px rgba(20,20,20,.1);
		border-radius: 30px / 40px;
		animation-timing-function: ease-in;
	}
	50% {
		bottom: 30px;
		margin-left: -10px;
		width: 20px;
		height: 5px;
		background: rgba(20, 20, 20, .3);
		box-shadow: 0px 0 20px 35px rgba(20,20,20,.3);
		border-radius: 20px / 20px;
		animation-timing-function: ease-out;
	}
	100% {
		bottom: 0;
		margin-left: -30px;
		width: 60px;
		height: 75px;
		background: rgba(20, 20, 20, .1);
		box-shadow: 0px 0 20px 35px rgba(20,20,20,.1);
		border-radius: 30px / 40px;
		animation-timing-function: ease-in;
	}
}

@-webkit-keyframes slideInLeft {
  from {
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
    visibility: visible;
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes slideInLeft {
  from {
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
    visibility: visible;
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}


@-webkit-keyframes slideInRight {
  from {
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
    visibility: visible;
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes slideInRight {
  from {
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
    visibility: visible;
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.boxedurl {width: 100%; height: 100%; float: left; position: relative; text-decoration: none}