@font-face {
    font-family: 'acherus-grotesque';
    src: url('../fonts/acherusgrotesque-ultralight-webfont.woff2') format('woff2'),
         url('../fonts/acherusgrotesque-ultralight-webfont.woff') format('woff');
    font-weight: 100;
    font-style: normal;
}

@font-face {
    font-family: 'acherus-grotesque';
    src: url('../fonts/acherusgrotesque-ultltita-webfont.woff2') format('woff2'),
         url('../fonts/acherusgrotesque-ultltita-webfont.woff') format('woff');
    font-weight: 100;
    font-style: italic;
}

@font-face {
    font-family: 'acherus-grotesque';
    src: url('../fonts/acherusgrotesque-regular-webfont.woff2') format('woff2'),
         url('../fonts/acherusgrotesque-regular-webfont.woff') format('woff');
    font-weight: 400;
    font-style: normal;
}

@font-face {
    font-family: 'acherus-grotesque';
    src: url('../fonts/acherusgrotesque-regita-webfont.woff2') format('woff2'),
         url('../fonts/acherusgrotesque-regita-webfont.woff') format('woff');
    font-weight: 400;
    font-style: italic;
}

@font-face {
    font-family: 'acherus-grotesque';
    src: url('../fonts/acherusgrotesque-bold-webfont.woff2') format('woff2'),
         url('../fonts/acherusgrotesque-bold-webfont.woff') format('woff');
    font-weight: 600;
    font-style: normal;

}

@font-face {
    font-family: 'acherus-grotesque';
    src: url('../fonts/acherusgrotesque-bolditalic-webfont.woff2') format('woff2'),
         url('../fonts/acherusgrotesque-bolditalic-webfont.woff') format('woff');
    font-weight: 600;
    font-style: italic;
}

/* =============================================================================
   HTML5 CSS Reset Minified - Eric Meyer
   ========================================================================== */

html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,figcaption,figure,footer,header,hgroup,menu,nav,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent}
body{line-height:1}
article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}
nav ul{list-style:none}
blockquote,q{quotes:none}
blockquote:before,blockquote:after,q:before,q:after{content:none}
a{margin:0;padding:0;font-size:100%;vertical-align:baseline;background:transparent;text-decoration:none}
mark{background-color:#ff9;color:#000;font-style:italic;font-weight:bold}
del{text-decoration:line-through}
abbr[title],dfn[title]{border-bottom:1px dotted;cursor:help}
table{border-collapse:collapse;border-spacing:0}
hr{display:block;height:1px;border:0;border-top:1px solid #ccc;margin:1em 0;padding:0}
input,select{vertical-align:middle}
li{list-style:none}


/* =============================================================================
   My CSS
   ========================================================================== */

/* ---- base ---- */

html,body{ 
	width:100%;
	height:100%;
	background: rgb(33,24,93);
	background: -moz-linear-gradient(20deg, rgba(33,24,93,1) 0%, rgba(74,32,116,1) 44%, rgba(89,31,117,1) 84%, rgba(116,27,107,1) 100%);
	background: -webkit-linear-gradient(20deg, rgba(33,24,93,1) 0%, rgba(74,32,116,1) 44%, rgba(89,31,117,1) 84%, rgba(116,27,107,1) 100%);
	background: linear-gradient(20deg, rgba(33,24,93,1) 0%, rgba(74,32,116,1) 44%, rgba(89,31,117,1) 84%, rgba(116,27,107,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#21185d",endColorstr="#741b6b",GradientType=1);
	overflow: hidden;
}

html{
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

body{
    font-family: 'acherus-grotesque', Helvetica, sans-serif;
    font-weight: 400;
	overflow: hidden;
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
}

canvas{
	display:block;
	vertical-align:bottom;
}

/*--------------------------------------------------------------
# Preloader
--------------------------------------------------------------*/

.preloader-overlay {
    position: fixed;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 100000000;
	background: rgb(33,24,93);
	background: -moz-linear-gradient(20deg, rgba(33,24,93,1) 0%, rgba(74,32,116,1) 44%, rgba(89,31,117,1) 84%, rgba(116,27,107,1) 100%);
	background: -webkit-linear-gradient(20deg, rgba(33,24,93,1) 0%, rgba(74,32,116,1) 44%, rgba(89,31,117,1) 84%, rgba(116,27,107,1) 100%);
	background: linear-gradient(20deg, rgba(33,24,93,1) 0%, rgba(74,32,116,1) 44%, rgba(89,31,117,1) 84%, rgba(116,27,107,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#21185d",endColorstr="#741b6b",GradientType=1);
}

.preloader-overlay > .preloader {
    position: fixed;
    top: 50%;
    left: 50%;
    margin-top: -1rem;
    margin-left: -1rem
}

.loader,
.loader:after {
  border-radius: 50%;
  width: 2rem;
  height: 2rem;
}
.loader {
  margin: 0px auto;
  font-size: 5px;
  position: relative;
  text-indent: -9999em;
  border-top: 1em solid rgba(255, 255, 255, 0.2);
  border-right: 1em solid rgba(255, 255, 255, 0.2);
  border-bottom: 1em solid rgba(255, 255, 255, 0.2);
  border-left: 1em solid #fff;
  -webkit-transform: translateZ(0);
  -ms-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-animation: load8 1.1s infinite linear;
  animation: load8 1.1s infinite linear;
}
@-webkit-keyframes load8 {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@keyframes load8 {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

/* ---- particles.js container ---- */ 
#particles{
	position: absolute;
	overflow: hidden;
	width: 100%; 
	height: 100%;
	z-index: 4;
}

#particles-js{ 
	position:absolute; 
	z-index: 1;
	width: 100%; 
	height: 100%; 
	background: transparent;
	filter: blur(0.2rem);
	opacity: 0.5;
} 

#particles-js-2{ 
	position:absolute; 
	z-index: 2;
	width: 100%; 
	height: 100%; 
	background: transparent;
	opacity: 0.6;
} 

#particles-js-3{ 
	position:absolute; 
	z-index: 3;
	width: 100%; 
	height: 100%; 
	background: transparent;
	filter: blur(0.2rem);
	transform: scale(3);
	pointer-events: none;
	opacity: 0.4;
} 

/* ---- Information ---- */ 
#logo{
	position: absolute;
	left: 30px;
	top: 35px;
}

#logo img{
	height: 40vw;
	max-height: 300px;
	width: auto;
}

#contact{
	position: absolute;
	right: 30px;
	bottom: 30px;
	z-index: 4;
}

h1{
	font-weight: 600;
	line-height: 1.3;
	font-size: 3rem;
	text-shadow: 0px 0px 30px #330059;
}

h2.author{
	font-weight: 100;
	font-style: italic;
	font-size: 1.6rem;
	margin-top: 1rem;
}

#quote{
	
}

.citation{
	position: relative;
}

.citation:before{
	content: '“';
	position: absolute;
	left: -2.5rem;
	display: block;
	font-size: 4rem;
	top: -1rem;
}

.citation:after{
	content: '”';
	position: absolute;
	display: inline-block;
	font-size: 4rem;
	bottom: -0.3rem;
}

.citation:before,
.citation:after,
.animate_text{
	opacity: 0;
	-webkit-transition: opacity 3s ease-out;
	-moz-transition: opacity 3s ease-out;
	-o-transition: opacity 3s ease-out;
	transition: opacity 3s ease-out;
}

.loaded .citation:before,
.loaded .animate_text,
.loaded .animate_text.num_2{
	opacity: 1;
	-webkit-transition-delay: 1.4s;
	-moz-transition-delay: 1.4s;
	-ms-transition-delay: 1.4s;
    transition-delay: 1.4s;
}

.loaded .animate_text.num_3,
.loaded .animate_text.num_4{
	-webkit-transition-delay: 3.4s;
	-moz-transition-delay: 3.4s;
	-ms-transition-delay: 3.4s;
    transition-delay: 3.4s;
}

.loaded .citation:after,
.loaded .animate_text.num_5,
.loaded .animate_text.num_6{
	opacity: 1;
	-webkit-transition-delay: 5.4s;
	-moz-transition-delay: 5.4s;
	-ms-transition-delay: 5.4s;
    transition-delay: 5.4s;
}

.loaded .animate_text.num_7{
	-webkit-transition-delay: 7s;
	-moz-transition-delay: 7s;
	-ms-transition-delay: 7s;
    transition-delay: 7s;
}

.indent{
	padding-left: 8rem;	
}

#info{
	position: absolute;
	font-weight: normal;
	font-style: italic;
	bottom: 30px;
	left: 0;
	right: 0;
	margin: auto;
	font-size: 1rem;
	line-height: 1.3;
	width: 30vw;
	min-width: 300px;
}

.button{
	padding: 0.6rem 0.8rem 0.8rem;
	background-color: #fff;
	border: 1px solid #fff;
	color: #000;
	-webkit-transition: all .3s ease-out;
	-moz-transition: all .3s ease-out;
	-o-transition: all .3s ease-out;
	transition: all .3s ease-out;
}

.button:hover{
	background-color: transparent;
	color: #fff;
}

#contact_block{
	overflow: hidden;
	position: absolute;
	height: 100%;
	width: 100%;
}

#contact_info{
	background-color: #fff;
	color: #000;
	height: 100%;
	width: 20vw;
	position: absolute;
	right: -30vw;
	z-index: 10;
	-webkit-transition: all .5s ease-out;
	-moz-transition: all .5s ease-out;
	-o-transition: all .5s ease-out;
	transition: all .5s ease-out;
}

.contact_text{
	font-size: 1rem;
	line-height: 1.3;
	position: absolute;
	bottom: 0;
	margin: 2rem;
}

a.email{
	color: #000;
	text-decoration: underline;
}

.active #contact_info{
	right: 0;
}

/* ---- Close ---- */ 
.close {
	position: relative;
	display: inline-block;
	width: 30px;
	height: 30px;
	overflow: hidden;	
	-webkit-transition: all .1s ease-out;
	-moz-transition: all .1s ease-out;
	-o-transition: all .1s ease-out;
	transition: all .1s ease-out;
	text-indent: -9999rem;
	margin-bottom: 1rem;
}
.close::before, .close::after {
	content: '';
	position: absolute;
	height: 1px;
	width: 100%;
	top: 50%;
	left: 0;
	margin-top: -1px;
	background: #000;
}
.close::before {
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	transform: rotate(45deg);
}
.close::after {
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	-o-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
.close:hover::before, .close:hover::after {
	background: #aaa;
}



/*
//---------------------------
//----- Media Query
//---------------------------
*/

/* ----------- 27 inch Screens ----------- */
@media screen 
  and (min-width: 1680px) { 
	

}

/* ----------- 27 inch Screens ----------- */
@media screen 
  and (min-width: 2400px) { 
	
}

/* ----------- 24 inch Screens ----------- */
@media screen 
  and (min-width: 1920px) 
  and (max-width: 2400px) { 
}

/* ----------- 15 inch Screens ----------- */
@media screen 
  and (min-width: 1681px) 
  and (max-width: 1920px) { 
}

/* ----------- Retina Screens ----------- */
@media screen 
  and (min-width: 1281px) 
  and (max-width: 1600px) 
  and (-webkit-min-device-pixel-ratio: 2)
  and (min-resolution: 192dpi) { 
	  
}

/* ----------- Non-Retina Screens ----------- */
@media screen 
  and (min-width: 1281px) 
  and (max-width: 1600px) 
  and (-webkit-min-device-pixel-ratio: 1) { 
}


/* macbook */
@media screen and (max-width: 1300px) {
	h1{
		line-height: 1.3;
		font-size: 2.5rem;
	}

	.citation:before{
		left: -2rem;
		font-size: 3.5rem;
		top: -1rem;
	}
	
	.citation:after{
		font-size: 3.5rem;
		bottom: -0.3rem;
	}

	.indent{
		padding-left: 6rem;	
	}

	h2.author{
		font-size: 1.2rem;
	}

	#contact_info{
		width: 25vw;
	}
	
	#info{
		width: 40vw;
	}
}



/* iPad landscape */
@media screen and (max-width: 1024px) {
	h1{
		line-height: 1.3;
		font-size: 2rem;
	}

	.citation:before{
		left: -1.5rem;
		font-size: 3rem;
		top: -1rem;
	}
	
	.citation:after{
		font-size: 3rem;
		bottom: -0.6rem;
	}

	h2.author{
		font-size: 1.2rem;
	}

	#contact_info{
		width: 27vw;
	}
	
	#info{
		width: 50vw;
		font-size: 0.9rem;
	}
}

/* iPad Portrait */
@media screen and (max-width: 768px) {

	#contact_info{
		width: 36vw;
		right: -50vw;
	}
	
	#info{
		width: 70vw;
		left: 30px;
		right: initial;
	}
}

/* iPhone 6+ landscape */
@media screen and (max-width: 736px) {
	
	#logo img{
		max-height: 200px;
	}
	
	h1{
		line-height: 1.3;
		font-size: 1.4rem;
	}

	.citation:before{
		left: -1.1rem;
		font-size: 2rem;
		top: -0.7rem;
	}
	
	.citation:after{
		font-size: 2rem;
		bottom: -0.4rem;
	}

	.indent{
		padding-left: 4rem;	
	}

	h2.author{
		font-size: 1rem;
	}
	
	#contact_info{
		width: 34vw;
	}
	
	#contact{
		font-size: 0.9rem;
		padding: 0.4rem 0.6rem 0.6rem;
	}
	
	.contact_text{
		font-size: 0.9rem;
	}
}

/* iPhone 6 landscape */
@media screen and (max-width: 667px) and (orientation: landscape) {
	
}

/* iPhone 5 + 5s Landscape */
@media screen and (max-width: 568px) and (orientation: landscape) {

}

/* iPhone 4s Landscape */
@media screen and (max-width: 480px) {

}

/* iPhone 6+ portrait */
@media screen and (max-width: 414px) {
	
	#quote{
		right: 30px;
		position: absolute;
		text-align: right;
		top: 25px;
	}
	
	.citation{
		text-align: right;
	}
	
	.citation:before {
		left: 0.3rem;
	}

	#logo{
		position: absolute;
		left: 20px;
		top: 30px;
	}
	
	#logo img{
		height: 50vw;
		max-height: 400px;
	}
	
	.indent{
		padding-left: 3rem;	
	}
	
	#info{
		width: 86vw;
		left: 9vw;
		bottom: 23vw;
	}
	
	#contact_info{
		width: 65vw;
		right: -70vw;
	}

}

/* iPhone 6 Portrait */
@media screen and (max-width:375px) {

}

/* iPhone 4S + 5 + 5s Portrait */
@media screen and (max-width: 320px) {

}