/*******************/
/*** START RESET ***/
/*******************/

html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video { margin:0; padding:0; border:0; font-size:18px; font-family:"Raleway", sans-serif; vertical-align:baseline; }
article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section { display:block; }
body { line-height:1; }
blockquote,q { quotes:none; }
blockquote:before,blockquote:after,q:before,q:after { content:''; content:none; }
table { border-collapse:collapse; border-spacing:0; }
*, :before, :after { -webkit-box-sizing:border-box; box-sizing:border-box; }
img { vertical-align:middle; max-width:100% !important; height:auto !important; border-radius:3px; }

/*******************/
/*** END RESET ***/
/*******************/

/*** COLORS
	Red:7F2119
	Tan:F0E6B1
	Dark:201F1B
	Orange:DE8122
***/

body { background-color:#232323; line-height:23px; }

h1,h2,h3 { font-family:'Rye', cursive; font-weight:normal; }
h1 { font-size:32px; line-height:37px; }
h2 { font-size:28px; line-height:33px; }
h3 { font-size:24px; line-height:29px; }
h4 { font-size:22px; line-height:27px; }
h5 { font-size:21px; line-height:26px; }
h6 { font-size:19px; line-height:24px; }

a { color:#7F2119; }
a:hover { color:#201F1B; text-decoration:none; }

#header a { color:#f0e6b1; }
#header a:hover { color:#fff; text-decoration:none; }

hr {
	border:0;
	height:1px;
	background-image:-webkit-linear-gradient(left, rgba(0,0,0,0), rgba(0,0,0,0.75), rgba(0,0,0,0)); 
	background-image:   -moz-linear-gradient(left, rgba(0,0,0,0), rgba(0,0,0,0.75), rgba(0,0,0,0)); 
	background-image:    -ms-linear-gradient(left, rgba(0,0,0,0), rgba(0,0,0,0.75), rgba(0,0,0,0)); 
	background-image:     -o-linear-gradient(left, rgba(0,0,0,0), rgba(0,0,0,0.75), rgba(0,0,0,0)); 
}

#contents h1, #contents h2, #contents h3, #contents h4, #contents h5, #contents h6, #contents p, #contents hr { margin-bottom:20px; }

#wrapper {
	width:100%;
	margin:0 0 20px 0;
	background-color:#ccc;
	padding:10px;
}

#container {
	display:-ms-grid;
	display:grid;
	grid-gap:10px;
	-ms-grid-columns:auto;
	grid-template-columns:auto;
	-ms-grid-rows:auto 10px auto 10px auto 10px auto;
	grid-template-areas:
		"header"
		"contents"
		"side"
		"footer";
}

#navigation {
	grid-area:navigation;
	background-color:#7F2119;
	border-radius:3px;
	display:none;
}

#header {
	-ms-grid-row:1;
	-ms-grid-column:1;
	grid-area:header;
	background:#7F2119 url(../images/headerbgblur.jpg) center center no-repeat;
}

#contents {
	-ms-grid-row:3;
	-ms-grid-column:1;
	grid-area:contents;
	background-color:#fff;
	min-height:250px;
}

#side {
	-ms-grid-row:5;
	-ms-grid-column:1;
	grid-area:side;
	background-color:#777;
}
#side ol,
#side ul,
#side li { margin:0; padding:0; list-style:none; }

#footer {
	-ms-grid-row:7;
	-ms-grid-column:1;
	grid-area:footer;
	background-color:#7F2119;
	text-align:center;
}
#bottomemail { display:block; padding-bottom:5px; font-size:12px; }
#bottomphone { display:block; font-size:16px; }
#footer a { color:#fff; text-decoration:none; }
#footer a:hover { color:#F0E6B1; text-decoration:underline; }

#copyright {
	text-align:center;
	padding:20px 20px 20px 20px;
}
#copyright span {
	font-size:17px;
}

#header, #contents, #side, #footer {
	padding:20px;
	color:#fff;
	text-shadow:1px 1px 2px rgba(0,0,0,.6);
	border-radius:3px;
}
#side { padding:0; background-color:transparent; }

#contents {
	color:#222;
	text-shadow:none;
}

/*** NAVIGATION MENU ***/

#navmenu ul {
	list-style-type:none;
	margin:0;
	padding:0;
	overflow:hidden;
}
#navmenu li { float:left; }
#navmenu li:last-child { float:right; }
#navmenu li a, #navmenu .dropbtn {
	display:inline-block;
	color:white;
	text-align:center;
	padding:20px 29px;
	text-decoration:none;
	font-size:18px;
	cursor:pointer;
}
#navmenu li a:hover, .dropdown:hover .dropbtn { background-color:#201F1B; border-radius:3px; }
#navmenu li.dropdown { display:inline-block; }
#navmenu .dropdown-content {
	display:none;
	position:absolute;
	background-color:#f9f9f9;
	min-width:200px;
	-webkit-box-shadow:0px 8px 16px 0px rgba(0,0,0,0.2);
	box-shadow:0px 8px 16px 0px rgba(0,0,0,0.2);
	z-index:1;
}
#navmenu .dropdown-content a {
	color:#000;
	padding:12px 16px;
	text-decoration:none;
	display:block;
	text-align:left;
}
#navmenu .dropdown-content a:hover { background-color:#f1f1f1; }
#navmenu .dropdown:hover .dropdown-content { display:block; }
.mdi { font-size:17px; } /* SEARCH ICON */

.table { display:table; width:100%; }
#logo { display:none; width:100%; text-align:center; }
#logo img { border-radius:3px; }
#info { display:block; width:100%; text-align:center; }

/*** POPUP SEARCH FORM ***/

.overlay {
	/* height:100%;
	width:100%; */
	display:none;
	position:fixed;
	z-index:1;
	top:0;
	left:0;
	bottom:0;
	right:0;
	overflow-y:auto;
    overflow-x:hidden;
	background-color:rgba(0,0,0,.9);
}
.overlay-content {
	text-align:center;
}
.overlay .closebtn {
	position:absolute;
	top:10px;
	right:10px;
	font-size:30px;
	cursor:pointer;
	color:#fff;
}
.overlay .closebtn:hover { color:#7F2119; }
.overlay input[type=text] {
	padding:20px;
	font-size:18px;
	border:none;
	float:left;
	width:80%;
	background-color:#fff;
	border-radius:3px 0 0 3px;
}
.overlay input[type=text]:hover { background-color:#f3f3f3; }
.overlay button {
	float:left;
	width:20%;
	background-color:#7F2119;
	color:#fff;
	border:3px solid #fff;
	border-left:none;
	cursor:pointer;
	border-radius:0 3px 3px 0;
	padding:29px 0 26px 0;
}
.overlay button span { display:block; font-size:34px; line-height:0; cursor:pointer; }
.overlay button:hover { background-color:#201F1B; color:#fff; cursor:pointer; }

/*** HIDDEN MOBILE MENU ***/

#header { position:relative; }
#hiddenMobileMenu { position:absolute; top:150px; left:22px; right:22px; }
#hiddenMobileMenuToggle { position:absolute; top:8px; right:8px; font-size:30px; }

#hiddenMobileMenuNav { width:100%; text-align:center; }
#hiddenMobileMenuNav ul {
	display:inline-block;
	list-style-type:none;
	margin:0;
	padding:0;
}
#hiddenMobileMenuNav li { float:left; margin:0 5px; }
#hiddenMobileMenuNav li:first-child { margin-left:0; }
#hiddenMobileMenuNav li:last-child { margin-right:0; }
#hiddenMobileMenuNav li a {
	display:inline-block;
	color:white;
	text-align:center;
	padding:10px;
	text-decoration:none;
}
#hiddenMobileMenuNav li a:hover { background-color:#7F2119; }

/*** EXTRAS ***/

.span2block { display:block; }
.hideonsmall { display:none; }
.extralineonsmall { display:block; height:7px; }
img.footerlogo { width:40%; }

/*** VIDEO FIXER (make youtube videos responsive) ***/
.videoWrapper { position:relative; padding-bottom:56.25%; padding-top:0; height:0; }
.videoWrapper iframe { position:absolute; top:0; left:0; width:100% !important; height:100% !important; }

/*** IMAGE ALIGNMENT ***/
.left img { float:left; margin:0 20px 10px 0; }
.right img { float:right; margin:0 0 10px 20px; }

/*** BUTTONS ***/
.button { display:block; text-decoration:none; background:#7F2119; color:#fff; font-weight:bold; padding:15px 20px; border-radius:3px; cursor:pointer; }
.button:hover { text-decoration:none; background:#201F1B; color:#F0E6B1; text-shadow:1px 1px 2px #000; cursor:pointer; }

/*** MEDIUM SCREENS ***/
@media screen and (min-width:800px){
	#container {
		-ms-grid-columns:auto 10px 32%;
		grid-template-columns:auto 32%;
		-ms-grid-rows:auto 10px auto 10px auto 10px auto;
		grid-template-areas:
			"navigation navigation"
			"header header"
			"contents side"
			"footer footer";
	}
	
	#header { background-color:#201F1B; }
	#navigation { display:initial; }
	
	#navmenu li a, #navmenu .dropbtn {
		padding:20px 16px;
		font-size:13px;
	}
	
	.overlay button { padding:29px 0 25px 0; }
	
	#logo { display:table-cell; vertical-align:middle; width:15%; }
	#info { display:table-cell; vertical-align:middle; width:85%; }
	
	#copyright { padding:20px 20px 20px 20px; }
	
	#bottomemail { display:inline; font-size:16px; }
	#bottomphone { display:inline; font-size:16px; }
	
	img.footerlogo { width:auto; }
	
	.span2block { display:initial; }
	.hideonsmall { display:initial; }
	.extralineonsmall { display:initial; height:0; }
	#hiddenMobileMenuToggle { display:none; }
	#hiddenMobileMenu { display:none; }
	
	#navigation { -ms-grid-row:1; -ms-grid-column:1; -ms-grid-column-span:3; }
	#header { -ms-grid-row:3; -ms-grid-column:1; -ms-grid-column-span:3; }
	#contents { -ms-grid-row:5; -ms-grid-column:1; }
	#side { -ms-grid-row:5; -ms-grid-column:3; }
	#footer { -ms-grid-row:7; -ms-grid-column:1; -ms-grid-column-span:3; }
}

@media screen and (min-width:900px){
	#navmenu li a, #navmenu .dropbtn {
		padding:20px 18px;
		font-size:15px;
	}
}

@media screen and (min-width:1000px){
	#container {
		-ms-grid-columns:auto 10px 26%;
		grid-template-columns:auto 26%;
	}
	#navmenu li a, #navmenu .dropbtn {
		padding:20px 22px;
		font-size:16px;
	}
}

@media screen and (min-width:1100px){
	#navmenu li a, #navmenu .dropbtn {
		padding:20px 25px;
		font-size:17px;
	}
}

/*** LARGE SCREENS ***/
@media screen and (min-width:1220px){
	body {background:#111 url(../images/background_rocks.jpg) top center fixed; }
	
	#wrapper {
		width:1200px;
		margin:20px auto;
		background-color:#bbb;
		padding:10px;
		-webkit-box-shadow:0 0 20px #000;
				box-shadow:0 0 20px #000;
		border-radius:3px;
	}
	
	#container {
		-ms-grid-columns:auto 10px 22%;
		grid-template-columns:auto 22%;
		-ms-grid-rows:auto 10px auto 10px auto 10px auto;
		grid-template-areas:
			"navigation navigation"
			"header header"
			"contents side"
			"footer footer";
	}
	
	#navmenu li a, #navmenu .dropbtn {
		padding:20px 29px;
		font-size:18px;
	}
	
	#navigation { -ms-grid-row:1; -ms-grid-column:1; -ms-grid-column-span:3; }
	#header { -ms-grid-row:3; -ms-grid-column:1; -ms-grid-column-span:3; }
	#contents { -ms-grid-row:5; -ms-grid-column:1; }
	#side { -ms-grid-row:5; -ms-grid-column:3; }
	#footer { -ms-grid-row:7; -ms-grid-column:1; -ms-grid-column-span:3; }
}

/**********************/
/*** HARD CODED CSS ***/
/**********************/

#pageContents { }
#pageContents img { height:auto !important; }
#pageContents iframe { width:98%; max-width:98% !important; margin:0 8px; }

#postContainer { border-bottom:1px solid #ccc; }
#postContainerPadding { padding:10px; }
#postContainerIcon { float:left; margin:0 15px 0 0; }
#postContainerTitle { margin-bottom:7px; }
#postContainerTitle h3 { font-size:15px; width:100%; height:19px; line-height:20px; overflow:hidden; }
#postContainerTitle h3 a { color:#676767; }
#postContainerDescription { font-style:italic; margin-bottom:2px; font-size:12px; width:100%; height:34px; line-height:17px; overflow:hidden; }
#postContainerStats { padding:0 10px; font-style:italic; }
#postContainerDate { font-size:10px; }
#postContainerAuthor { float:right; font-size:10px; }
#postContainerKeywords { font-size:10px; }
#clear { clear:both; height:1px; }

#postContent {}
#postContent img { -webkit-border-radius:3px; -moz-border-radius:3px; border-radius:3px; }
#postContent iframe { max-width:100% !important; margin:0 !important; }

.postIcon img { -webkit-border-radius:3px; -moz-border-radius:3px; border-radius:3px; }

#morebyContainer { font-style:italic; text-align:center; }

#autoPageBreakPaging { text-align:center; }
#autoPageBreakPaging span { margin:0 3px; }
#autoPageBreakPaging span b { padding:2px 4px; background-color:#000; border:1px solid #000; color:#fff; }
#autoPageBreakPaging span a { padding:2px 4px; background-color:#eee; border:1px solid #ccc; text-decoration:none; }
#autoPageBreakPaging span a:hover { background-color:#000; border:1px solid #000; color:#fff; }

#categoryPostsHeading { padding:10px; margin-bottom:10px; background-color:#333; border-top:1px solid #D7C8BC; border-bottom:2px solid #D7C8BC; border-radius:3px; -webkit-border-radius:3px; -moz-border-radius:3px; color:#fff !important; text-decoration:none; text-shadow:1px 1px 2px #000; -webkit-text-shadow:1px 1px 2px #000; -moz-text-shadow:1px 1px 2px #000; }
#categoryPostsHeading a { color:#fff !important; text-decoration:none; text-shadow:1px 1px 2px #000; -webkit-text-shadow:1px 1px 2px #000; -moz-text-shadow:1px 1px 2px #000; }

/*** PAGINATION CSS ***/

#pagingContainer { text-align:center; padding:10px 0; font-weight:bold; }
#pagingContainerForm {}
#pagingContainerPrevLink {}
#pagingContainerPrevLink:hover { color:#000; }
#pagingContainerPrevLinkOff { display:none; }
#pagingContainerNextLink {}
#pagingContainerNextLink:hover { color:#000; }
#pagingContainerNextLinkOff { display:none; }
#pagingContainerDropdown {}
#pagingContainerFormSubmitButton {}

/*** COMMENTS FROM CSS ***/

#commentFormContainer {}
#commentFormContainerHeader {}
#commentFormContainerTextareaContainer {}
#commentFormContainerTextarea {}
#commentFormContainerSubmitButtonContainer { text-align:right; }
#commentFormContainerSubmitButton { border:2px solid #000; background:#000; color:#fff; font-weight:bold; font-size:15px; padding:2px 8px; cursor:pointer; }
#commentFormContainerSubmitButton:hover { background:#ffffaa; color:#000; }

/*** PRIVATE MESSAGE FORM CSS ***/

#messageFormContainer {}
#messageFormContainerHeader {}
#messageFormContainerTextareaContainer {}
#messageFormContainerTextarea {}
#messageFormContainerSubmitButtonContainer { text-align:right; }
#messageFormContainerSubmitButton { border:2px solid #000; background:#000; color:#fff; font-weight:bold; font-size:15px; padding:2px 8px; cursor:pointer; }
#messageFormContainerSubmitButton:hover { background:#ffffaa; color:#000; }

/*** MESSAGE CSS ***/

#messageSuccess { padding:10px; background-color:#afa; font-weight:bold; border-top:1px solid #ccc; border-bottom:1px solid #ccc; }
#messageError { padding:10px; background-color:#ff9; font-weight:bold; font-style:italic; border-top:1px solid #aaa; border-bottom:1px solid #aaa; }

/*** CALENDAR CSS ***/

.calendar { width:100%; background-color:#7F2119; border-collapse:separate; border-spacing:1px; border-radius:3px; }
.calendarHeader { background-color:#7F2119; color:#fff; font-size:16px; height:60px; vertical-align:middle; }
.calendarHeader a { text-decoration:none; color:#fff; }
.calendarHeader a:hover { text-decoration:underline; color:#F0E6B1; }
.calendarDayHeader { background-color:#201F1B; color:#fff; font-size:14px; height:30px; vertical-align:middle; }
.calendarBlankDay { background-color:#ccc; width:91px; height:91px; }
.calendarDay { background-color:#eee; text-align:right; vertical-align:top; width:91px; height:91px; }
.calendarDay:hover { background-color:#F0E6B1; }
.calendarToDay { background-color:#F0E6B1; text-align:right; vertical-align:top; width:91px; height:91px; }
.calendarToDay:hover { background-color:#F0E6B1; }
.calendarEvent { text-align:center; padding:5px; margin:5px; background-color:#7F2119; color:#fff; border-radius:3px; font-size:12px; line-height:17px; }
.calendarEvent a { text-decoration:none; color:#fff; font-size:12px; line-height:17px; }
.calendarEvent:hover { background-color:#201F1B; }

/*** UPCOMING EVENTS MENU CSS ***/

#upcomingEventsMenu {  }
#upcomingEventsMenu li { margin-bottom:0; font-size:16px; }
#upcomingEventsMenu li:last-child { margin-bottom:20px; }
#upcomingEventsMenu li a { display:block; font-size:16px; padding:5px; text-decoration:none; border-radius:3px; }
#upcomingEventsMenu li a:hover { background-color:#F0E6B1; }
#upcomingEventsMenu li b { display:block; padding:5px; margin-bottom:5px; background-color:#201F1B; color:#fff; border-radius:3px; }

/*** CATEGORY MENU LEVELS CSS ***/

.lvl1 { font-weight:bold; }
.lvl1 a { color:#ffffaa; }
.lvl2 { font-weight:normal; padding-left:10px; }
.lvl2 a { color:#eee; }
.lvl3 { font-style:italic; padding-left:10px; }
.lvl4 { font-style:italic; padding-left:10px; }
.lvl5 { font-style:italic; padding-left:10px; }

.lvl1 { padding:2px 0; margin-bottom:0; }
.lvl1_subs { padding:4px 0; }

/*** BREADCRUMB TRAIL CSS ***/

#breadcrumbTrail { margin-bottom:10px; }
#breadcrumbTrail * { font-size:10px; }
#breadcrumbTrailTitle {}

/*** CATEGORIES PAGE CSS ***/

#categoriesPageRssFeed {}

/*** SEARCH PAGE ***/

#searchFilters { border:1px solid #ccc; background-color:#eee; text-align:center; }
#searchFiltersPadding { padding:5px 10px; }
#searchFiltersFormSubmitButton { border:1px solid #000; background:#000; color:#fff; font-weight:bold; font-size:12px; padding:2px 4px; cursor:pointer; }
#searchFiltersFormSubmitButton:hover { background:#ffffaa; color:#000; }

/*** USER SECTIONS CSS ***/

#userAccountPageContents { background-color:#fff; color:#000; }
#userAccountPageContents a {  }
#userAccountPageContents i { color:#777; }
#userAccountPageContents h1,
#userAccountPageContents h2,
#userAccountPageContents h3 { margin:0; }

#userFormSubmitButton {border:1px solid #000;background:#000;color:#fff;font-weight:bold;font-size:15px;padding:2px 8px;cursor:pointer;}
#userFormSubmitButton:hover {background:#ffffaa;color:#000;}

/*** ALTERNATE ROW BACKGROUNDS ( used in includes/template_data.php ) ***/

.SP_row_odd {}
.SP_row_odd:hover { background-color:#fafafa; }
.SP_row_even { background-color:#f6f6f6; }
.SP_row_even:hover { background-color:#fafafa; }

.commentRow_even {border:none;margin-bottom:5px;background-color:#fff;}
.commentRow_odd {border-top:1px solid #aaa;border-bottom:1px solid #aaa;margin-bottom:5px;padding:5px;background-color:#eee;}
.commentRow_odd_v2 { border:1px solid #d5d5d5; background-color:#fdfdfd; margin-bottom:5px; border-radius:3px; -webkit-border-radius:3px; -moz-border-radius:3px; }
.commentRow_even_v2 { border:1px solid #d5d5d5; background-color:#fafafa; margin-bottom:5px; border-radius:3px; -webkit-border-radius:3px; -moz-border-radius:3px; }

/*********************************/
/*** EXTRA RESPONSIVE TRIGGERS ***/
/*********************************/

@media screen and (max-width:801px){
	table, tr, th, td, tbody { display:block !important; width:100% !important; }
	table.calendar { display:none !important; }
	.button { width:100% !important; }
}