
@import url("https://use.typekit.net/jyn5llx.css");

body.theatre,
body.theatre section,
body.modal-bg {
	background: #222 !important;
}
body.theatre h1 {
	color: #fff;
}
#modal-wrap {
	position: absolute;
	overflow: scroll;
	height: 90%;
	width: 90%;
	top: 5%;
	left: 5%;
	max-width: 1200px;
/*	border-radius: 20px !important;*/
	box-shadow: 10px 10px 20px rgba(0,0,0,.2);
	background: #fff;
}
#work-wrap {
	max-width: 1200px;
	margin: 0 auto;
}
#modal-wrap h1 {
	text-align: center;
	font-weight: 900;
}
a.back-arrow {
	position: fixed;
	background: #fff;
	height: 60px;
	width: 60px;
	border-radius: 50%;
	text-align: center;
	font-size: 30px;
	margin-left: 40px;
	top: 8%;
	z-index: 100;
	border: 1px solid #fff;
	transition: .3s;
}
a.back-arrow i {
	font-size: 35px;
	line-height: 60px;
	color: #645FF5;
	position: relative;	
}
a.back-arrow:hover  {
	margin-left: 35px;
	box-shadow: 5px 5px 0px  rgba(0,0,0,.1);
	border: 1px solid #777;	
}
.project-desc {
	background: #fff;
	padding: 4em 2em;
	border-radius: 20px;
	box-shadow: 5px 5px 15px rgba(0,0,0,.2);
}
#project-logo {
	max-width: 620px;
}
#vernal-logo {
	max-width: 400px;
}


@media screen and (min-width: 1300px) {
	#modal-wrap {
		left:  50%;
		margin-left: -600px;
	}
}
@media screen and (max-width: 1030px) {
	#modal-wrap {
		position: absolute;
		overflow: scroll;
		height: 100%;
		width: 100%;
		top: 0%;
		left: 0%;
		}
	a.back-arrow {
		top: 20px;
	margin-left: 20px;	
		}
		.medium-hide {
			display: none;
		}
		
}
#video-background {
/*  making the video fullscreen  */
  position: fixed;
  right: 0; 
  bottom: 0;
  min-width: 100%; 
  min-height: 100%;
  width: auto; 
  height: auto;
  z-index: -100;
}


/******************************************* 
	global
*******************************************/	

#site-wrap {
	margin: 0 auto;
/*	max-width: 1300px;*/
/*	background: #fff;*/
	box-shadow: 0px 3px 40px rgba(58,65,77,.1);
}

body {
	font-family: open-sans, sans-serif;	
	font-size: 16px;
	background: #F4F5F8;
}
p {
	font-size: 1em;
	line-height: 1.8em;
/*	max-width: 500px;*/
	color: #46595e;
	margin: 20px 0;
}
ul {
	color: #46595e;
}

p.sub-par {
	font-size: 1.25em;
	font-weight: normal;
/*	max-width: 650px;*/
	margin-bottom: 3em;
}
p.caption {
	font-size: .85em;
	opacity: .7;
	margin: 0;
}
a, a:hover {
	color: #645FF5;
}
.right {
	float: right;
}
.left {
	float: left;
}
.clear {
	clear: both;
}

h1, h2, h3, #section-title, #home-banner ul {
	font-family: din-condensed, sans-serif;
	font-weight: 400;
	font-style: normal;
	letter-spacing: -1px;
	color: #111;
	text-transform: uppercase;
}
h1 {
	font-size: 6em;
	font-weight: 600;
	line-height: 1em;
/*	text-shadow: 10px 10px 0px #eee;*/
	margin-bottom: 1.5rem;
}
h1.site-title {
	font-size: 10rem;
}
h2 {
	font-size: 4.375rem;
}
h3 {
	font-size: 3.125rem;
	line-height: 1em;
	letter-spacing: -.5px;
}
h4 {
	font-size: 1.4rem;
	margin: 15px 0;
	letter-spacing: 0;
	text-transform: none;
}
a h4 {
	color: #645FF5;
} 
h4.vertical {
	-ms-transform: rotate(-90deg); /* IE 9 */
	    -webkit-transform: rotate(-90deg); /* Chrome, Safari, Opera */
	    transform: rotate(-90deg);
	    position: absolute;
	    left: -70px;
	    top: 30px;
	    opacity: .95;
	    text-right: left;
	    z-index: 10;	  
}
blockquote {
	background: #645FF5;
	width: 100%;
	color: rgba(250,250,250,.9);
	padding: 2.5rem 3rem;
	font-size: 3rem;
	font-weight: 300;
	line-height: 1.15em;
	display: block;
	clear: both;
	font-family: 'Neuton', Georgia;
	border: 0;
}
/*blockquote span {
	color: rgba(250,250,250,.8);
}*/

blockquote cite {
	font-size: 1.4rem;
	margin-top: 1rem;
	color: #fff;
}

hr {
	border: none;
	height: 1px;
	background: #ddd;
	margin: 40px auto 40px;
	display: block;
}
hr.space {
	background: transparent;
	height: 100px;
	margin: 0;
}

.center-text {
	text-align: center;
}
ul.bullets {
	list-style: none;
	margin: 0 0 40px 0;
	font-family: 'Neuton', Georgia;
	font-weight: 300;
	font-size: 1.375rem;
	opacity: .7;
}

ul.bullets li span{
	color: #645FF5;
	font-size: 2em;
	line-height: .95em;
	position: relative;
	top: 2px;
	margin-right: 10px;
}

.pink {
	color: #645FF5;
}
.button {
	border-radius: 6px;
	padding: 20px 40px;
}
.button.button-pink {
	background: #645FF5;
}
.button.button-trans {
	background: transparent;
	color: #645FF5;
}
.left-border {
	border-left: 4px solid rgba(99, 103, 120, 0.27);;
	padding-left: 20px;
	margin-bottom: 50px;
}
.button-full-width {
	width: 100%;
	margin: 0 0;
	display: block;
	clear: both;
	top: 30px;
	padding: 30px 0 25px;
	font-family: din-condensed, sans-serif;
	text-transform: uppercase;
	font-size: 1.75rem;
	background: #535C69;
	color: rgba(256,256,256,.6);
}
.button-full-width:hover {
	background: #645FF5;
}
img.img-shadow {
	box-shadow: 13px 15px 24px rgba(0,0,0,.3);
}
#footer {
	padding-top: 0;
	color: #8F9B9D;
}
#footer .row {
	border-top: 1px solid #ccc;
	padding: 60px 0 100px;
}
#footer a {
	margin-left: 10px;
}

#career-page p {
	margin-top: 0;
}
#career-page cite {
	color: #8F9B9D;
	font-family: 'Neuton', Georgia;
	font-style: normal;
	font-size: 1.2rem;
	margin-bottom: 20px;
	display: block;
}
#career-page h1 {
	margin-bottom: 0;
}
#work-page #social-proof {
	margin: 30px 0 40px;
	float: left;
}
.show-small {
	display: none;
}

@media (max-width: 740px) {
	
	#career-page p {
		margin-top: 0;
	}	
	.hide-small {
		display: none;
	}
	.show-small {
		display: block;
	}
	html {
		font-size:  95%;
	}
	blockquote {
		font-size: 2.25rem
	}
}

/******************************************* 
	Nav
*******************************************/

a#logo-box {
	height: 75px;
	display: block;
	font-family: din-condensed, sans-serif;
	font-weight: bold;
	font-size: 36px;
	line-height: 80px;
	color: #757A82;
	text-transform: uppercase;
	float: left;
}
a#logo-box span {
	color: #fff;
	font-size: 30px;
	position: relative;
	top: -4px;
}
#nav-wrap.nav-light a#logo-box span,
#nav-wrap.fixed-nav  a#logo-box span {
	color: #645FF5;
}
#nav-wrap {
	width: 100%;
	top: 0px;
	padding: 20px 5% 0;
	z-index: 1000;
	margin: 0 auto;
	position: absolute;	
	transition: .3s;
}
#nav-wrap.fixed-nav {
	position: fixed;
	width: 100%;
	background: #fff;
	padding: 0 5%;
	top: 0;
}
nav#site-nav {
	display: block;
	max-width: 1200px;
	z-index: 1000;
	margin: 0 auto !important;
}

nav ul {
	list-style: none;
	float: right;
	margin: 0;
}
nav ul li {
	display: inline-block;
	line-height: 75px;
	margin-left: 25px;
	text-transform: uppercase;
}
nav ul li a {
	color: #fff;
	opacity: .7;
}
nav ul li a.active { 
	border-bottom: 2px solid #aaa;
}
#nav-wrap.nav-light a,
#nav-wrap.fixed-nav a{
	color: #777;
}
#mobile-menu {
	position: absolute;
	right: 30px;
	margin-top: 18px;
	cursor: pointer;
	display: none;
}
#mobile-menu i {
	font-size: 2.2rem;
	color: #fff;
}
#nav-wrap.fixed-nav #mobile-menu i,
#nav-wrap.nav-light #mobile-menu i {
	color: #46595e;
}
nav#site-nav ul li.menu-close-btn {
	display: none;
}
@media (max-width: 740px) {
	#mobile-menu,
	nav#site-nav ul li.menu-close-btn
	 {
		display: block;
	}
	.show-mobile-nav {
		display: block !important;
	}
	nav#site-nav ul {
		position: fixed;
		left: 0;
		top: 0;
		background: rgba(0, 0, 0, 0.90);
		padding: 10% 0 0;
		width: 100%;
		overflow: auto;
		height: 100%;
		display: none;
		
	}
	nav#site-nav ul li {
		display: block;
		text-align: center;
		width: 100%;
		margin: 0;
		font-size: 2.5rem;
		line-height: 2.5em;
		font-weight: lighter;
		text-transform: none;
	}
	nav#site-nav ul li a {
		color: #fff !important;
		font-family: din-condensed, sans-serif;
		font-weight: 400;
		font-style: normal;
		font-size: 1.6em;
		opacity: 1;
	}
	nav#site-nav ul li.menu-close-btn {
		position: fixed;
		width: 50px !important;
		height: 50px;
		right: 30px;
		top: 15px;
		color: #fff;
		cursor: pointer;
	}
	.menu-close-btn i {
		font-size: 40px;
	}
}

/******************************************* 
	home banner
*******************************************/	
.banner {
	padding: 14em 0 7em;
	
/*	height: 70%;
	min-height: 800px;
	max-height: 900px;*/
}
#home-page .sub-par {
	max-width: 700px;
}

#social-proof {
	text-align: center;
}
#social-proof img {
	width: 50%;
/*	border: 1px dashed #ddd;*/
	margin: .5rem auto;
}
#banner-career {
	background: url(../img/logos/logo-bg.png) no-repeat right 300px;
}
ul.services {
	list-style: none;
	padding: 0;
	margin: 0;
}
ul.services li {
	margin-bottom: 3em;
	border-left: 4px solid rgba(250,250,250,.2);
	padding-left: 20px;
	max-width: 300px;
	transition: .3s;

}
ul.services li:hover {
	border-left-color: #645FF5;
		padding-left: 25px;
}
@media (max-width: 740px) {
	ul.services {
		margin-top: 60px !important;
		display: block;
	}
	ul.services li {
		max-width: 600px;
	}
	h1.site-title {
		font-size: 6rem;
	}
}

/******************************************* 
	Gallery
*******************************************/	

.row-box {
	z-index: 100;
	width: 94%;
	margin: 0 auto 2px;
	padding: 5rem 3%;
	top: 0;
	left: 0;
	background: #fff;
	position: relative;
	box-shadow: 10px 10px 25px rgba(0,0,0,.1);
}
#projects-gallery h2 {
	text-align: center;
	line-height: 3em;
}
#project-thumbs {
	clear: both;
	float: left;
	display: block;
	margin: 0 !important;
	
}

#project-thumbs li {
	display: block;
	width: calc(50% - 10px);;
	margin-bottom: 20px;
	position: relative;
	box-shadow: 10px 10px 25px rgba(0,0,0,.1);
}
#projects-gallery li a {
	display: block;
	background: #fff;
/*	text-align: center;
	border-radius: 10px !important;*/
	position: relative;
	transition: .3s;
	top: 0px;
	overflow: hidden;
	text-align: center;
}
#projects-gallery li a img {
	opacity: .95;
}
#projects-gallery li a span {
	position: absolute;
	display: block;
	width: 100%;
	line-height: 350px;
	font-family: din-condensed, sans-serif;
	font-weight: 400;
	text-transform:  uppercase;
	font-size: 4rem;
	color: #fff;
	opacity: 0;
	background: rgba(41, 50, 64, 0.94);
	height: 100%;
	transition: .3s;
}
#resources #projects-gallery li a span {
	background: rgba(41, 50, 64, 0.6);
}
#resources #project-thumbs i {
	position: absolute;
	width: 100%;
	height: 30px;
	top: 80px;
	font-size: 50px;
	color: #fff;
	z-index: 1;
	display: none;
}
#projects-gallery li a:hover {
	box-shadow: 15px 15px 20px rgba(0,0,0,.2);
}
#projects-gallery li a:hover span {
	display: block;
	opacity: 1;
}
#resources #project-thumbs li:hover i {
	display: block;
	z-index: ;
}

#projects-gallery li a:hover img {
	opacity: 1;
}
.close-x {
	position: fixed;
	top: 30px;
	right: 30px;
	font-size: 30px;
	color: #fff;
	display: none;
}
@media only screen and (max-width: 720px) {
	#project-thumbs li {
			width: 90%;
			margin: 0 auto 20px;
			float: none !important;
	}
}



/******************************************* 
	project sections
*******************************************/	

section {
	padding: 7em 0 ;
	background: #fff;
}
section.dark {
	background: #111;
}
section.video {
	background: #111;
	padding-bottom: 11em;
}
section.video h1.site-title,
section.video p {
	color: #fff;
}
section.light-gray, .light-gray {
	background: #f4f5f7;
}
section.small-padding {
	padding: 4em 0;
}

.row.overlap {
	margin-top: -190px;
	padding-top: 0px;
	padding-bottom: 0px;
	position: relative;
}
.row.overlap a img {
	border: none;
}
.project-details p, .project-details h2, .project-details h3 {
	width: 90%;
	max-width: 800px;
	margin-left: auto;
	margin-right: auto;
	font-weight: 300;
}
.project-details h2 {
	font-size: 2.6em;
	font-size: 3.2em;	
	display: none;
		
}
.project-details h3,
h3.subheader {
	font-weight: 300;
	color: #444;
}
.project-details {
	text-align: center;
}
.project-details .row {
	padding: 0;
	margin: 0;
	max-width: 100%;
}
.project-details .image-gallery {
	list-style: none;
	margin: 0;
	padding: 0;
}
.project-details .image-gallery li {
	min-height: 100px;
	width: 90%;
	max-width: 960px;
	margin: 40px auto;
	display: block;
}
@media screen and (min-width: 1200px) {
	.project-details .image-gallery li {
		width: 100%;
	}
}
.project-details .image-gallery li.loaded {
	background: none;
	min-height: 0px;
}
.project-details .image-gallery .student-app-section {
	margin-bottom: 0;
}
.project-details .image-gallery .student-app-section li:last-child {
	margin-bottom: 0;
}
.project-details .image-gallery .teacher-app-section {
	padding-top: 0;
}
.project-details .image-gallery .teacher-app-section h3 {
	margin-top: 0;
}
.project-details .image-gallery .teacher-app-section p {
	margin: 0 auto 1.5em;
}
.project-details img {
/*	width: 100%;*/
/*	opacity: 1;*/
/*	opacity: 0;*/
    transition: ease-in;
/*display: none;*/
max-width: 100%;
}
.project-details img.screen {
	box-shadow:0px 2px 8px 0px rgba(0, 0, 0, 0.15);
	border: 1px solid #ccc;
}
.project-details.dark h2, .project-details.dark p {
	color: #fff;
}
.project-details.dark img.screen {
	border: none;
}

/******************************************* 
	section banner 
*******************************************/	

.project-banner {
	background: #ccc;
	min-height: 600px;
	margin: 5em 0;
	text-align: center;
	/*display: none;*/
}
.burkson-banner-1 {
	background: #00CEA6 url(../img/burkson/burkson-banner-1.jpg) no-repeat;
	background-size: cover;	
}
.classhero-teacher-banner {
	background: transparent;
	min-height: 0;
	margin: 40px 0;
	padding: 0;
}
.classhero-teacher-banner img {
	display: block;
	width: 100%;
	height: auto;
	max-width: none;
}
.setmore-banner {
	background: #00b4a2 url(../img/setmore/setmore-banner-2.jpg) no-repeat;
	background-size: cover;	
}
.btfc-banner {
	background: url(../img/btfc/btfc-banner.jpg) no-repeat;
	background-size: cover;	
}
.hornets-banner {
	background: #f7c56a url(../img/hornets/hornets-banner.jpg) no-repeat;
	background-size: cover;	
}
.vernal-banner {
	background: #f7c56a url(../img/vernal/home-banner.jpg) no-repeat;
	background-size: cover;	
}
.fisker-banner {
	background: #888888 url(../img/fisker/fisker-banner-2.jpg) no-repeat;
	background-size: cover;	
	background-position: bottom center;
}
.xence-banner-3 {
	background: #222 url(../img/xence/xence-banner-3.jpg) no-repeat;
	background-size: cover;	
	background-position: bottom center;
}
.xence-banner-2 {
	background: #222 url(../img/xence/xence-banner-2.jpg) no-repeat;
	background-size: cover;	
	background-position: bottom center;
}
.lita-banner {
	background: #054E42 url(../img/lita/lita-banner-1.jpg) no-repeat;
	background-size: cover;	
	background-position: bottom center;
}
.porsche-banner {
	background: #768188 url(../img/porsche/porsche-banner.jpg) no-repeat;
	background-size: cover;	
	background-position: bottom center;
}
.pm-banner {
	background: url(../img/pm/pm-banner-2.jpg) no-repeat;
	background-size: cover;	
	background-position: center center;
}
.btfc-banner {
	background: #7d5237 url(../img/btfc/btfc-banner.jpg) no-repeat;
	background-size: cover;	
	background-position: center center;
}
.panera-banner {
	background: #b95541 url(../img/panera/panera-banner.jpg) no-repeat;
	background-size: cover;	
	background-position: center center;
}
.seerial-banner {
	background: #b95541 url(../img/seerial/seerial-banner.jpg) no-repeat;
	background-size: cover;	
	background-position: center center;
}
.yoco-banner {
	background: #029bcc url(../img/yoco/yoco-banner.jpg) no-repeat;
	background-size: cover;	
	background-position: center center;
}
.ac-banner {
	background: #029bcc url(../img/ac/ac-banner.jpg) no-repeat;
	background-size: cover;	
	background-position: center center;
}
.lightspeed-banner {
	background: #EAF1F2 url(../img/lightspeed/lightspeed-banner.jpg) no-repeat;
	background-size: cover;	
	background-position: center center;
}
.lightspeed-banner-2 {
	background: #EAF1F2 url(../img/lightspeed/lightspeed-banner-3.png) no-repeat;
	background-size: cover;	
	background-position: center center;
}
.lightspeed-banner {
	background: #EAF1F2 url(../img/lightspeed/lightspeed-banner.jpg) no-repeat;
	background-size: cover;	
	background-position: center center;
}
#setmore {
	background: #fff;
}
#fisker {
	background: #222;
}
#hornets {
	background: #fff;
}
#hornets img {
	box-shadow: none;
	border: none;
	width: 90%;
}
#vernal {
	background: #fff;
}
#panera {
	background: #f8f2e2;
}
#porsche {
	background: #fff;
}
#pm {
	background: #fff;
}




/******************************************* 
	Timeline
*******************************************/

#timeline {
	padding-left: 40px;
	border-left: 3px solid #BFCAD3 !important;
}
#timeline h4, #timeline h2 {
	margin: 0;
}
#timeline h4 {
	line-height: 1rem;
	margin-bottom: -3px;
}
.time-period {
	padding: 0rem 0 12rem;
	position: relative;
}
.time-period:first-child {
	padding-top: 0;
}
.time-period img {
	position: absolute;
	left: 110%;
	height: 70%;
	top: 0px;
}
.marker {
	position: absolute;
	height: 17px;
	width: 17px;
	border-radius: 50%;
	background: #BFCAD3;
	left: -65px;
	margin-top: -3px;
}


/******************************************* 
	animations
*******************************************/

.animate-in {
    -webkit-animation: fadeIn .5s ease-in;
    animation: fadeIn .5s ease-in;
}
.animate-out {
    -webkit-transition: opacity .5s;
    transition: opacity .5s;
    opacity: 0;
}
@-webkit-keyframes fadeIn {
    from { opacity: 0; }
    to { opacity: 1; }
}
@keyframes fadeIn {
    from { opacity: 0; }
    to { opacity: 1; }
}
