font-family: 'Lato', sans-serif;
font-family: 'Fira Sans', sans-serif;
font-family: 'Antic Slab', serif;
font-family: 'Mate', serif;
font-family: 'Merriweather', serif;
font-family: 'Oswald', sans-serif;

#deadselector {
}

/** Fonts **/
p, li, h5, .attribute, .quote, button {
	font-size: 2.25vw;
}

#template h3 {
	font-size: 6.0vw;
}

h1 {
	font-size: 4.0vw;
}

h2 {
	font-size: 3.5vw;
}

h3, #template h4 {
	font-size: 3.0vw;
}

h4 {
	font-size: 2.5vw;
}

.detail, .caption {
	font-size: 1.75vw;
	
}


@media (min-width: 1000px) and (max-resolution: 200dpi) {
  p, li, h5, .attribute, .quote, button {
     font-size: 16px;
  }
  #template h3 {
	font-size: 52px;  
  }
  h1 {
	font-size: 38px;
  }

  h2 {
	font-size: 30px;
  }

  h3, #template h4 {
	font-size: 26px;
  }
  h4 {
	font-size: 22px;  
  }
  .caption, .detail {
	  font-size: 14px;
  }
}


@media (max-width: 600px) {
  p, li, h5, .attribute, .quote, button {
     font-size: 10px;
  }
  #template h3 {
	font-size: 28px;  
  }
  h1 {
	font-size: 20px;
  }

  h2 {
	font-size: 16px;
  }

  h3, #template h4 {
	font-size: 14px;
  }
  h4 {
	font-size: 12px;
  }
  .caption, .detail {
	  font-size: 10px;
  }
  
}

@media (min-width: 1000px) and (min-resolution: 200dpi) {
	h1 {
		font-size: 5vw; 
	}
	.title {
		display: block !important; 
		clear: both;
	}  
}


/*** Loading ****/

#loadingPopup {
	position: absolute;
	background-color: #2f363d; 
	color: #FFFFFF;  
	top: 0;
	left: 0;
	z-index: 1000000;
	width: 2000px;
	height: 1000px;
}

#loadingPopup .content {
  margin-left: 3em;
  margin-top: -3em;
}

#loadingPoup p {
  font-family: 'Antic Slab' !important;
}

.btn-alt:hover {
	color: #E1EFFF; 
	border: 0.1em solid #E1EFFF;
}

.btn-alt,
.btn-alt:active,
.btn-alt:link,
.btn-alt:visited {
	color: #5191EF; 
	background-color: rgba(0,0,0,0);
	border: 0.1em solid #5191EF;
	-webkit-border-radius: 16px;
	-moz-border-radius: 16px;
	border-radius: 16px;
	width: 80%;
	margin: 1em auto;
	position: relative;
}

/*#hero {
	transform: rotate(20deg);
	transform-origin: bottom right;
	position: absolute;
	left: -45%;
	top: -10em;
	z-index: 1 !important;
	height: 200%;
	width: 70em;
	background-color: *59595F; 
	-webkit-transition: transform ease 1s;
	-moz-transition: transform ease 1s;
	transition: transform ease 1s;
	outline: 1px solid transparent;
}*/

#hero {
	/*transform: scaleX(100);*/
	transform-origin: bottom right;
	position: absolute;
	z-index: 1 !important;
	left: 0 !important;
	height: 100%;
	width: 25%;
	background-color: #59595F; 
	-webkit-transition: transform ease 1s;
	-moz-transition: transform ease 1s;
	transition: transform ease 1s;
}

.row {
	padding-left: 2em;	
	padding-right: 2em;
}

.scroll-nav .collapse {
	background-color: #27304C;
}

.content .row:nth-child(2) {
	background-color: #FFFFFF;	
}

#snippet {
	float: right;
	display: block;
	position: absolute;
	top: 0em;
	width: 40%;
	margin: 0em 5em 0em 50%;
	z-index: 1000;
}

#snippet h4 {
	border-top: none;
}

#snippet p {
	line-height: 200%;
}

#heroImage img {
    height: auto;
	width: 35%;
	z-index: 2;
	position: absolute;
	top: 15%;
	left: 5%;
}

body {
  font-family:'Lato';
  width: 100%
}

h1, h2, h3, h4, h5 {
  font-family: 'Oswald';
  text-transform: uppercase;
  margin: 0em;
  clear: both;
}

.page {
  width: 100%;
  min-width: 100%;
  padding-left: 0em;
}

.page:not(#page1) { /* Page 1 has it's own unique padding, but other pages can follow or override this pattern */
  padding-top: 8em;
  padding-left: 1em;
}

/* Page 1 */

#page1 {
  background: #6B85D4;
  color: #FFFFFF; 
  display: flex;
  flex-direction: column;
  justify-content: space-between; 
}

h1 {
  align-items: center;
  display: flex;
}

.headline {
  margin-left: auto;
  margin-right: auto;
}

.branding {
  font-family: 'Oswald' !important;
  padding-left: 0.5em;
  padding-right: 0.5em;
  padding-top: 0.5em;
  padding-bottom: 0.5em;
  border: 1px #FFFFFF solid;
  margin: 0.5em !important;
  display: inline-block;
}

.title {
  display: inline-block; 
}

#page1 .row:first-of-type { /* This centers the heading for the website */
  overflow: hidden;
  position: absolute;
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 !important;
}

#page1 .row:nth-child(2) { /* This pushes the menu to the bottom of the page */
  overflow: hidden;
  position: absolute;
  bottom: 0em;
  width: 100%;
  margin-left: 1em;
  margin-right: 1em;
  display: block;
}

/* Page 1.25 (added later) */
#page1_25 {
  background-color: #dfdff1;  
  position: relative; 
  background-image: url("../images/aboutme2.png");
  background-repeat: no-repeat;
  background-position: right bottom;  
}

#page1_25 #aboutme {
   margin: 1em;
   margin-bottom: 2em;
   padding: 2em;
   color: #454545; 
   border-radius: 10px;
   background-color: rgba(255,255,255,0.6);
}

#page1_25 #aboutme h5 {
  font-style: italic;
  margin-top: 0.5em;
}

#page1_25 #aboutme p {
	padding: 0.5em 0em;
}

/* Page 1.5 (added later) */

#page1_5 {
  background-color: #4f5b66; 
  color: #FFFFFF;  
  position: relative;  
}

#page1_5 .sectionBlock {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);	
}

#page1_5 .block {
	padding: 2em 8em;
}

#page1_5 #blogpost {
	padding-bottom: 5em !important;	
	float: right;
}

#page1_5 #blogpost img {
	margin-top: 5em !important;	
	width: 100%;
	height: auto;
}

/* Page 2 */

#page2 {
  background-color: #F8FBFF; 
  color: #353C35;   
}

#page2 .col-xs-12 .col-xs-12{
	padding: 3em 1em;
	max-width: 30em;	
}

.statement {
	margin-top: 1em;
}

#page1_25 h2,
#page2 h2,
#page3 h2,
#page4 h2, 
#page1_25 h3,
#page2 h3,
#page3 h3,
#page4 h3,
#page1_25 h4,
#page2 h4,
#page3 h4,
#page4 h4 {
	color: #6B85D4;
}



/* Break */

#break {
	height: 20em;	
	width: 100%;
	min-width: 100%;
    background-image: url(../images/bulbs.png);
    background-position: 0 0;
    background-size: cover;
    position: relative;
}

#break2 {
	min-height: 10em;	
	width: 100%;
	min-width: 100%;
    background-image: url(../images/interface.png);
    background-position: 0 -5em;
    background-size: cover;
    position: relative;
	color: #FFFFFF;
	height: 10em;
}

#break2 > div {
	margin: 0 auto;
	padding: 5em;
	position: relative;
	top: 50%;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
}

#break2 .attribute {
	text-align: right;	
}

#break2 .quotes {
	position: relative;
	top: 50%;
 	transform: translateY(-50%);
}



/*font-family: 'Lato', sans-serif;
font-family: 'Fira Sans', sans-serif;
font-family: 'Antic Slab', serif;
font-family: 'Mate', serif;
font-family: 'Merriweather', serif;
font-family: 'Oswald', sans-serif;*/

/* Page 3 & 4 */

#page3 {
  background-color: #E1EFFF;  
  color: #353C35;  
}

#page3 .container, 
#page4 .container {
	width: 100%;
	margin-bottom: 8em;	
}

#page3 li, 
#page4 li {
	/*float: left;*/
	display: block;
	/*width: 25%;
	padding: 2em;*/
	margin-top: 2em;
	text-align: center;
}

#page3 img, 
#page4 img {
  min-width: 8em;
  min-height: 8em;
  width: 12em;
  height: 12em;	
  display: block;
  margin: 0 auto 0.75em;
}


#page3 .title,
#page4 .title {
  font-weight:700;
  padding: 0.2em 0;
  margin-left: -0.5em;
}

/* Page 4 */

#page4 {
  background-color: #DBE5FF;  
  color: #353C35;  
}



/* Loader */

#loader {
  display: none;
  z-index: 1000;
  position: fixed;
  top: 0;
  left: 0;
  background-color: #FFFFFF;
  padding: 0 !important;
  width: 100%;
  height: 100%;  
}

#loader .contain {
  display: table-row; 
  background-color: #FFFFFF;
}

#template .container {
  width: 95% !important;
  position: absolute;
  top: 0em;
  right: 0em;
}

#template .back-button {
  background-color: rgba(95, 100, 90, 0.4) !important;  
  color: #FFFFFF !important; 
  display: table-cell;  
  vertical-align: middle;
  min-height: 100%;
  padding: 0 1.5em;
  cursor: hand;
  cursor: pointer;
  position: fixed;
  top: 0;
  z-index: 1000000;
 -webkit-box-shadow: 8px 8px 16px 0px rgba(51,51,51,0.3);
  -moz-box-shadow: 8px 8px 16px 0px rgba(51,51,51,0.3);
  box-shadow: 8px 8px 16px 0px rgba(51,51,51,0.3); 
}

#template .back-button i,
#template .back-button a,
#template .back-button a:hover,
#template .back-button a:visited,
#template .back-button a:link,
#template .back-button a:active {
  color: #FFFFFF !important;
}

#template .back-button nav {
  z-index: 1000000 !important; 
}

#template .content,
#template .showContent { 
  vertical-align: top;
  height: 100% !important;
  padding-top: 2em;  
  padding-bottom: 2em;
  padding-left: 0em;
  padding-right: 2em;
}

#template h4 {
  margin-top: 2em; 
  padding-top: 0.5em;
  border-top: 1px #F1F1F1 solid;
}

#template h5 {
  margin-top: 0.5em;
}

#template .content .col-lg-8 {
  padding-left: 3.5em;
}

#template .content .col-lg-4 {
  padding-right: 4em;
}

#template #back-icon {
  text-align: center;
  color: #337ab7; 
}

#template img {
  min-width: 4em;
  min-height: 4em;
}

#template h3 {
  background-color: #F5FAFF;
  font-weight: bold;
  min-height: 120px;
  padding-left: 2.5em;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

#template h3.no-icon{
	padding-left: 2rem !important;
}

#template h3 img {
	position: absolute;
	top: -0.5em;
	left: -0.5em;
}

#template .logo {
	width: 3em;
	height: 3em;
  max-width: 3em;
  max-height: 3em;
  min-height: 0em !important;
  min-width: 0em !important;
}

#template .caption {
  font-family: "Fira Sans";
  text-align: center;
  padding-top: 0.3em;
  padding-bottom: 1.5em; 
}

#template .docs {
  list-style-type: none; 
  padding-left: 0.5em;
}

#template .tools img {
	width: 25%;
	height: auto;
	margin-right: 1.0em;
	margin-bottom: 0.5em;	
}

#template .photos {
	display: block;
	clear: both;
}

#template p {
	display: block;
	clear: both;
}

#template .photo {
	display: inline;
	width: 30%;
	margin-right: 3%;
	float: left;	
}

#template .photo img {
	width: 100%;
	margin-right: 1.0em;
	margin-bottom: 0.5em;
}

#template .photo .caption {
	display: block;
}

#template li {
	margin-bottom: 0.5em;	
}

#template .pub li {
	list-style: none;
	margin-top: 1em !important;	
}

#template li div {
	margin-left: 1em;
}

#template ul {
	padding-left: 0.6em;	
}

#template ul ul {
	padding-left: 1.2em;	
}

#template h6 {
	margin-top: 2em;	
}


#template #process {
	display: none;
}

#template .setup {
	padding-top: 2em;
	text-decoration: italic;
}

#template .detail {
	margin-bottom: 0;
}

#template .photos {
	padding-top: 1em;
}

#template #view_process button {
	width: 10em;
	cursor: pointer;
}

#template #process {
	margin: 1.5em 3em;
	padding: 1.5em 3em;
	margin-right: 6em;
	background: #f1f1f1;
}

#template h5 {
	margin-top: 2em;
	margin-bottom: 0.5em;
}

#hero2 {
	height: 100%;	
	max-width: 35%;
    position: absolute;
	overflow: hidden;
}

/* Page 5 */

#page5 {
  background-color: #CC5C3F;  
  color: #353C35;  
  display: none;
}

/* Page 6 */

#page6 {
  background-color: #FFE3DE;  
  color: #353C35;  
  display: none;
}

/* Page 7 */

#page7 {
  background-color: #454550;
  background-image: url("../images/skyline_transparent.png");
  background-repeat: repeat-x;
  background-position: bottom;
  color: #FFFFFF; 
  position: relative;
}

#page7 .contact-info {
	padding-top: 5em !important;
	padding-right: 2em;	
}

#page7 h3 {
	padding-bottom: 1em;	
}

#page7 .article {
	height: 20em;
	text-overflow: ellipsis;
	overflow: hidden;	
}

#page7 .article {
	padding-bottom: 0.5em;	
}

#page7 a,
#page7 a:link,
#page7 a:active,
#page7 a:visited {
	color: #FFFFFF;	
}

#page7 a:hover,
#page7 .btn-alt:hover {
	color: #CCCCCC;
	border-color: #CCCCCC;
}

#page7 .icon {
	font-size: 4rem;
}

#page7 .more {
	width: 100%;	
}

#page7 .btn-alt {
	margin-left: auto;
	margin-right: auto;
	display: block;
	color: #FFFFFF;
	border-color: #FFFFFF;
}

#page7 ul {
	padding-left: 0;
	margin-left: 0;
	list-style: none;
	width: 100%;
}

#page7 .links {
	margin-bottom: 2em;
}

#page7 li {
	float: left;
	display: inline;
	margin: 0.2em;
	width: 25%;
	min-width: 150px;
	text-align: center;
	height: 10em;
	border: 2px solid #FFFFFF;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
}

#page7 .valign {
	position: relative;
    top: 50%;
    transform: translateY(-50%);
}

#page7 li:hover {
	background-color: #ffffff;
	color: #454550 !important; 
}

#page7 .caption {
	padding-top: 1em;
	clear: both;
}



/* Nav */

.navbar-default {
  border: none;
  border-radius: 0;
  background-color: #6B85D4;
  width: 100%;
}

.navbar-default .navbar-brand {
  color: #FFFFFF;
}

.navbar a {
  color: #FFFFFF !important;
}

.navbar a:hover {
  color: #6B85D4 !important;
  background-color: #FFFFFF !important;
  -webkit-border-radius: 0.3em; 
  -moz-border-radius: 0.3em;
  border-radius: 0.3em;
}

.navbar-brand {
  padding-left: 0.5em;
  padding-right: 0.5em;
  padding-top: 0.5em;
  padding-bottom: 0.5em;
  border: 1px #FFFFFF solid;
  margin: 0.5em !important;
  max-height: 2em;
  font-family: 'Oswald' !important;
}

.scroll-nav {
  background-color: #27304C;
  position: fixed;
  width: 100%;
  display: none;
  z-index: 100;
}

.scroll-contain {
  width: 100%;
}

.scroll-nav .navbar-nav {
  padding-top: 0.5em;
}

.scroll-nav .btn-alt {
  margin-top: 1em; 
}

.icon-bar {
  background-color: #FFFFFF !important; 
}

.navbar-default .navbar-toggle:focus, .navbar-default .navbar-toggle:hover {
  background-color: #27304C;
}

.scroll-nav .navbar-toggle:focus, .scroll-nav .navbar-toggle:hover {
  background-color: #6B85D4;
}

.in:parent {
  border: 1px solid #FFFFFF; 
}

/* Media Queries */
@media (max-width: 1766px) {
 .headline {
    width: 40% !important;
  }   
  #page7 li {
	padding: 2.5em 1.5em;  
  } 
}

@media (max-width: 1475px) {
 .headline {
    width: 50% !important;
  } 
}

@media (max-width: 1475px) {
 .toolong {
    display: none;
  } 
}

@media (max-width: 1199px) {
 .headline {
    width: 60% !important;
  }    
}

@media (max-width: 999px) {
 .headline {
    width: 70% !important;
  }    
}

@media (max-width: 850px) {
 .headline {
    width: 75% !important;
  }    
}

@media (max-width: 799px) {
 .headline {
    width: 80% !important;
  } 
}

@media (max-width: 699px) {
  .headline .branding {
    display: block !important;
    clear: both;
    width: 3em;
    margin-left: auto !important;
    margin-right: auto !important;
  }
  
  .title {
    display: block !important; 
    clear: both;
  }  
  
  h1 {
    display: block;
    text-align: center;
  }
}

@media (max-width: 525px) {

	#break2 > div {
		padding: 2.5em;
	}

	#template .content .col-lg-8 {
	  padding-left: 0em !important;
	}	
}

@media (max-width: 1500px) {
	#hero {
		left: -55%;	
	}
}

@media (max-width: 1375px) {
	#hero {
		left: -75%;	
	}
}

@media (max-width: 1150px) {
	#hero {
		left: -90%;	
	}
}

@media (max-width: 1025px) {
	#hero {
		left: -110%;	
	}
}

@media (max-width: 900px) {
	#hero {
		left: -125%;	
	}
}

@media (max-width: 825px) {
	#hero {
		left: -135%;	
	}
}

@media (max-width: 779px) {
	#snippet{
		margin: 20% 10% 5em;
		width: 80%;
	}
	#hero {
		top: -62.5em;
		left: -45em;
		height: 80em;
		width: 30em;	
		transform: rotate(80deg);
	}
	#heroImage img {
		top: 5em;
		width: 30%;
  		left: 50%;
  		transform: translate(-50%, -1em);
	}
	#larger {
		width: 50% !important;	
	}
	#smaller {
		height: 20% !important;
		width: auto !important;
	}
}

@media (max-width: 767px ) {
	#hero2 {
		height: 15em;	
		width: 100%;
		max-width: 100%;
    	position: absolute;
		overflow: hidden;
	}
	.showContent {
		margin-top: 8em;
		z-index: 6;	
	}
	.textContent {
		z-index: 4;	
	}
	#template .tools img {
		width: 4em;	
	}
	
	#page1_5 .block {
		padding: 2em 1em;
	}

}

@media (min-width: 767px) {
	.visible-xs-only {
		display: none;	
	}
}

@media (max-width: 650px) {
	#snippet{
		margin: 30% 10% 5em;
		width: 80%;
	}
}

@media (max-width: 600px) {
	#page7 ul {
		padding-left: -10%;
		transform: translateX(10%);
	}
	#heroImage img {
		top: 5em;
		width: 40%;
  		left: 50%;
  		transform: translate(-50%, -1em);
	}
}

@media (max-width: 550px) {
	#page3 .row .row, page4 .row .row {
		padding-left: 0px;
		padding-right: 0px;	
	}
	
	#page3 .container, page4 .container {
		padding-left: 0px;
		padding-right: 0px;	
	}
	
}

@media (max-width: 480px) {

	.row .row {
		padding-left: 0px;
		padding-right: 0px;	
	}
	
	#template h3 {
		padding-left: 6rem;
	}
	.showContent {
		margin-top: 12em;	
	}
	
	#template .tools img {
		width: 2.5em;	
	}
	
	#heroImage img {
		top: 2em;
	}
	
}

@media (max-width: 425px) {
	#page3 .row .row img, #page4 .row .row img {
		min-width: 4em;
		min-height: 4em;
		width: 40% !important;
		height: auto !important;
	}
	
	#page7 ul {
		padding-left: -8%;
		transform: translateX(8%);
		margin-bottom: 3em;
	}
	
	#page7 li {
		width: 30%;
		height: 16rem;
		min-width: 8rem !important;
		min-height: 8rem !important;
		border: none;
		padding: 0.8em;
	}
	
	#page7 .fa {
		font-size: 2rem;
	}
}

@media (max-width: 400px) {
	#snippet{
		margin: 25% 5% 5em;
		width: 90%;
	}
}

@media (max-width: 340px) {
	#template h3 {
		padding-left: 6rem;
	}
}