﻿/* Animation properties */
.back {
	animation: back 10s ease-out;
	animation-fill-mode:both;	
}
.sangaku {
	animation: sangaku 10s linear;
	animation-fill-mode:both;
}
.byline span {
	animation: spin-letters 10s linear;
	animation-fill-mode:both;
}
.byline {
	animation: move-byline 10s linear;
	animation-fill-mode:both;
}

/* Keyframes */

@keyframes back {
  0% {
    opacity: 0;
    transform: scale(1.6) translateY(-8%);
  }
  20% {
	opacity: 0.5;
	transform: scale(1.7) translateY(-8%);
  }
  90%{
	opacity: 0.8;
	transform: scale(1.8) translateY(-8%);
  }
  100% {
	opacity: 1.0;
	transform:scale(1.9) translateY(-8%);
  }
}

@keyframes sangaku {
  0%,40% {
	opacity: 0.0;
	transform: scale(2.0) translateX(5%) translateY(16%);
  }
  90% {
	opacity: 1.0;
	transform: scale(0.5) translateX(5%) translateY(16%);
  }
  100% {
	opacity: 0.5;
	transform: scale(2.0) translateX(5%) translateY(16%);
  }
}

@keyframes spin-letters {
  0%, 10% {
    opacity: 0;
    transform: rotateY(90deg);
  }
  30% {
    opacity: 1;
  }
  60%, 75% {
    transform: rotateY(0deg);
    opacity: 1;
  }
  90%,100% {
	transform: rotateY(-90deg);
	opacity: 0;
  }
}

@keyframes move-byline {
  0% {
    transform: translateZ(5em);
  }
  100% {
    transform: translateZ(0);
  }
}

/* Make the 3D work on the container */
.main-demo {
  perspective: 800px;
  transform-style: preserve-3d;
}

/* General styles and layout */
body {
/*	background: #000 url(./img/main.jpg);	*/
	background: #000;
	margin:0;
	padding:0;
	overflow: hidden;
}

.main-demo {
  height: 18em;
  left: 50%;
  position: absolute;
  top: 53%;
  transform: translate(-50%, -50%);
  width: 36em;
}

.byline span {
  display: inline-block;
}

.back, .sangaku, .byline {
  position: absolute;
}

.back {
	top: -0.75em;
	width:100%
}

.sangaku {
	bottom: -0.5em;
	width:100%;
}

.byline {
  color: #fff;
  font-family: "ITC Serif Gothic", Lato;
  font-size: 2.25em;
  left: -2em;
  letter-spacing: 0.3em;
  right: -2em;
  text-align: center;
  text-transform: uppercase;
  top: 29%;
}

/*** Media queries for adjusting to different screen sizes ***/

@media only screen and (max-width: 600px) {
  .main-demo {
    font-size: 10px;
/*	top:40%*/
  }
}

@media only screen and (max-width: 480px) {
  .main-demo {
    font-size: 7px;
/*	top:50%;*/
  }
}
