body {
	padding: 0;
	margin: 0;
	font-family: Helvetical, Arial, sans-serif;
}

#header_container {
	position: relative;
	padding-left: 121px;
	display: flex;
	flex-direction: row;
	max-width: calc(950px - 135px);
	margin: 0 auto;
}	

#content_top {
	color: #AAA;
	height: 330px;
	line-height: 1.6em;
	background-color: #000;
}


.content_holder {
	max-width: 950px;
	margin: 0 auto;
}

#content_top .content_holder {
	display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: center;
	flex-wrap: nowrap;
	gap: 30px;
	height: 100%;
	color: #AAA;
}

#content_top.home_hero,
#content_top.home_hero .content_holder,
#content_top.video_holder,
#content_top.video_holder .content_holder {
	height: auto;
}

#content_top.home_hero img {
	max-width: 100%;
	height: auto;
}

#more_content {
	clear: both;
	padding: 10px;
	display: block;
	position: relative;
	top: 1px;
	color: #8c8989;
	line-height: 1.8em;
}

.content_holder td {
	color: #AAA;
}

#more_content td {
	color: #8c8989;
}

#footer {
	font-weight: bold;
	color: #999;
	text-align: right;
}


/*/////////////////////
/////// NAVIGATION
/////////////////////*/

a.logo {
	display: block;
	position: absolute;
	top: -25px;
	left: 0;
}
a.logo img {
	width: 121px;
	height: auto;
}
#nav_container {
	width: 100%;
	background-color: #CCC;
	position: relative;
	margin-top: 50px;
	height: 2rem;
	margin-bottom: 50px;
}
.nav_item {
	color: #FFF;
	text-transform: uppercase;
	letter-spacing: .07em;
	padding: 0.5rem 1rem;
	border-right: 1px solid #FFF;
	display: block;
	width: 20%;
	text-align: center;
	font-size: 0.8rem;
}

.nav_item:hover, .nav_item:active, .selected {
	background-color: #C00;
	border-bottom: 3px solid #FFF;
}


/*/////////////////////
/////// GENERAL
/////////////////////*/

.page_header {
	padding: 15px 0 15px 0;
	color: #FFF;
	text-transform: uppercase;
}

.error {
	color: #FFF;
	font-weight: bold;
	margin-bottom: 1rem;
}

img.align_left{
	float: left;
	padding: 0 20px 0 0;
}

td {
	line-height: 1.4em;
}

th {
	border-bottom: 1px solid #CCC;
}

.top_photo {
	width: calc(24% - 30px);
}
.top_photo img {
	max-width: 100%;
	height: auto;
}
.bottom_photo img {
	max-width: 100%;
	height: auto;
	margin-bottom: 2rem;
}

/*/////////////////////
/////// INPUTS
/////////////////////*/


input[type="text"] {
 	border: none;
 	background-color: #333;
 	color: #c1c1c1;
	max-width: 100%;
	width: 20rem;
	padding: 0.5rem;
 }
 
 input[type="text"]:focus {
 	background-color: #666;
 	color: #FFF;
 }

input[type="submit"] {
	width: 100%;
	padding: 0.5rem 0;
}
 
 textarea {
 	border: none;
 	background-color: #333;
 	color: #c1c1c1;
	 max-width: 100%;
	 width: 20rem;
 }
 
 textarea:focus {
 	background-color: #666;
 	color: #FFF;
 }
 .form_row {
	 clear: both;
	 margin-bottom: 0.5rem;
 }
 
 label {
	 width: 7rem;
	 display: block;
	 float: left;
 }
 
/*/////////////////////
/////// CALENDAR
/////////////////////*/

.calendar_container {
	column-count: 3;
}
 
.calendar_item {
	margin-bottom: 2rem;
	break-inside: avoid;
} 

.calendar_year {
	text-transform: uppercase;
	font-weight: bold;
	background-color: #CCC;
	color: #FFF;
	padding: 0.5rem;
	text-align: center;
}

.calendar_highlight {
	width: 70%; 
	text-align: center;
}

#more_content .monthTitle {
	text-align: center;
	font-weight: bold;
	color: #FFF;
	background-color: #AAA;
	text-transform: uppercase;
 }
 
.weekdayTitles{
	text-align: center;
	font-weight: bold;
	color: #666;
 }
 
.emptyDay{
	background-color: #DDD;
 }
 
a.dayLink, a.dayLink:link {
	text-decoration: none;
	font-weight: bold;
 }
 
a.monthLink, a.monthLink:link {
	text-decoration: none;
}


.normalDay {
	color: #999;
}
 

.embed-container { 
	position: relative; 
	padding-bottom: 56.25%; 
	overflow: hidden; 
	width: 100%; 
} 
.embed-container iframe, .embed-container object, .embed-container embed { 
	position: absolute; top: 0; left: 0; width: 100%; height: 100%; 
}

/*/////////////////////
/////// LINKS
/////////////////////*/

a, a:link {
	color: #900;
}

a:hover {
	color: #000;
}




@media (max-width: 950px) {
	#nav_container {
	  height: auto;
	  margin-bottom: 25px;	
	  background-color: #FFF;
	}
	#header_container {
	  position: relative;
	  padding-left: 0;
	  display: flex;
	  flex-direction: column;
	  max-width: 100%;
	  margin: 0 auto;
	 }
	.nav_item {
	  width: 100%;
	  padding: 0.5rem 0;
	  background-color: #CCC;
	  font-size: 1rem;
	 }
	 .nav_item:hover, .nav_item:active, .selected {
		 background-color: #C00;
		 border-bottom: none;
	 }
	 a.logo {
	  display: block;
	  position: relative;
	  top: 0;
	  left: 0;
	  text-align: center;
	 }
	 
	#content_holder {
	  max-width: 90%;
	  margin: 0 auto;
	}
	 #content_top {
	  height: auto;
	  padding: 1rem;
	}
	 #content_top .content_holder {
		display: flex;
		flex-direction: column;
		justify-content: flex-start;
		align-items: center;
		flex-wrap: wrap;
		gap: 30px;
	    height: auto;
	 }
	 
	 .top_photo {
		 width: 80%;
	 }
	 
	 .calendar_container {
		 column-count: 1;
	 }

	 .calendar_highlight {
		 width: 100%; 
	 }

}
