@import url(font-awesome.min.css);
@import url("https://fonts.googleapis.com/css?family=Roboto:400,700");

html, body, div, span, applet, object,
iframe, h1, h2, h3, h4, h5, h6, p, blockquote,
pre, a, abbr, acronym, address, big, cite,
code, del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var, b,
u, i, center, dl, dt, dd, ol, ul, li, fieldset,
form, label, legend, table, caption, tbody,
tfoot, thead, tr, th, td, article, aside,
canvas, details, embed, figure, figcaption,
footer, header, hgroup, menu, nav, output, ruby,
section, summary, time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;}

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
	display: block;}

body {
	line-height: 1;
}

ol, ul {
	list-style: none;
}

blockquote, q {
	quotes: none;
}

	blockquote:before, blockquote:after, q:before, q:after {
		content: '';
		content: none;
	}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

body {
	-webkit-text-size-adjust: none;
}

mark {
	background-color: transparent;
	color: inherit;
}

input::-moz-focus-inner {
	border: 0;
	padding: 0;
}

input, select, textarea {
	-moz-appearance: none;
	-webkit-appearance: none;
	-ms-appearance: none;
	appearance: none;
}

/* Basic */

	@-ms-viewport {
		width: device-width;
	}

	body {
		-ms-overflow-style: scrollbar;
	}

	@media screen and (max-width: 480px) {

		html, body {
			min-width: 320px;
		}

	}

	html {
		box-sizing: border-box;
	}

	*, *:before, *:after {
		box-sizing: inherit;
	}

	html, body {
		height: 100%;
		overflow-x: hidden;
		width: 100%;
	}

		@media screen and (max-height: 640px) {

			html, body {
				min-height: 100%;
			}

		}

	body {
		display: -moz-flex;
		display: -webkit-flex;
		display: -ms-flex;
		display: flex;
		-moz-flex-direction: column;
		-webkit-flex-direction: column;
		-ms-flex-direction: column;
		flex-direction: column;
		-moz-justify-content: center;
		-webkit-justify-content: center;
		-ms-justify-content: center;
		justify-content: center;
		background-color: #000;
		padding: 6em 4em 4em 4em;
	}

		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;
		}

		body > * {
			position: relative;
			z-index: 2;
		}

		@media screen and (max-width: 1680px) {

			body {
				padding: 6em 3.5em 3.5em 3.5em;
			}

		}

		@media screen and (max-width: 736px) {

			body {
				padding: 5em 2em 2em 2em;
			}

		}

		@media screen and (max-width: 360px) {

			body {
				padding: 5em 1.25em 1.25em 1.25em;
			}

		}

/* BG */

	#bg {
		-moz-transition: opacity 2s ease-in-out;
		-webkit-transition: opacity 2s ease-in-out;
		-ms-transition: opacity 2s ease-in-out;
		transition: opacity 2s ease-in-out;
		height: 100%;
		left: 0;
		opacity: 0.25;
		position: fixed;
		top: 0;
		width: 100%;
		z-index: 1;
	}

		#bg div {
			-moz-transition: opacity 3s ease, visibility 3s;
			-webkit-transition: opacity 3s ease, visibility 3s;
			-ms-transition: opacity 3s ease, visibility 3s;
			transition: opacity 3s ease, visibility 3s;
			background-size: cover;
			height: 100%;
			left: 0;
			opacity: 0;
			position: absolute;
			top: 0;
			visibility: hidden;
			width: 150%;
		}

			#bg div.visible {
				-moz-animation: bg 45s linear infinite;
				-webkit-animation: bg 45s linear infinite;
				-ms-animation: bg 45s linear infinite;
				animation: bg 45s linear infinite;
				opacity: 1;
				visibility: visible;
				z-index: 1;
			}

				#bg div.visible.top {
					z-index: 2;
				}

				@media screen and (max-width: 1280px) {

					#bg div.visible {
						-moz-animation: bg 29.25s linear infinite;
						-webkit-animation: bg 29.25s linear infinite;
						-ms-animation: bg 29.25s linear infinite;
						animation: bg 29.25s linear infinite;
					}

				}

				@media screen and (max-width: 736px) {

					#bg div.visible {
						-moz-animation: bg 18s linear infinite;
						-webkit-animation: bg 18s linear infinite;
						-ms-animation: bg 18s linear infinite;
						animation: bg 18s linear infinite;
					}

				}

			#bg div:only-child {
				-moz-animation-direction: alternate !important;
				-webkit-animation-direction: alternate !important;
				-ms-animation-direction: alternate !important;
				animation-direction: alternate !important;
			}

		body.is-preload #bg {
			opacity: 0;
		}

	@-moz-keyframes bg {
		0% {
			-moz-transform: translateX(0);
			-webkit-transform: translateX(0);
			-ms-transform: translateX(0);
			transform: translateX(0);
		}

		100% {
			-moz-transform: translateX(-25%);
			-webkit-transform: translateX(-25%);
			-ms-transform: translateX(-25%);
			transform: translateX(-25%);
		}
	}

	@-webkit-keyframes bg {
		0% {
			-moz-transform: translateX(0);
			-webkit-transform: translateX(0);
			-ms-transform: translateX(0);
			transform: translateX(0);
		}

		100% {
			-moz-transform: translateX(-25%);
			-webkit-transform: translateX(-25%);
			-ms-transform: translateX(-25%);
			transform: translateX(-25%);
		}
	}

	@-ms-keyframes bg {
		0% {
			-moz-transform: translateX(0);
			-webkit-transform: translateX(0);
			-ms-transform: translateX(0);
			transform: translateX(0);
		}

		100% {
			-moz-transform: translateX(-25%);
			-webkit-transform: translateX(-25%);
			-ms-transform: translateX(-25%);
			transform: translateX(-25%);
		}
	}

	@keyframes bg {
		0% {
			-moz-transform: translateX(0);
			-webkit-transform: translateX(0);
			-ms-transform: translateX(0);
			transform: translateX(0);
		}

		100% {
			-moz-transform: translateX(-25%);
			-webkit-transform: translateX(-25%);
			-ms-transform: translateX(-25%);
			transform: translateX(-25%);
		}
	}

/* Type */

body, input, select, textarea {
	color: rgba(255, 255, 255, 0.75);
	font-family: "Roboto", sans-serif;
	font-size: 16pt;
	font-weight: 400;
	letter-spacing: -0.01em;
	line-height: 1.65em;
}

	@media screen and (max-width: 1680px) {

		body, input, select, textarea {
			font-size: 12pt;
		}

	}

	@media screen and (max-width: 1280px) {

		body, input, select, textarea {
			font-size: 12pt;
		}

	}

	@media screen and (max-width: 980px) {

		body, input, select, textarea {
			font-size: 12pt;
		}

	}

	@media screen and (max-width: 736px) {

		body, input, select, textarea {
			font-size: 12pt;
		}

	}

	@media screen and (max-width: 480px) {

		body, input, select, textarea {
			font-size: 12pt;
		}

	}

a {
	-moz-transition: border-bottom-color 0.2s ease, color 0.2s ease;
	-webkit-transition: border-bottom-color 0.2s ease, color 0.2s ease;
	-ms-transition: border-bottom-color 0.2s ease, color 0.2s ease;
	transition: border-bottom-color 0.2s ease, color 0.2s ease;
	border-bottom: dotted 1px rgba(255, 255, 255, 0.25);
	color: #1cb495;
	text-decoration: none;
}

	a:hover {
		border-bottom-color: transparent;
		color: #ff66ff !important;
		text-decoration: none;
	}

strong, b {
	color: #fff;
	font-weight: 700;
}

em, i {
	font-style: italic;
}

p {
	margin: 0 0 2em 0;
}

h1, h2, h3, h4, h5, h6 {
	color: #fff;
	font-weight: 700;
	line-height: 1em;
	margin: 0 0 1em 0;
}

	h1 a, h2 a, h3 a, h4 a, h5 a, h6 a {
		color: inherit;
		text-decoration: none;
	}

h1 {
	font-size: 2.5em;
	line-height: 1.25em;
}

h2 {
	font-size: 1.75em;
	line-height: 1.5em;
}

h3 {
	font-size: 1.35em;
	line-height: 1.5em;
}

h4 {
	font-size: 1.1em;
	line-height: 1.5em;
}

h5 {
	font-size: 0.9em;
	line-height: 1.5em;
}

h6 {
	font-size: 0.7em;
	line-height: 1.5em;
}

sub {
	font-size: 0.8em;
	position: relative;
	top: 0.5em;
}

sup {
	font-size: 0.8em;
	position: relative;
	top: -0.5em;
}

blockquote {
	border-left: solid 8px rgba(255, 255, 255, 0.35);
	font-style: italic;
	margin: 0 0 2em 0;
	padding: 0.5em 0 0.5em 2em;
}

code {
	background: rgba(255, 255, 255, 0.125);
	border-radius: 6px;
	border: solid 2px rgba(255, 255, 255, 0.35);
	font-family: "Courier New", monospace;
	font-size: 0.9em;
	margin: 0 0.25em;
	padding: 0.25em 0.65em;
}

pre {
	-webkit-overflow-scrolling: touch;
	font-family: "Courier New", monospace;
	font-size: 0.9em;
	margin: 0 0 2em 0;
}

	pre code {
		display: block;
		line-height: 1.75em;
		padding: 1em 1.5em;
		overflow-x: auto;
	}

hr {
	border: 0;
	border-bottom: solid 2px rgba(255, 255, 255, 0.35);
	margin: 2em 0;
}

	hr.major {
		margin: 3em 0;
	}

/* Icon */

.icon {
	text-decoration: none;
	border-bottom: none;
	position: relative;
}

#icon {
	text-align: center;
	text-decoration: none;
	border-bottom: none;
	position: relative;
}

	.icon:before {
		-moz-osx-font-smoothing: grayscale;
		-webkit-font-smoothing: antialiased;
		font-family: FontAwesome;
		font-style: normal;
		font-weight: normal;
		text-transform: none !important;
	}

	.icon > .label {
		display: none;
	}

/* Footer */

	#footer {
		-moz-transition: opacity 0.5s ease-in-out;
		-webkit-transition: opacity 0.5s ease-in-out;
		-ms-transition: opacity 0.5s ease-in-out;
		transition: opacity 0.5s ease-in-out;
		color: rgba(255, 255, 255, 0.5);
		opacity: 0.5;
		top: 50%;
		display: flex;
		justify-content: center;
		}

		#footer:hover {
			opacity: 1;
		}


		@media screen and (max-width: 1680px) {

			#footer {
				bottom: 3.5em;
				left: auto;
			}

		}
		@media screen and (max-width: 1100px) {

			#footer {
				bottom: 3.5em;
				left: auto;
			}

		}

		@media screen and (max-width: 736px) {

			#footer {
				bottom: 2em;
				left: auto;
			}

		}

		@media screen and (max-width: 360px) {

			#footer {
				bottom: 1.25em;
				left: auto;
			}

		}

		@media screen and (max-height: 640px) {

			#footer {
				bottom: auto;
				left: auto;
			}

		}

/* Font Awesome Colour */
		.fa {
			color:#ffccff;
		}

/*Hover */		
		a:hover {
			border-bottom-color: transparent;
			color: #ff66ff !important;
			text-decoration: none;
		}

