/*For mobile first adaptive design place styles for mobile and up in the mobile and up area.
Place styles for tablet and up inside the media query in the tablet and up area.
Place styles for desktop only inside the media query in the desktop only area.

For questions or media query training contact Web Development Services.
*/
/* ====================== Mobile and Up ========================== */

.desktop-header {
	display: none;
}

.mobile-header {
	display: inherit;
}

.program-region, 
.program-header h1, 
.program-header h2, 
.program-header h3, 
.program-region-bios {
	padding-left: 30px;
	padding-right: 30px;
}

.program-header h1, 
.program-header h2, 
.program-header h3, 
.program-header h4, 
.program-header h5, 
.program-header p,
.program-region h1, 
.program-region h2, 
.program-region h3, 
.program-region h4, 
.program-region p {
	color: #000;
	font-family: "Lato", arial, sans-serif;
}

.program-region-bios h2, 
.program-region-bios p   {
	color: #FFF;
	font-family: "Lato", arial, sans-serif;
}
.program-region-bios .headshots h3,
.program-region-bios h3.text-hl, 
.program-region-bios .headshots p   {
	color: #000;
	font-family: "Lato", arial, sans-serif;
	font-size: 16px;
}

.program-region-bios .headshots img {
	padding-bottom: 10px;
}

.program-region-bios .headshots .col-xs-12 {
	margin-bottom: 30px;
}

.program-header h2,
.program-header h3,
.program-header h4,  
.program-region h3, 
.program-region h4, 
.program-region p, 
.program-region h2, 
.program-region-bios h2, 
.program-region-bios p  {
	font-size: 16px;
}
.program-header h1 {
	font-size: 24px;
	margin-top: 0px;
}
.program-header h5 {
	font-size: 16px;
}

.program-region h1 {
	font-size: 20px;
}

.program-region.director-message,
.program-region.credits-small {
	padding-top: 20px;	
}
.program-region li p,
.program-region.credits-small p  {
	font-size: 16px;
}
.program-region.credits-small p.disclaimer  {
	font-size: 11px;
}  

.program-indent {
	padding-left: 20px;
}
.program-indent-large {
	padding-left: 60px;
}
.program-indent-paragraph {
	padding-left: 20px;
	padding-right: 20px;
}

.fixed-width {
	width: 50px;
}

.program-inline-image {
	padding-bottom: 15px;
	margin: auto;
	width: 200px;
}

.program-inline-image-hz {
	width: 275px;
}

.program-table td:nth-child(1) {
	text-align: right;
	padding-right: 10px;
}

.program-table td:nth-child(2) {
	padding-left: 10px;
}

.program-space-between {
	display: flex;
	justify-content: space-between;
}

.program-space-around {
	display: flex;
	justify-content: space-around;
}

.program-space-between div:nth-child(2), 
.program-space-around div:nth-child(2) {
	text-align: right;
}

.program-justified-center {
	display: flex;
	justify-content: center;
	padding-left: 60px;
}

.text-hl {
	display: flex; 
	flex-direction: row;
}

.text-hl:before, .text-hl:after {
	content: "";
	flex: 1 1;
	border-bottom: 20px solid #bd462e;
	margin: auto;
}

.program-region-bios .text-hl:before, 
.program-region-bios .text-hl:after {
	border-bottom: 3px solid #000000;
}

.text-hl:before {
	margin-right: 5%;
}
.text-hl:after {
	margin-left: 5%;
}

.title-transparent {
	border: 0;
	background-color: transparent;
	color: transparent;
	font: 0 / 0 a;
	text-shadow: none;
}

.margin-top-60 {
	margin-top: 30px;
}
.margin-bottom-60 {
	margin-bottom: 30px;
}
.padding-bottom-60 {
	padding-bottom: 30px;
}
.padding-top-60 {
	padding-top: 30px;
}
.margin-top-40 {
	margin-top: 20px;
}
.margin-bottom-40 {
	margin-bottom: 20px;
}
.padding-bottom-40 {
	padding-bottom: 20px;
}
.padding-top-40 {
	padding-top: 20px;
}

.vertical-offset-1 {
	position: relative;
}

.vertical-offset-2 {
	padding-bottom: 30px;
	position: relative;
}


/*End mobile and up styles*/
/* ====================== Tablet and Up (Overrides Mobile Styles) ========================== */
@media only screen and (min-width: 768px) {

	.music-performer-row {
		margin-top: 60px;
	}

	.program-region h1,
	.program-region h2 {
		font-size: 28px;
	} 
	.program-region h3, 
	.program-region-bios .headshots h3,
	.program-region-bios h3.text-hl {
		font-size: 28px;
	}

	.program-header h1 {
		font-size: 42px;
	}
	.program-header h1.rise-above {
		font-size: 48px;
	}
	.program-header h2 {
		font-size: 34px;
	}
	.program-region-bios p, 
	.program-region-bios h2 {
		font-size: 20px;
	}
	.program-header h3 {
		font-size: 28px;
	}
	.program-header h4 {
		font-size: 26px;
	}
	.program-header h5 {
		font-size: 24px;
	}				

	.program-inline-image {
		FONT-WEIGHT: 500;
		float: left;
		padding-right: 40px;
		padding-bottom: 20px;
		padding-top: 0px;
		width: 310px;
	}

	.program-inline-image-hz {
		float: left;
		padding-right: 40px;
		padding-bottom: 20px;
		padding-top: 0px;
		width: 700px;
	}

	.program-region p,
	.program-region li,
	.program-region li p {
		font-size: 24px;
	}

	ol>li:before {
		font-weight: 400;
		font-family: "Lato", arial, sans-serif;
	}

	font-weight: 600;

	.program-region.large p {
		font-size: 28px;
	}
	.program-region .col-xs-1 { 
		width: auto;
	}
	.program-region.director-message,
	.program-region.credits-small {
		padding-top: 40px;	
	}
	.program-region.director-message h2 {
		font-size: 28px;
	}
	.program-region.director-message p {
		font-size: 18px;
	}
	.program-region.credits-small p {
		font-size: 16px;
	}
	.program-region.director-message p,
	.program-region.credits-small .row {
		max-width: 720px;
		margin-left: auto;
		margin-right: auto;
	}

	.program-region.credits-small .col-xs-6 {
		padding: 0px;
	}

	.program-space-around div {
		padding: 0 5px;
	}

	.program-indent {
		padding-left: 40px;
	}
	.program-indent-large {
		padding-left: 180px;
	}

	.program-indent-paragraph {
		padding-left: 40px;
		padding-right: 40px;
	}

	.program-header h1.text-hl {
		padding-left: 0px;
		padding-right: 0px;
	}
	.text-hl:before {
		margin-right: 60px;
	}
	.text-hl:after {
		margin-left: 60px;
	}

	.margin-top-60 {
		margin-top: 60px;
	}
	.margin-bottom-60 {
		margin-bottom: 60px;
	}
	.padding-bottom-60 {
		padding-bottom: 60px;
	}
	.padding-top-60 {
		padding-top: 60px;
	}
	.margin-top-40 {
		margin-top: 40px;
	}
	.margin-bottom-40 {
		margin-bottom: 40px;
	}
	.padding-bottom-40 {
		padding-bottom: 40px;
	}
	.padding-top-40 {
		padding-top: 40px;
	}

	.program-justified-center {
		padding-left: 90px;
	}

	.vertical-offset-1 {
		bottom: 150px;
	}

	.vertical-offset-2 {
		bottom: 75px;
		padding-bottom: 0px;
	}

	/* ====================== Landscape Tablet and Up (Overrides Mobile Styles) ========================== */
	@media only screen and (min-width: 992px) {

		.desktop-header {
			display: revert;
		}
		.mobile-header {
			display: none;
		}
		.program-region, 
		.program-header h1, 
		.program-header h2, 
		.program-header h3, 
		.program-region-bios {
			padding-left: 15px;
			padding-right: 15px;
		}

	}/*end media query*/
	/*End landscape tablet and up styles*/
	/* ====================== Desktop Only (Overrides Mobile and Tablet Styles) ========================== */
	@media only screen and (min-width: 1200px) {
		.program-region-bios .headshots img   {
			padding: 10px 30px;
		}

	}/*end media query*/
	/*End desktop only styles*/
	/*END OF DOCUMENT*/