html, body {
	width: 100%;
    margin: 0;
    overflow: hidden;
	height: 100%;
	min-height: 100%;
}

body {
	width: 100%;
    background: rgb(119,219,255);
	background: -moz-linear-gradient(90deg, rgba(119,219,255,1) 0%, rgba(96,192,170,1) 100%);
	background: -webkit-linear-gradient(90deg, rgba(119,219,255,1) 0%, rgba(96,192,170,1) 100%);
	background: linear-gradient(90deg, rgba(119,219,255,1) 0%, rgba(96,192,170,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#77dbff",endColorstr="#60c0aa",GradientType=1);
}

.title-container {
	position: absolute;
	top: 10.0%;
	height: 10%;
	left: 50%;
	color: #ffffff;
	font-family: sans-serif;
	font-size: 2.2em;
    -moz-transform: translateX(-50%) translateY(-50%);
    -webkit-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%);
    animation-name: title-container-animation;
    animation-duration: 1s;
    animation-delay: 0.25s;
    animation-fill-mode: forwards;
    opacity: 0;
    z-index: 1;
}

.trademark {
	vertical-align: top;
	font-size: 0.35em;
}

@keyframes title-container-animation {
	0% {
		opacity: 0.0;
	}
	100% {
		opacity: 1.0;
	}
}

.detail-container {
    position: absolute;
    top: 15%;
    left: 50%;
    height: 10%;
    -moz-transform: translateX(-50%) translateY(-50%);
    -webkit-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%);
}

.phrase {
	margin-left: auto;
	margin-right: auto;
	color: #ffe99a;
	font-size: 0.9em;
	margin-top: 0.625em;
	font-family: Helvetica, Arial, sans-serif;
	text-align: center;
	opacity: 0;
	animation-timing-function: ease-in-ease-out;
	animation-fill-mode: forwards;
	animation-name: animate-phrase;
	animation-duration: 0.75s;
	animation-delay: 0.75s;
}

.phrase span {
	font-size: 0.85em;
}

@keyframes animate-phrase {
	0% {
		opacity: 0.1;
		margin-top: 0.0em;
	}
	100% {
		opacity: 1.0;
		margin-top: 0.2em;
	}
}

.legal-and-contact {
	width: 100%;
	height: auto;
	position: absolute;
	bottom: 10px;
	font-family: Helvetica, Arial, sans-serif;
}

.no-animation {
	animation: none!important;
	opacity: 1!important;
}

.legal-copy, .policies {
	color: #eeeeee;
	font-size: 0.5em;
	margin-left: auto;
	margin-right: auto;
	text-align: center;
	opacity: 0;
	animation-name: legal-copy-animation;
	animation-duration: 0.5s;
	animation-delay: 4s;
	animation-fill-mode: forwards;
}

.legal-copy a, .policies a {
	color: #eeeeee;
}

.white-space-pre-wrap {
	white-space: pre-wrap;
}

.contact {
	width: 50%;
    -moz-transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
	margin-left: 50%;
	height: 5em;
	color: #8d8d8d;
}

.contact a {
	text-decoration: none;
}

.contact td {
	width: 25%;
	text-align: center;
	font-weight: bold;
	background-position: center;
	background-repeat: no-repeat;
	background-size: auto 50%;
	animation-timing-function: ease-out;
	animation-fill-mode: forwards;
	animation-duration: 0.25s;
	opacity: 0.0;
	cursor: pointer;
	position: relative;
}

@keyframes link-entrance-up {
	0% {
		opacity: 0.0;
    	top: 15px;
	}
	100% {
		opacity: 1.0;
    	top: 0px;
	}
}

.animate-link-entrance-up {
	animation-name: link-entrance-up;
	animation-timing-function: ease-out;
}

@keyframes link-entrance-down {
	0% {
		opacity: 0.0;
    	bottom: 15px;
	}
	100% {
		opacity: 1.0;
    	bottom: 0px;
	}
}

.animate-link-entrance-down {
	animation-name: link-entrance-down;
	animation-timing-function: ease-out;
}

.twitter {
	background-image: url('./images/social-icon-tw.png');
	animation-delay: 3.0s;
}

.instagram {
	background-image: url('./images/social-icon-ig.png');
	animation-delay: 3.25s;
}

.email {
	background-image: url('./images/social-icon-mail.png');
	animation-delay: 3.50s;
}

@keyframes legal-copy-animation {
	0% { opacity: 0.0; }
	100% { opacity: 1.0; }
}

.bright-focus {
	transition: 0.5s;
}

.bright-focus:hover {
	transition: 0.5s;
	opacity: 1.0;
}

.shift-focus {
	transition: 0.2s;
}

.shift-focus:hover {
	transition: 0.15s;
	opacity: 1.0;
	background-size: auto 56%;
}

@keyframes fade-in {
	0% { opacity: 0; }
	100% { opacity: 1; }
}

.phone-container {
	background-size: 100% 100%;
	width: 80%;
	height: 54%;
	opacity: 0;
	animation-name: fade-in;
	animation-duration: 0.75s;
	animation-delay: 1.25s;
	animation-fill-mode: forwards;
	margin: 0 auto;
	z-index: 0;
	left: 50%;
	top: 57%;
	position: absolute;
    -moz-transform: translateX(-50%) translateY(-50%);
    -webkit-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%);
}

.phone-image {
	display: block;
	width: auto;
	height: 100%;
	margin-left: 50%;
    -moz-transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    z-index: 1;
	animation-duration: 10s;
	animation-delay: 1s;
	animation-iteration-count: infinite;
}

.phone-image.image-one {
	animation-name: phone-one-fade-animation;
}

.phone-image.image-two {
    -moz-transform: translateX(-50%) translateY(-100%);
    -webkit-transform: translateX(-50%) translateY(-100%);
    transform: translateX(-50%) translateY(-100%);
    z-index: 2;
	animation-name: phone-two-fade-animation;
}

.phone-image.image-three {
    -moz-transform: translateX(-50%) translateY(-200%);
    -webkit-transform: translateX(-50%) translateY(-200%);
    transform: translateX(-50%) translateY(-200%);
    z-index: 3;
	animation-name: phone-three-fade-animation;
}

.store-button {
	display: block;
	margin-top: 0 auto;
	margin-top: 12px;
    z-index: 1;
	margin: 0 auto;
}

.container-fade-in {
	opacity: 0;
    animation-name: fade-in;
	animation-duration: 0.75s;
	animation-delay: 2s;
	animation-fill-mode: forwards;
}

#app-store-button, #terms, #privacy-policy {
	cursor: pointer;
}

#play-store-button {
	margin-top: 10px;
}

.app-store-button-container {
	width: 100%;
	height: 7%;
	top: 16%;
	position: absolute;
}

@keyframes phone-one-fade-animation {
	0% {
		opacity: 1;
		z-index: 1;
	}
	18% {
		opacity: 1;
	}
	33% {
		opacity: 0;
	}
	85% {
		opacity: 0;
		z-index: 1;
	}
	86% {
		z-index: 4;
	}
	100% {
		opacity: 1;
		z-index: 4;
	}
}

@keyframes phone-two-fade-animation {
	0% {
		opacity: 0;
	}
	18% {
		opacity: 0;
	}
	33% {
		opacity: 1;
	}
	51% {
		opacity: 1;
	}
	66% {
		opacity: 0;
	}
	100% {
		opacity: 0;
	}
}

@keyframes phone-three-fade-animation {
	0% {
		opacity: 0;
	}
	51% {
		opacity: 0;
	}
	66% {
		opacity: 1;
	}
	85% {
		opacity: 1;
	}
	100% {
		opacity: 0;
	}
}

.pp-logo {
	background-image: url('./images/image-icon.png');
	background-size: 100% 100%;
	width: 80px;
	height: 80px;
	opacity: 0;
	animation-name: fade-in;
	animation-duration: 0.75s;
	animation-delay: 1.25s;
	animation-fill-mode: forwards;
	margin: 0 auto;
	z-index: 2;
	left: 50%;
	top: 44%;
	position: absolute;
    -moz-transform: translateX(-50%) translateY(-50%);
    -webkit-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%);
    display: none;
}

.shrink-and-grow {
	animation-name: shrink-and-grow-animation;
	animation-iteration-count: infinite;
	animation-direction: alternate;
	animation-duration: 2s;
	animation-delay: 1s;
}

.terms-container {
	height: 90%;
	width: 80%;
	position: fixed;
	z-index: 100;
	background-color: white;
	top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    border-radius: 30px;
}

.terms-title {
	margin-left: 20px;
	font-family: Helvetica, Arial, sans-serif;
	color: #5a5a5a;
}

.terms-body-container {
	margin-left: 20px;
	margin-right: 20px;
	height: 82%;
	top: 8%;
	border-bottom: 1px solid #fff;
	border-top: 1px solid #fff;
	overflow-y: scroll;
}

.terms-copy {
	font-family: Helvetica, Arial, sans-serif;
	color: #f8f8f8;
	font-size: 12px;
	padding-top: 10px;
	padding-bottom: 10px;
}

.terms-heading {
	font-family: Helvetica, Arial, sans-serif;
	color: #f8f8f8;
    margin-right: 20px;
    margin-left: 20px;
    font-size: 50px;
    height: 8%;
    top: 0;
    font-size: 4vw;
    transform: translateY(50%);
}

.home-button {
	vertical-align: middle;
    float: right;
    cursor: pointer;
    filter: drop-shadow(0px 3px 4px #22222222);
    transform: translateY(-10px);
    transition: 0.2s;
    -webkit-backface-visibility: hidden;
}

.home-button:hover {
	filter: drop-shadow(0px 3px 4px #22222244);
	transition: 0.2s;
	-webkit-backface-visibility: hidden;
}


@keyframes shrink-and-grow-animation {
	0% {
		-moz-transform: scale(1.0);
    	-webkit-transform: scale(1.0);
    	transform: scale(1.0);
    	filter: invert(5%);
	}
	100% {
		-moz-transform: scale(1.1);
    	-webkit-transform: scale(1.1);
    	transform: scale(1.1);
    	filter: invert(0%);
	}
}
