/* =Table of Contents
--------------------------------------------------------------
	=Common Styles
	=Typography
	=Loader
	=Navigation
	=Hero
	=Bars
	=Portfolio
	=Timeline
	=Clients
	=Contact
	=Footer
	=Animations
	=Responsive Styles
*/


/* =Common Styles
-------------------------------------------------------------- */
html {
	overflow-x: hidden !important;
}

body {
	background: #ffffff;
	color: #353535;
	font: normal 16px "San Francisco", "Helvetica Neue", "Helvetica", serif;
	font-weight: 400;
	-webkit-font-smoothing: antialiased;
	-webkit-text-size-adjust: 100%;
	font-weight: 200;
	overflow-x: hidden;
}

section { overflow: hidden; }

::-moz-selection { background: #272727; color: #fff; }
	 ::selection { background: #272727; color: #fff; }

.padded {
	padding-top: 60px;
	padding-bottom: 60px;
}

.padded-top {
	padding-top: 60px;
}

.padded-bottom {
	padding-bottom: 60px;
}

/* Medium Devices, Desktops */
@media only screen and (min-width : 992px) {
	.padded {
		padding-top: 100px;
		padding-bottom: 100px;
	}

	.padded-top {
		padding-top: 100px;
	}

	.padded-bottom {
		padding-bottom: 100px;
	}
}


/* =Typography
-------------------------------------------------------------- */
h1 {
	font-family: "San Francisco", "Helvetica Neue", "Helvetica", serif;
	font-weight: 100;
	font-size: 30px;
	line-height: 40px;
	color: #353535;
	padding-bottom: 30px;
}

.hero h1 {
	padding-bottom: 0px;
	color: #757575;
  font-weight: 100;
}

h2 {
	font-family: "San Francisco", "Helvetica Neue", "Helvetica", serif;
	font-size: 12px;
	font-weight: 100;
	line-height: 12px;
	color: #212121;
	text-transform: uppercase;
	letter-spacing: 0.50em;
	padding-bottom: 20px;
	-webkit-font-variant-ligatures: no-common-ligatures;
}

h6 {
	font-weight: 400;
	font-size: 7px;
	margin-top: 10px;
	text-transform: uppercase;
	letter-spacing: 0.3em;
}

p {
	font-size: 14px;
	line-height: 30px;
	padding-bottom: 20px;
	font-weight: 200;
}

a {
	color: #3897f0;
}

a:hover {
	text-decoration: underline;
}

a.about {
	border-bottom: 2px solid #3897f0;
  padding-bottom: 5px;
	transition: all 0.3s ease-in-out !important;
	color: #353535;
	background-image: none;
}

a.about:hover {
	padding-left: 5px;
	padding-right: 5px;
}

.strong {
	color: #212121;
}

.button {
	display: inline-block;
	font-size: 12px;
	line-height: 12px;
	letter-spacing: 0.05em;
	padding-bottom: 8px;
	-webkit-transition: all 0.3s ease-in-out;
	   -moz-transition: all 0.3s ease-in-out;
	   	-ms-transition: all 0.3s ease-in-out;
	   	 -o-transition: all 0.3s ease-in-out;
			transition: all 0.3s ease-in-out;
}

.button:hover {
	padding-left: 8px;
	padding-right: 8px;
	text-decoration: none;
}

/* Small Devices, Tablets */
@media only screen and (min-width : 768px) {
	h1 {
		font-size: 50px;
		line-height: 62px;
		padding-bottom: 40px;
	}

	h2 {
		padding-bottom: 40px;
	}

}

/* Medium Devices, Desktops */
@media only screen and (min-width : 992px) {
	h1 {
		font-size: 55px;
		line-height: 70px;
	}

}

/* Large Devices, Wide Screens */
@media only screen and (min-width : 1200px) {
	h1 {
		font-size: 56px;
		line-height: 72px;
		padding-bottom: 50px;
	}

	h2 {
		padding-bottom: 40px;
	}

	p {
		font-size: 16px;
		line-height: 36px;
		padding-bottom: 30px;
		font-weight: 200;
	}
}

.section-number {
	font-size: 100px;
  font-weight: 800;
  color: #f7f7f7;
	position: relative;
	top: 40px;
}

.section-title {
	position: relative;
  top: -5px;
  font-size: 30px;
}

.section-line {
	width: 40px;
  height: 3px;
  border-radius: 3px;
  background: linear-gradient(45deg, #3e3b94, #3897f0);
  position: relative;
  top: -5px;
  margin-left: 0;
}

/* =Loader
-------------------------------------------------------------- */
#pageloader {
	background-color:#fff;

	position:absolute;
	z-index:99999999999999;
	width:100%;
	height:100%;
	left:0;
	right:0;
	top:0;
	bottom:0;
}

.pageloader-fade {
	opacity:0 !important;

	-webkit-transition: all .75s ease;
	-moz-transition: all .75s ease;
	-o-transition: all .75s ease;
	-ms-transition: all .75s ease;
	transition: all .75s ease;
}

.pageloader-hide {
	display:none;
}

.pageloader-content {
	margin: 0 auto;
	width:100px;
	height:100px;
	position:absolute;
	margin:0;
	opacity:1;
	top:0;
	text-align: center;
}

.pageloader-content .logo {
	margin-bottom: 100px;
	opacity: .1;
}

.pageloader-content-hide {
	opacity:0 !important;

	-webkit-transition: all .25s ease;
	-moz-transition: all .25s ease;
	-o-transition: all .25s ease;
	-ms-transition: all .25s ease;
	transition: all .25s ease;
}

html.html-onload .hero-content {
	opacity: 0;
}

html.html-loaded .hero-content {
	animation-duration: 1.5s;
	-webkit-animation-name: fadeIn;
			animation-name: fadeIn;
}

html.no-csstransitions .hero-content {
	opacity: 1;
}


/* =Navigation
-------------------------------------------------------------- */
header {
	display: block;
	width: 100%;
	background: #fff;
	border-bottom: 1px solid #f2f2f2;
	position: fixed;
	z-index: 1;
	top: 0;
	animation-duration: 0.5s;
	animation-fill-mode: both;
	-webkit-animation-name: fadeOut;
			animation-name: fadeOut;
	-webkit-transition: all 0.3s ease-in-out;
	   -moz-transition: all 0.3s ease-in-out;
	   	-ms-transition: all 0.3s ease-in-out;
	   	 -o-transition: all 0.3s ease-in-out;
			transition: all 0.3s ease-in-out;
}

header.scrolled {
	animation-duration: 0.7s;
	-webkit-animation-name: fadeIn;
			animation-name: fadeIn;
}

header .container {
	position: relative;
}

.header-inner .logo {
	margin: 0;
	-webkit-transform: scale(0.5);
	   -moz-transform: scale(0.5);
		-ms-transform: scale(0.5,0.5);
			transform: scale(0.5);
}

.menu-button {
	cursor: pointer;
	display: block;
	width: 30px;
	height: 14px;
	top: 0;
	right: 10px;
	position: absolute;
}

.menu-button .before, .menu-button .main, .menu-button .after {
	display: block;
	height: 2px;
	background: #212121;
	-webkit-transition: -webkit-transform 0.2s;
	   -moz-transition:    -moz-transform 0.2s;
	    -ms-transition: 	-ms-transform 0.2s;
		 -o-transition: 	 -o-transform 0.2s;
			transition: 		transform 0.2s;
}

.menu-button .before {
	width: 25px;
	margin-bottom: 4px;
}

.menu-button .main {
	width: 20px;
	margin-bottom: 4px;
}

.menu-button .after {
	width: 30px;
}

/* Button Hover */
.menu-button:hover .before {
	-webkit-transform: translateY(-2px);
	   -moz-transform: translateY(-2px);
		-ms-transform: translateY(-2px);
		 -o-transform: translateY(-2px);
			transform: translateY(-2px);
}

.menu-button:hover .after {
	-webkit-transform: translateY(2px);
	   -moz-transform: translateY(2px);
		-ms-transform: translateY(2px);
		 -o-transform: translateY(2px);
			transform: translateY(2px);
}

/* Button Active */
.menu-button.active .main { display: none; }

.menu-button.active .before {
	width: 20px;
	margin: 0;
	-webkit-transition: -webkit-transform 0.5s;
	   -moz-transition:    -moz-transform 0.5s;
	    -ms-transition: 	-ms-transform 0.5s;
		 -o-transition: 	 -o-transform 0.5s;
			transition: 		transform 0.5s;
	-webkit-transform: translateY(2px) rotate(45deg);
	   -moz-transform: translateY(2px) rotate(45deg);
		-ms-transform: translateY(2px) rotate(45deg);
		 -o-transform: translateY(2px) rotate(45deg);
			transform: translateY(2px) rotate(45deg);
}

.menu-button.active .after {
	width: 20px;
	margin: 0;
	-webkit-transition: -webkit-transform 0.5s;
	   -moz-transition:    -moz-transform 0.5s;
	    -ms-transition: 	-ms-transform 0.5s;
		 -o-transition: 	 -o-transform 0.5s;
			transition: 		transform 0.5s;
	-webkit-transform: translateY(0) rotate(-45deg);
	   -moz-transform: translateY(0) rotate(-45deg);
		-ms-transform: translateY(0) rotate(-45deg);
		 -o-transform: translateY(0) rotate(-45deg);
			transform: translateY(0) rotate(-45deg);
}

#side-nav {
	display: none;
}

#side-nav li {
	margin-top: 15px;
}

#side-nav li:last-of-type {
	margin-bottom: 15px;
}

#side-nav a {
	position: relative;
	font-size: 11px;
	letter-spacing: 0.30em;
	text-transform: uppercase;
	text-decoration: none;
	color: #8a8a8a;
	padding-left: 40px;

	-webkit-transition: all 0.3s ease-in-out;
	   -moz-transition: all 0.3s ease-in-out;
	   	-ms-transition: all 0.3s ease-in-out;
	   	 -o-transition: all 0.3s ease-in-out;
			transition: all 0.3s ease-in-out;
}

#side-nav a.active, #side-nav a:hover {
	color: #212121;
}

#side-nav a:after {
	position: absolute;
	top: 3px;
	right: auto;
	left: 0;
	content: "\A";
	width: 8px;
	height: 8px;
	background: #d1d1d1;
	background: rgba(168,168,168,.3);
	border: 2px solid transparent;
	-webkit-border-radius: 100px;
	   -moz-border-radius: 100px;
			border-radius: 100px;

	-webkit-transition: all 0.3s ease-in-out;
	   -moz-transition: all 0.3s ease-in-out;
	   	-ms-transition: all 0.3s ease-in-out;
	   	 -o-transition: all 0.3s ease-in-out;
			transition: all 0.3s ease-in-out;
  /*vertical nav*/
	margin-right: 20px;
}

#side-nav a.active:after, #side-nav a:hover:after {
	top: 1px;
	right: -2px;
	background: transparent;
	width: 12px;
	height: 12px;
	/*vertical nav*/
	margin-right: 20px;
}


#side-nav #top:after {
	position: absolute;
	top: 3px;
	right: 0;
	content: "\A";
	width: 0;
	height: 0;
	border: 4px solid #d1d1d1;
	border: 4px solid rgba(168,168,168,.1);

	-webkit-transition: all 0.3s ease-in-out;
	   -moz-transition: all 0.3s ease-in-out;
	   	-ms-transition: all 0.3s ease-in-out;
	   	 -o-transition: all 0.3s ease-in-out;
			transition: all 0.3s ease-in-out;
}

#side-nav #top:hover:after {
	top: 5px;
	right: 0;
	zoom: 1;
	border-right: 4px solid transparent;
	border-bottom: 4px solid transparent;

	-webkit-border-radius: 0;
	   -moz-border-radius: 0;
			border-radius: 0;
	-webkit-transform: rotate(45deg);
	   -moz-transform: rotate(45deg);
		-ms-transform: rotate(45deg);
		 -o-transform: rotate(45deg);
			transform: rotate(45deg);
}

/* Small Devices, Tablets */
@media only screen and (min-width : 768px) {

	.menu-button { right: 20px; }
}


/* Medium Devices, Desktops */
@media only screen and (min-width : 992px) {
	header {
		top: 100px;
		background: transparent;
		z-index: auto;
		border-bottom: none;
		padding-top: 0px;
		padding-bottom: 0px;
	}

	.header-inner .logo {
		margin: 0;
		-webkit-transform: scale(1);
		   -moz-transform: scale(1);
			-ms-transform: scale(1,1);
				transform: scale(1);
	}

	.menu-button { display: none; }

	#side-nav {
		/*display: block!important;*/
		text-align: right;
		/*vertical nav*/
		display: inline-flex !important;
    transform: rotate(-90deg);
    top: 35vh !important;
    position: absolute;
    flex-direction: row-reverse;
	}

	#side-nav a {
		padding-left: 0px;
		padding-right: 40px;
	}

	#side-nav a:after {
		left: auto;
		right: 0;
	}

	#side-nav li {
		margin-top: 0;
		/*margin-bottom: 25px;*/
    /*vertical nav*/
		display: inline-flex;
	}

	#side-nav li:last-of-type {
		margin-bottom: 0px;
	}

}


/* =Hero
-------------------------------------------------------------- */
.hero {
	display: block;
	width: 100%;
	/*background: url(../images/hero-nu-4.png) no-repeat top;*/
	background-size: cover;
}

.logo {
	margin-bottom: 30px;
}

.scroll-to {
	position: absolute;
	bottom: -160px;
	display: none;
	width: 60px;
	height: 60px;
	/*background: url(../images/down-line.svg) no-repeat center;*/
	background-size: 70px 70px;
	background-position: 0 0;
	opacity: 1;

	-webkit-transition: all 0.3s ease-in-out;
	   -moz-transition: all 0.3s ease-in-out;
	   	-ms-transition: all 0.3s ease-in-out;
	   	 -o-transition: all 0.3s ease-in-out;
			transition: all 0.3s ease-in-out;

	/* Animation */
	-webkit-animation-name: bounce;
 	      	animation-name: bounce;
  -webkit-transform-origin: center bottom;
  		  transform-origin: center bottom;

	-webkit-animation: bounce 1.5s infinite;
	   -moz-animation: bounce 1.5s infinite;
		-ms-animation: bounce 1.5s infinite;
		 -o-animation: bounce 1.5s infinite;
			animation: bounce 1.5s infinite;
}

.scroll-to:hover {
	opacity: 1 !important;
}

/* Landscape Phones */
@media only screen and (min-width : 480px) {
	.logo {
		margin-bottom: 10px;
	}

	.hero h2 {
		padding: 0;
		margin-bottom: 10px;
	}

	.hero h1 {
		margin: 0;
		padding: 0;
	}
}

/* Small Devices, Tablets */
@media only screen and (min-width : 768px) {
	.logo {
		margin-bottom: 30px;
	}
	.scroll-to {
		display: block;
	}
	.hero h2 {
		padding-bottom: 20px;
		margin-bottom: 10px;
	}

	.hero h1 {
		margin: 0;
		padding: 0;
	}
}


/* =Bars
-------------------------------------------------------------- */
.bar-title {
	position: relative;
	width: 100%;
	color: #212121;
	font-size: 12px;
	letter-spacing: 0.05em;
	margin-bottom: 20px;
	margin-top: 40px;
}

.bar-title .align-right {
	position: absolute;
	right: 0;
	color: #777777;
}

.bar {
	width: 100%;
	height: 8px;
	background: #fafafa;
	box-shadow:  3px 3px 5px #dadada, -3px -3px 5px #ffffff;
}

.bar:last-of-type {
	margin-bottom: 0;
}

.bar-fill {
	width: 0%;
	height: 8px;
}

.bar, .bar-fill {
	-webkit-border-radius: 8px;
	   -moz-border-radius: 8px;
			border-radius: 8px;
}


/* =Portfolio
-------------------------------------------------------------- */
.folio-list li {
	margin-bottom: 30px;
}

.move-side{
	position: relative;
   -webkit-animation-name:move;
   -webkit-animation-duration:1.5s;
   -webkit-animation-iteration-count:infinite;
   -webkit-animation-timing-function:linear;
}

@-webkit-keyframes move
{
  0% {top:0px;left:15px;}
  50% {top:0px; left:35px;}
  100% {top:0px; left:15px;}
}

/* atvImg */
.atvImg {
	-webkit-border-radius: 20px;
	   -moz-border-radius: 20px;
			border-radius: 20px;
	-webkit-transform-style: preserve-3d;
			transform-style: preserve-3d;
	-webkit-tap-highlight-color: rgba(#000,0);
}

.atvImg img {
	-webkit-border-radius: 20px;
	   -moz-border-radius: 20px;
			border-radius: 20px;

	box-shadow: 0 2px 8px rgba(14,21,47,0.25);
}

.atvImg-container {
	position: relative;
	width: 100%;
	height: 100%;

	-webkit-border-radius: 20px;
	   -moz-border-radius: 20px;
			border-radius: 20px;

	-webkit-transition: all 0.2s ease-out;
	   -moz-transition: all 0.2s ease-out;
	   	-ms-transition: all 0.2s ease-out;
	   	 -o-transition: all 0.2s ease-out;
			transition: all 0.2s ease-out;
}

.atvImg-container.over .atvImg-shadow {
	box-shadow: 0 8px 20px rgba(14,21,47,0.4), 0 8px 20px rgba(14,21,47,0.4);
}

.atvImg-layers {
	position: relative;
	width: 100%;
	height: 100%;
	border-radius: 20px;
	overflow: hidden;

	-webkit-transform-style: preserve-3d;
			transform-style: preserve-3d;
}

.atvImg-rendered-layer {
	position: absolute;
	width: 104%;
	height: 104%;
	top: -2%;
	left: -2%;
	background-repeat: no-repeat;
	background-position: center;
	background-color: transparent;
	background-size: cover;

	-webkit-transition: all 0.1s ease-out;
	   -moz-transition: all 0.1s ease-out;
	   	-ms-transition: all 0.1s ease-out;
	   	 -o-transition: all 0.1s ease-out;
			transition: all 0.1s ease-out;
}

.atvImg-shadow {
	position: absolute;
	top: 5%;
	left: 5%;
	width: 90%;
	height: 90%;

	-webkit-transition: all 0.2s ease-out;
	   -moz-transition: all 0.2s ease-out;
	   	-ms-transition: all 0.2s ease-out;
	   	 -o-transition: all 0.2s ease-out;
			transition: all 0.2s ease-out;

	box-shadow: 0 8px 20px rgba(14,21,47,0.6);
}

.atvImg-shine {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	-webkit-border-radius: 20px;
	   -moz-border-radius: 20px;
			border-radius: 20px;
	background: linear-gradient(135deg, rgba(255,255,255,.25) 0%,rgba(255,255,255,0) 60%);
}

/* Small Devices, Tablets */
@media only screen and (min-width : 768px) {
	.atvImg-container.over .atvImg-shadow {
		box-shadow: 0 16px 40px rgba(14,21,47,0.4), 0 16px 40px rgba(14,21,47,0.4);
	}
}


/* =Timeline
-------------------------------------------------------------- */
.timeline {
	margin-top: 20px;
	overflow: hidden;
}

.timeline:before {
	content: "\A";
	display: block;
	opacity: 1;
	width: 1px;
	height: 100%;
	position: absolute;
	bottom: -200%;
	left: 19px;
	background: #d1d1d1;
	-webkit-transition: all 2s ease-out;
	   -moz-transition: all 2s ease-out;
	   	-ms-transition: all 2s ease-out;
	   	 -o-transition: all 2s ease-out;
			transition: all 2s ease-out;
}

.timeline.on:before {
	bottom: -10px;
}

.timeline .entry {
	font-size: 14px;
	color: #8a8a8a;
	margin-bottom: 60px;
}

.timeline .entry:last-of-type {
	margin-bottom: 0px;
}

.timeline .entry:before,
.timeline .entry:after {
    content: " "; /* 1 */
    display: table; /* 2 */
}

.timeline .entry:after {
    clear: both;
}

.timeline .entry .strong {
	display: block;
	color: #212121;
}

.timeline .entry .time, .timeline .entry .content {
	float: left;
	width: 100%;
}

.timeline .entry .time {
	position: relative;
	padding-left: 40px;
}

.timeline .entry .content {
	padding-top: 20px;
	padding-left: 50px;
}

.timeline .entry .time:before {
	content: "\A";
	display: block;
	position: absolute;
	top: 6px;
	left: 0px;
	width: 9px;
	height: 9px;
	background: #fff;
	border: 1px solid #8a8a8a;

	-webkit-border-radius: 100%;
	   -moz-border-radius: 100%;
			border-radius: 100%;
}

/* Landscape */
@media only screen and (min-width : 480px) {
	.timeline .entry .time, .timeline .entry .content {
		width: 50%;
	}

	.timeline .entry .content {
		padding-top: 0px;
		padding-left: 0px;
	}

}

/* Medium Devices, Desktops */
@media only screen and (min-width : 992px) {
	.timeline .entry .time:before {
		top: 6px;
		left: -4px;
	}

	.timeline:before {
		left: 15px;
	}

}

/* Large Devices, Wide Screens */
@media only screen and (min-width : 1200px) {
	.timeline .entry { font-size: 16px; }
}


/* =Clients
-------------------------------------------------------------- */
.client {
	display: block;
	opacity: .3;
	margin: 20px;
	-webkit-transition: all 0.3s ease-in-out;
	   -moz-transition: all 0.3s ease-in-out;
	   	-ms-transition: all 0.3s ease-in-out;
	   	 -o-transition: all 0.3s ease-in-out;
			transition: all 0.3s ease-in-out;
}

.client:hover {
	opacity: 1;
}

/* Small Devices, Tablets */
@media only screen and (min-width : 768px) {
	.client {
		display: inline-block;
		margin: 10px 40px 0px 0px;
	}

}


/* =Contact
-------------------------------------------------------------- */
fieldset {
	padding: 0;
	margin: 0;
	border: none;
}

fieldset input, fieldset textarea {
	border: none;
	outline: none;

	padding: 0px 0px 15px 0px;
	margin-bottom: 40px;

	width: 100%;
	background: transparent;
	border-bottom: 1px solid #979797;
	border-radius: 0px;

	font-family: "San Francisco", "Helvetica Neue", "Helvetica", Serif;
	font-size: 16px;
	color: #8a8a8a;
	line-height: 22px;

	-webkit-font-smoothing: antialiased;
	-webkit-transition: all 0.3s ease-in-out;
	   -moz-transition: all 0.3s ease-in-out;
	   	-ms-transition: all 0.3s ease-in-out;
	   	 -o-transition: all 0.3s ease-in-out;
			transition: all 0.3s ease-in-out;
}

fieldset textarea {
	min-height: 100px;
}

fieldset input:focus, fieldset textarea:focus {
	color: #212121;
	border-bottom: 2px solid #212121;
}

fieldset label {
	display: block;
	text-align: left;
	color: #212121;
	font-family: "San Francisco", "Helvetica Neue", "Helvetica", Serif;
	font-size: 12px;
	letter-spacing: 0.2em;
	padding-bottom: 15px;
}

#submit {
	margin-bottom: 0;
	text-align: left;
	display: inline-block;
	width: auto;
	position: relative;
	border: none;
	background: transparent;

	font-family: "San Francisco", "Helvetica Neue", "Helvetica", Serif;
	font-size: 12px;
	line-height: 12px;
	letter-spacing: 0.05em;
	padding-bottom: 8px;
	color: #212121;

	-webkit-font-smoothing: antialiased;
	-webkit-transition: all 0.3s ease-in-out;
	   -moz-transition: all 0.3s ease-in-out;
	   	-ms-transition: all 0.3s ease-in-out;
	   	 -o-transition: all 0.3s ease-in-out;
			transition: all 0.3s ease-in-out;
}

#submit:hover {
	text-decoration: none;
	padding-left: 8px;
	padding-right: 8px;
}

#success, #error {
	display: none;
	padding-top: 20px;
}

#success p {
	color: #00b426;
	padding: 0;
}

#error p {
	color: #e72e62;
	padding: 0;
	margin: 0;
}


label.error {
	color: #e72e62;
	font-size: 10px;
	text-transform: uppercase;
	margin-bottom: 20px;
}


/* =Footer
-------------------------------------------------------------- */
footer {
	text-align: center;
	display: block;
	width: 100%;
	/*border-top: 1px solid #d1d1d1;*/
}

.social-list a {
	display: inline-block;
	padding: 15px;
	margin: 0px;
	font-size: 18px;
	color: #212121;
	opacity: .5;

	-webkit-transition: all 0.3s ease-in-out;
	   -moz-transition: all 0.3s ease-in-out;
	   	-ms-transition: all 0.3s ease-in-out;
	   	 -o-transition: all 0.3s ease-in-out;
			transition: all 0.3s ease-in-out;
}

.social-list a:hover {
	opacity: 1;
	text-decoration: none;
}

.copyright {
	font-family: "San Francisco", Serif;
	font-size: 12px;
	color: #8a8a8a;
}

/* Medium Devices, Desktops */
@media only screen and (min-width : 992px) {
	footer {
		text-align: left;
	}

	.social-list a {
		padding: 0px 15px 15px 0px;
		margin-right: 15px;
	}
}


/* =Animations
-------------------------------------------------------------- */
@keyframes bounce {
	0%,100% {
		-webkit-transform: translate3d(0,-30px,0);
		transform: translate3d(0,-30px,0);
	}
	50% {
		-webkit-transform: translate3d(0,-4px,0);
		transform: translate3d(0,-4px,0);
	}
}


@keyframes fadeIn {
  from {
    opacity: 0;
    transform: translate3d(0, -100%, 0);
  }

  to {
    opacity: 1;
    transform: none;
  }
}

@keyframes fadeOut {
  from {
    opacity: 1;
  }

  to {
  	 transform: translate3d(0, -100%, 0);
    opacity: 0;
  }
}

.typed-cursor {
	animation: blink 3s linear infinite;
	padding-left: 10px;
}

@keyframes blink {
  0%{opacity: 1;}
	25%{opacity: 0;}
	50%{opacity: 1;}
	75%{opacity: 0;}
  100%{opacity: 1;}
}

.menu__item {
	display: flex;
	flex-direction: row;
	align-items: left;
	justify-content: left;
	flex-wrap: wrap;
	position: relative;
	margin-bottom: -40px;
}

.menu__item:hover {
	color: #ccc !important;
}

.menu__item:hover,
.menu__item:focus {
	color: #ccc !important;
}

.menu__item::before {
	content: '';
	width: 35%;
	height: 3px;
	border-radius: 3px;
	background: linear-gradient(45deg, #3e3b94, #3897f0);
	position: absolute;
	left: 0;
	bottom: 30px;
	transform-origin: 0 0;
	transform: scale3d(0,1,1);
}

.menu__item--showDeco::before {
    transition: transform 0.8s cubic-bezier(0.2,1,0.3,1);
    transform: scale3d(1,1,1);
}

.menu__item--showDeco:hover::before {
    transition: transform 0.8s cubic-bezier(0.2,1,0.3,1);
    transform: scale3d(1.2,1,1);
}

.menu__item span {
	display: block;
	position: relative;
}

/* =Responsive Styles
-------------------------------------------------------------- */
/* Landscape Phones */
@media only screen and (min-width : 480px) {

}

/* Small Devices, Tablets */
@media only screen and (min-width : 768px) {

}

/* Medium Devices, Desktops */
@media only screen and (min-width : 992px) {

}

/* Large Devices, Wide Screens */
@media only screen and (min-width : 1200px) {

}

/* Blob */

.blob {
  position: absolute;
  top: 120vh;
  left: 0;
  fill: #fafafa;
  width: 38vmax;
  z-index: -1;
  animation: move 70s ease-in-out infinite;
  transform-origin: 50% 50%;
}

@keyframes move {
  0%   { transform: scale(1)   translate(10px, -30px); }
  38%  { transform: scale(0.8, 1) translate(60vw, 30vh) rotate(160deg); }
  40%  { transform: scale(0.8, 1) translate(60vw, 30vh) rotate(160deg); }
  78%  { transform: scale(1.3) translate(0vw, 50vh) rotate(-20deg); }
  80%  { transform: scale(1.3) translate(0vw, 50vh) rotate(-20deg); }
  100% { transform: scale(1)   translate(10px, -30px); }
}

/* Landscape Phones */
@media only screen and (max-width : 480px) {
	.blob {
	  position: absolute;
		top: 120vh;
	  left: -10vw;
	  fill: ##f8f8f8;
	  width: 33vmax;
	  z-index: -1;
	  animation: move 50s ease-in-out infinite;
	  transform-origin: 50% 50%;
	}

	@keyframes move {
	  0%   { transform: scale(1)   translate(10px, -30px); }
	  38%  { transform: scale(0.8, 1) translate(10px, -30px) rotate(160deg); }
	  40%  { transform: scale(0.8, 1) translate(10px, -30px) rotate(160deg); }
	  78%  { transform: scale(1.3) translate(10px, -30px) rotate(-20deg); }
	  80%  { transform: scale(1.3) translate(10px, -30px) rotate(-20deg); }
	  100% { transform: scale(1)   translate(10px, -30px); }
	}
}

.blob2 {
  position: absolute;
  left: 5vw;
  fill: ##f8f8f8;
  width: 38vmax;
  z-index: -1;
  animation: move2 40s ease-in-out infinite;
  transform-origin: 50% 50%;
}

@keyframes move2 {
  0%   { transform: scale(1)   translate(10px, -30px); }
  38%  { transform: scale(0.8, 1) translate(10px, -30px) rotate(160deg); }
  40%  { transform: scale(0.8, 1) translate(10px, -30px) rotate(160deg); }
  78%  { transform: scale(1.3) translate(10px, -30px) rotate(-20deg); }
  80%  { transform: scale(1.3) translate(10px, -30px) rotate(-20deg); }
  100% { transform: scale(1)   translate(10px, -30px); }
}

@media only screen and (max-width : 480px) {
	.blob2 {
	  position: absolute;
	  left: 25vw;
	  fill: ##f8f8f8;
	  width: 33vmax;
	  z-index: -1;
	  animation: move2 40s ease-in-out infinite;
	  transform-origin: 50% 50%;
	}

	@keyframes move2 {
	  0%   { transform: scale(1)   translate(10px, -30px); }
	  38%  { transform: scale(0.8, 1) translate(10px, -30px) rotate(160deg); }
	  40%  { transform: scale(0.8, 1) translate(10px, -30px) rotate(160deg); }
	  78%  { transform: scale(1.3) translate(10px, -30px) rotate(-20deg); }
	  80%  { transform: scale(1.3) translate(10px, -30px) rotate(-20deg); }
	  100% { transform: scale(1)   translate(10px, -30px); }
	}
}

.blob-hero {
  position: absolute !important;
	opacity: 1 !important;
	top: -100px;
  left: -10vw;
  fill: ##f8f8f8;
  width: 30vmax;
  z-index: -1;
  animation: move3 40s ease-in-out infinite;
  transform-origin: 50% 50%;
}

@keyframes move3 {
  0%   { transform: scale(1)   translate(10px, -30px); }
  38%  { transform: scale(0.8, 1) translate(15vw, 15vh) rotate(160deg); }
  40%  { transform: scale(0.8, 1) translate(15vw, 15vh) rotate(160deg); }
  78%  { transform: scale(1.3) translate(0vw, 15vh) rotate(-20deg); }
  80%  { transform: scale(1.3) translate(0vw, 15vh) rotate(-20deg); }
  100% { transform: scale(1)   translate(10px, -30px); }
}
