@import url(fontawesome-all.min.css);

* {
       box-sizing: border-box;
       }


	body {
		-webkit-text-size-adjust: none;
	}

	input::-moz-focus-inner {
		border: 0;
		padding: 0;
	}

/* Basic */

	@media screen and (max-width: 480px) {

		html, body {
			min-width: 320px;
		}

	}

	html {
		box-sizing: border-box;
	}

	body.is-preload *, body.is-preload *:before, body.is-preload *:after {
		-moz-animation: none !important;
		-webkit-animation: none !important;
		-ms-animation: none !important;
		animation: none !important;
		-moz-transition: none !important;
		-webkit-transition: none !important;
		-ms-transition: none !important;
		transition: none !important;
	}

	html {
		height: 100%;
	}

	body {
		height: 100%;
		background-color: #ffffff;
		background-image: url("images/overlay.png"), -moz-linear-gradient(60deg, rgba(255, 165, 150, 0.5) 5%, rgba(0, 228, 255, 0.35)), url("../../images/bg2.jpg");
		background-image: url("images/overlay.png"), -webkit-linear-gradient(60deg, rgba(255, 165, 150, 0.5) 5%, rgba(0, 228, 255, 0.35)), url("../../images/bg2.jpg");
		background-image: url("images/overlay.png"), -ms-linear-gradient(60deg, rgba(255, 165, 150, 0.5) 5%, rgba(0, 228, 255, 0.35)), url("../../images/bg2.jpg");
		background-image: url("images/overlay.png"), linear-gradient(60deg, rgba(255, 165, 150, 0.5) 5%, rgba(0, 228, 255, 0.35)), url("../../images/bg2.jpg");
		background-repeat: repeat,			no-repeat,			no-repeat;
		background-size: 100px 100px, cover,				cover;
		background-position: top left,		center center,		bottom center;
		background-attachment: fixed,			fixed,				fixed;
	}

		body:after {
			content: '';
			display: block;
			position: fixed;
			top: 0;
			left: 0;
			width: 100%;
			height: inherit;
			opacity: 0;
			z-index: 1;
			background-color: #ffffff;
			background-image: url("images/overlay.png"), -moz-linear-gradient(60deg, rgba(255, 165, 150, 0.5) 5%, rgba(0, 228, 255, 0.35));
			background-image: url("images/overlay.png"), -webkit-linear-gradient(60deg, rgba(255, 165, 150, 0.5) 5%, rgba(0, 228, 255, 0.35));
			background-image: url("images/overlay.png"), -ms-linear-gradient(60deg, rgba(255, 165, 150, 0.5) 5%, rgba(0, 228, 255, 0.35));
			background-image: url("images/overlay.png"), linear-gradient(60deg, rgba(255, 165, 150, 0.5) 5%, rgba(0, 228, 255, 0.35));
			background-repeat: repeat,			no-repeat;
			background-size: 100px 100px, cover;
			background-position: top left,		center center;
			-moz-transition: opacity 1.75s ease-out;
			-webkit-transition: opacity 1.75s ease-out;
			-ms-transition: opacity 1.75s ease-out;
			transition: opacity 1.75s ease-out;
		}

		body.is-preload:after {
			opacity: 1;
		}

/* Type */

	a {
		cursor: pointer;
}

	p {
		margin: 0 0 1.5em 0;
	}


/* Main */

	.main {
		-moz-transform-origin: 50% 50%;
		-webkit-transform-origin: 50% 50%;
		-ms-transform-origin: 50% 50%;
		transform-origin: 50% 50%;
		-moz-transform: rotateX(0deg);
		-webkit-transform: rotateX(0deg);
		-ms-transform: rotateX(0deg);
		transform: rotateX(0deg);
		-moz-transition: opacity 1s ease, -moz-transform 1s ease;
		-webkit-transition: opacity 1s ease, -webkit-transform 1s ease;
		-ms-transition: opacity 1s ease, -ms-transform 1s ease;
		transition: opacity 1s ease, transform 1s ease;
		padding: 2em ;
		background: #ffffff;
		border-radius: 4px;
		cursor: pointer;
		max-width: 100%;
        max-height: 100%;
		opacity: 0.95;
		position: relative;
		text-align: center;
        width: 19em;
        height: 18em;
        margin: 2em;
	}

		.main .avatar {
			position: relative;
			display: block;
			margin-bottom: 1.5em;
		}


		@media screen and (max-width: 480px) {

			.main {
				padding: 4em 2em 2.5em 2em ;
				width: 100%;
			}

		}

		body.is-preload .main {
			-moz-transform: rotateX(15deg);
			-webkit-transform: rotateX(15deg);
			-ms-transform: rotateX(15deg);
			transform: rotateX(15deg);
			opacity: 0;
		}

/* Footer */

	#footer {
		-moz-align-self: -moz-flex-end;
		-webkit-align-self: -webkit-flex-end;
		-ms-align-self: -ms-flex-end;
		align-self: flex-end;
		width: 100%;
		padding: 1.5em 0 0 0;
		color: rgba(255, 255, 255, 0.75);
		cursor: default;
		text-align: center;
	}

		#footer .copyright {
			margin: 0;
			padding: 0;
			font-size: 0.9em;
			list-style: none;
		}

			#footer .copyright li {
				display: inline-block;
				margin: 0 0 0 0.45em;
				padding: 0 0 0 0.85em;
				border-left: solid 1px rgba(255, 255, 255, 0.5);
				line-height: 1;
			}

				#footer .copyright li:first-child {
					border-left: 0;
				}

/* Wrapper */

	#wrapper {

		display: flex;
		-moz-align-items: center;
		-webkit-align-items: center;
		-ms-align-items: center;
		align-items: center;
		-moz-justify-content: center;
		-webkit-justify-content: center;
		-ms-justify-content: center;
		justify-content: center;
		-moz-flex-direction: row;
		-webkit-flex-direction: row;
		-ms-flex-direction: row;
		flex-direction: row;
        flex-wrap: wrap;
        grid-gap: 1em;
		-moz-perspective: 1000px;
		-webkit-perspective: 1000px;
		-ms-perspective: 1000px;
		perspective: 1000px;
		position: relative;
		min-height: 100%;
		padding: 1.5em;
		z-index: 2;
	}

		#wrapper > * {
			z-index: 1;
		}

.column {
    display: grid;
  align-content: center;
}

.row {
    display: flex;
		-moz-align-items: center;
		-webkit-align-items: center;
		-ms-align-items: center;
    flex-flow: row wrap;
}

		@media screen and (max-width: 360px) {

			#wrapper {
				padding: 0.75em;
			}

		}

		body.is-ie #wrapper {
			height: 100%;
		}
