﻿body {
	min-height:100vh;
	font-family:Arial, sans-serif;
}

/* Set padding to keep content from hitting the edges */
.body-content {
    padding-left: 15px;
    padding-right: 15px;
	flex-grow: 1;
	margin-left:0;
	margin-right:0;
}

/* Override the default bootstrap behavior where horizontal description lists 
   will truncate terms that are too long to fit in the left column 
*/
.dl-horizontal dt {
    white-space: normal;
}
#shadow-wrapper {
	position: relative;
	display:flex;
	flex-direction:column;
	min-height:100vh;
}
#shadow-content {
	position: relative;
	clear: both;
	height: 100%;
	background: #e1edf4;
	padding-top: 55px;
	flex-grow: 1;
	display: flex;
	flex-direction: column;
}
.shadow-box {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: -1;
}

	.shadow-box:before {
		left: 5px;
		box-shadow: -15px 20px 20px rgba(4,4,4,.6);
	}

	.shadow-box:after {
		right: 5px;
		box-shadow: 15px 20px 20px rgba(4,4,4,.6);
	}

	.shadow-box:before, .shadow-box:after {
		top: -90px;
		bottom: 0;
		content: "";
		position: absolute;
		width: 18px;
		background-color: red;
	}
footer{
	text-align:center;
}

/*.navbar-fixed-top{
	z-index:auto;
}
.navbar-fixed-top > .container{
	z-index:1030;
}*/
.navbar-fixed-top{
	z-index:930;
}
body.modal-open, .modal-open .navbar-fixed-top, .modal-open .navbar-fixed-bottom{
	margin-right:auto;
}
#headerRow1 {
	height: 55px;
	background: #e1edf4;
	border: none;
	position: fixed;
	border-bottom: 2px solid #333087;
}
	#headerRow1 .navbar-nav a {
		font-weight: bold;
		color: #333087;
		border-color: #333087;
		font-size: 18px;
	}
		#headerRow1 .navbar-nav a span {
			border-color: #333087;
		}
#headerRow1 > div, #headerRow1 .navbar-header{
	height:100%;
}
li.mainNav > a{
	display:inline-block;
	width:100%;
}
/*li.mainNav > a:first-child{
	padding-right:0px;
}
li.mainNav > a:nth-child(2){
	padding-left:0;
}*/
.navbar-inverse .navbar-nav > .open > a, .navbar-inverse .navbar-nav > .open > a:hover, .navbar-inverse .navbar-nav > .open > a:focus, .mainNav.appearFocus, .mainNav.open {
	background-color: #ccc;
}
.dropdown-menu > li > a:hover, .dropdown-menu > li > a:focus{
	background-color:#ccc;
}

.dropdown-toggle.headerButton > span > img {
	padding: 0;
}
#homeLink{
	height:100%;
	display:inline-block;
	padding:5px 0;
}
	#homeLink > img {
		height: 100%;
		max-width: 115px;
		border: 1px solid black;
		border-radius:10px;
	}
#headerRow2 {
	height: 225px;
	position: relative;
	text-align: right;
	margin-bottom:20px;
}
#bigHeader {
	height: 100%;
	/*background-color: #005782;*/
	background: #333087 url('/img/art/Banner2.jpg');
	background-size:cover;
	background-repeat:no-repeat;
}
#bookCoverImg {
	position: absolute;
	width: 240px;
	left: 50%;
	margin-left: -120px;
	z-index: 1;
	display:none;
	/*box-shadow: -3px 3px 4px 1px rgba(0,0,0,.7);*/
}
#SiteTagline {
	/*color: #D9F119;*/
	/*color: #b4fc04;*/
	position: absolute;
	right: 30px;
	left: 30px;
	top:0;
	font-weight: bold;
	text-shadow: 2px 4px 3px rgba(0,0,0,0.7);
	text-align:center;
}
	#SiteTagline > h1 {
		font-size: 38px;
		font-weight: bold;
		margin-top:15px;
		margin-bottom: 0;
		font-family: 'Comic Sans MS', Arial, sans-serif;
	}
	#SiteTagline > h2 {
		font-size: 20px;
		font-weight: bold;
		margin-top: 15px;
		font-family: Arial;
	}
#headerRow3{
	margin-top:100px;
	padding-left:5px;
	padding-right:5px;
}
	#headerRow3 h2, #headerRow3 h1, h2 {
		color: #333087;
		font-size: 32px;
		font-weight: bold;
	}
#headerDivider {
	width: 80%;
	display: block;
	height: 2px;
	background-color: #333087;
	content: ' ';
	margin: 5px auto 2px;
}
.navbar-inverse .navbar-toggle {
	border-color: #333087;
	border-width: 2px;
	margin-right: 0;
	margin-top: 5px;
}
	.navbar-inverse .navbar-toggle .icon-bar {
		background-color: #333087;
		height: 3px;
		border-radius: 3px;
	}
.navbar-inverse .navbar-toggle:hover, .navbar-inverse .navbar-toggle:focus{
	background-color:#707070;
}
.navbar-inverse .navbar-collapse {
	background: #e1edf4;
}
.text-green {
	/*color: #35ff17;*/
	color:#bcd631;
}
.secondHeader {
	color: #333087;
}
.text-green.text-bold, .text-green.pageHeader{
	text-shadow:1px 1px 0 rgba(0,0,0,.4);
}
.text-light-blue{
	color:rgba(0,112,192,1);
}
.text-red{
	color:rgba(255,0,0,1);
}
.text-blue {
	color: #463CD6;
}
.text-purple {
	color: #333087;
}
.text-rsgg{
	color:#333087;
	font-weight:bold;
	font-family:'Comic Sans MS', Arial, sans-serif;
}
hr{
	border-color:#cccccc;
}
.rightImg{
	padding-left:15px;
}
.leftImg{
	padding-right:15px;
}
.resourceLink {
	display: block;
	text-align: center;
	font-size: 20px;
	padding: 10px;
	color: #333087;
	font-weight: bold;
	margin-top: 5px;
}
	.resourceLink:hover, .resourceLink:focus {
		color: #4f4fB7;
	}
.spaced-block {
	border-color: #e1edf4;
}
.spacer{
	flex-grow:1;
}
.lightBlueBox {
	background-color: #f6fbfe;
	box-shadow: 0 0 0 1px #e6ebee inset;
}

.narration {
	font-family: Georgia, 'Palatino Linotype', serif;
	color: #444;
	font-style:italic;
}
p.narration {	
	padding-left: 10px;
	border-left: 1px solid #999;
}
.sectionImg {
	display: block;
	width: 100%;
	max-width: 420px;
	margin-bottom: 15px;
	margin-left:auto;
	margin-right:auto;
}

#back-button{
	display:none;
	font-size:18px;
	margin-left:5px;
}
	#back-button:hover, #back-button:focus {
		opacity: .8;
		text-decoration:none;
	}
#back-arrow {
	position:relative;
	width: 30px;
	height: 30px;
	display: inline-block;
	border-radius: 50%;
	background: #333 no-repeat center center;
	color:white;
	line-height:30px;
	font-weight:bold;
	text-align:center;
	transition:opacity ease-out .3s;
}
#back-label {
	color: #333;
	display: inline-block;
}
.vignette-frame{
	width:100%;
	height:51vw;
	max-height:100vh;
}

/*Mobile first styling*/
/* Extra small screens*/
@media (min-width:480px) {
	#bookCoverImg {
		width: 160px;
		top: 5px;
		left: 20px;
		margin-left: 0;
		display: block;
	}
	#headerRow2{
		height:250px;
	}
	#SiteTagline > h1{
		font-size:42px;
		margin-bottom:10px;
	}
	#tagline-one-break {
		white-space: nowrap;
	}
	#SiteTagline > h2{
		margin-bottom:15px;
		margin-top:0;
	}
	#headerRow3{
		margin-top:120px
	}
	#SiteTagline{
		text-align:right;
		bottom:0;
		top:auto;
	}
	.vignette-frame{
		height:52vw;
	}
}
/*Small screens*/
@media (min-width:768px) {
	#headerRow1{
		position:fixed;
	}
	#headerRow1 .navbar-collapse{
		position:relative;
		bottom:2px;
	}
	#bookCoverImg {
		margin-left: 0;
		left: 5px;
		width: 220px;
		display: block;
		top:20px;
	}
	#headerRow2 {
		height: 221px;
		margin-bottom:10px;
	}
	#bigHeader {
		background-size: contain;
	}
	#SiteTagline{
		top:auto;
		bottom:0;
		display:block;
	}
	#SiteTagline > h1{
		font-size:52px;
		margin-left:80px;
		margin-bottom:15px;
	}
	#SiteTagline > h2{
		font-size:22px;
	}
	#headerRow3 {
		margin-top: 0;
	}
		#headerRow3 h1, #headerRow3 h2, h2 {
			font-size: 40px;
		}
	.mainNav.dropdown:hover > .dropdown-menu {
		display: block;
	}
	.sectionImg{
		display:inline-block;
		width:40%;
	}
	.sectionImg.leftImg{
		float:left;
	}
	.sectionImg.rightImg{
		float:right;
	}
	li.mainNav .dropdown-menu{
		margin-top:-1px;
		right:0;
		left:auto;
	}
	#back-button{
		display:inline-block;
	}
	.vignette-frame{
		height:406px;
	}
}

/*Medium screens*/
@media (min-width:992px){
	#bookCoverImg {
		width: 360px;
		left: 40px;
		top: -20px;
		z-index: 960;
	}
	#headerRow2 {
		height: 288.5px;
	}
	#SiteTagline > h1{
		font-size:60px;
	}
	#SiteTagline > h2{
		margin-bottom:20px;
	}
	.vignette-frame{
		height:530px;
	}
}

/*Large screens*/
@media (min-width:1200px){
	#bookCoverImg {
		left: 60px;
		width: 450px;
		top: -25px;
	}
	#headerRow2 {
		height: 350px;
		margin-bottom: 20px;
	}
	#SiteTagline > h1 {
		font-size: 72px;
	}
	#SiteTagline > h2{
		font-size:28px;
	}
	.vignette-frame{
		height:645px;
	}
}

/* Non Mobile first */
@media (max-width:768px){
	.navbar-nav {
		float: right;
		margin: 7.5px 0;
	}
	.navbar-inverse .navbar-collapse {
		border: 2px solid #333087;
		border-top: none;
		top: 100%;
		right: 15px;
		position: absolute;
		min-width: 289px;
	}
	.navbar-nav{
		width:100%;
	}
}
@media (max-width:480px){
	#tagline-two-break{
		display:none;
	}
}