/* Basic Structure/Typography */

#alert {
	background: #C23A2C;
	margin: 0.9em 0;
	padding: 0.9em 1.8em;
	color: #FFF;
}

#alert a {
	color: #FFF;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
	margin: 0.45em 0;
	width: 100%;
}

th, td {
	border: 1px solid #e62c13;
	padding: 0.45em;
	text-align: left;
}

th {
	background: #e62c13;
	color: #FFF;
}

/* Forms */

form, form p, form div {
	position: relative;
}

.hint {
	position: relative;
	z-index: 2;
}

.hint + label {
	cursor: text;
	left: 0;
	overflow: hidden;
	padding: 0.45em 0.675em;
	position: absolute;
	right: 0;
	top: 0;
	z-index: 3;
}

.hint:focus + label, .filled + label {
	z-index: 1;
}

p .hint + label {
	bottom: 0.45em;
	top: 0.45em;
}

.NewPassword {
	display: inline-block;
	vertical-align: middle;
	width: 70%;
	width: calc(100% - 94px);
	width: calc(100% - 1.35em - 84px);
}

.NewPassword + button, .NewPassword + button + button {
	border-radius: 0;
	padding: 0.45em 0;
	padding-top: calc(0.45em - 1px);
	vertical-align: middle;
	width: 40px;
}

.NewPassword + button + button {
	border-left: none;
	border-radius: 0 3px 3px 0;
}

.validation-error {
	background: #f3d8d5;
	color: #c23a2c;
	display: block;
	padding: 0.45em 0.675em;
}

.select-autocomplete {
	padding: 0 0 0.45em 0;
}

.select-autocomplete:empty {
	padding: 0;
}

.select-autocomplete.hidden {
	display: none;
}

.select-autocomplete button {
	background-image: none;
	border: none;
	border-radius: 1.125em;
	box-shadow: none;
	margin: 0.45em 0 0 0;
	padding: 0.225em 0.9em;
	text-align: left;
	text-shadow: none;
}

.select-autocomplete button + button {
	margin-left: 0.45em;
}

.select-autocomplete button:focus {
	box-shadow: none;
}

.select-autocomplete button + button {
	border-top: 1px solid #CCC;
}

/* Main */

.radio-player {
	display: block;
	padding: 0;
	position: relative;
	z-index: 3;
}

.no-bodys-hero .radio-player {
	background: #444;
	padding: 1.8em;
	padding-top: 10.3em;
}

.no-bodys-hero .radio-player + .crumbtrail {
	padding-top: 1.8em;
}

#RadioPlayer {
	background: #e62c13;
	background: linear-gradient(90deg, #e62c13 50%, #FFF 50%);
	bottom: -2.7em;
	display: none;
	left: 0;
	max-width: 100%;
	position: absolute;
	width: 30em;
}

.no-bodys-hero #RadioPlayer {
	position: static;
}

#RadioPlayer .left, #RadioPlayer .right {
	margin: 0;
	width: 50%;
}

#RadioPlayer .left {
	color: #FFF;
}

#RadioPlayer .right {
	background: #FFF;
}

#RadioPlayer .pad {
	padding: 1.35em;
}

#RadioPlayer .title {
	border: none;
	min-height: 0;
	padding: 0 0 0.375em 0;
}

#RadioPlayer .thumbnail {
	display: block;
	overflow: hidden;
	padding: 0 0 100% 0;
	position: relative;
	z-index: 2;
}

#RadioPlayer .thumbnail:before, #RadioPlayer .thumbnail img {
	left: 0;
	min-height: 100%;
	min-width: 100%;
	position: absolute;
	right: 0;
	top: 0;
	z-index: 1;
}

#RadioPlayer .thumbnail:before {
	background: rgba(0,0,0,0.4);
	content: '';
	z-index: 2;
}

#RadioPlayer .thumbnail:after {
	content: '\25BA';
	color: #FFF;
	color: rgba(255,255,255,0.8);
	font-size: 3rem;
	left: 50%;
	position: absolute;
	margin: -1.5rem 0 0 -1.5rem;
	top: 50%;
	z-index: 3;
}

#RadioPlayer .thumbnail:hover:after {
	color: #FFF;
}

#RadioPlayer .thumbnail:active:after {
	color: rgba(255,255,255,0.6);
}

#RadioPlayer .right .response {
	padding: 120% 0 0 0;
	position: relative;
}

#RadioPlayer .right #Tracks {
	left: 0;
	height: 100%;
	min-height: 100%;
	overflow: hidden;
	position: absolute;
	right: 0;
	top: 0;
	white-space: nowrap;
}

#RadioPlayer .right #Tracks:after {
	background: linear-gradient(90deg, rgba(255,255,255,0), rgba(255,255,255,1));
	bottom: 0;
	content: '';
	position: absolute;
	right: 0;
	top: 0;
	width: 0.45em;
}

#RadioPlayer .right #Tracks :first-child:before {
	color: #e62c13;
	content: 'On Now';
	display: block;
	font-size: 0.75em;
}

#RadioPlayer .right #Tracks :first-child:after {
	color: #666;
	content: 'On Previously';
	display: block;
	font-size: 0.75em;
}

/* Tiny col */

.latest-news .left, .events .left, .community-events .left, .featured-events .left, .social-feeds .left {
	width: 13.28%;
}

.latest-news .right, .events .right, .community-events .right, .featured-events .right, .social-feeds .right {
	width: 82.72%;
}

/* Feat */

.featured-events .NoThumb {
	background: #CCC;
	display: block;
	padding: 65% 0 0 0;
}

.featured-events .info {
	color: #BBB;
}

.featured-events .info .author {
	color: #e62c13;
	font-weight: 600;
}

.featured-events .info .date {
	color: #666;
}

.featured-events .info .author:after, .featured-events .info .date:before {
	content: '\a0';
}

.featured-events .name {
	font-size: 14px;
	font-size: 1.4rem;
	padding: 0 0 0.9em 0;
}

/* Blog */

.latest-news {
	background: #333;
	color: #DDD;
}

.latest-news .three, .latest-news .three:nth-child(n) {
	margin: 0;
	width: 33.3333%;
}

.latest-news .three .image .NoThumb {
	background: #CCC;
	padding: 56.25% 0 0 0;
}

.latest-news .three .title {
	border: none;
	font-size: 1.6rem;
	min-height: 0;
	padding: 0;
}

.latest-news .three .text {
	padding: 1.35em 1.8em 1.35em 0;
}

.latest-news .three .text .summary {
	padding: 0.45em 0;
}

.latest-news .three .text .summary p {
	max-height: 5.4em;
	overflow: hidden;
	padding: 0;
}

.post {
	position: relative;
}

.post .image {
	position: relative;
}

.post .thumb {
	display: block;
	position: relative;
}

.post .NoThumb {
	background: #CCC;
	display: block;
	padding-top: 54.545454545454545454545454545455%;
}

.post .image .placeholder, .post .image .lazy-holder, .post .image .lazy-responsive {
    display: block !important;
	min-width: 100%;
}

.post .image .caption {
	background: #e62c13;
	bottom: 0;
	color: #FFF;
	display: block;
	font-size: 17px;
	font-size: 1.5455rem;
	font-weight: 600;
	left: 0.675em;
	line-height: 1.5em;
	padding: 0 0.45em;
	position: absolute;
	text-transform: uppercase;
	z-index: 4;
}

.post .image [data-dimensions]:after {
	text-align: right;
}

.post .author {
	font-size: 12px;
	font-size: 1.0909rem;
	font-weight: 600;
	padding: 0;
}

.post .date {
	color: #999;
	padding: 0;
}

.post .text {
	padding: 0.9em 1.35em 3.6em 1.35em;
	text-align: left;
}

.post .title {
	border: none;
	color: #222;
	font-size: 17px;
	font-size: 1.5455rem;
	line-height: 1.8em;
	padding: 0;
	min-height: 0;
	text-transform: none;
}

.post .title a {
	color: #222;
	text-decoration: none;
}

.post .boxLink {
	box-shadow: 0 -1.35em 1.35em -1.35em #FFF;
	bottom: 0;
	left: 0;
	padding: 0;
	position: absolute;
	right: 0;
}

.top.post .boxLink {
	left: 48%;
}

.post .boxLink a {
	display: block;
	padding: 0.9em 0;
}

.post .meta a {
	text-decoration: none;
}

.post .UserThumb {
	border-radius: 50%;
	color: #FFF;
	cursor: default;
	font-size: 24px;
	font-size: 2rem;
	float: left;
	line-height: 1.8em;
	margin-right: 0.45em;
	text-align: center;
	width: 1.8em;
}

.blog aside .search {
	background: #222;
	color: #FFF;
	overflow: hidden;
	position: relative;
}

.blog aside .bg {
	bottom: 0;
	left: 0;
	position: absolute;
	right: 0;
	z-index: 1;
}

.blog aside .search input {
	background: none;
	box-shadow: none;
	color: #FFF;
	outline: none;
}

.blog aside .search input:focus {
	box-shadow: none;
	outline: none;
}

.blog aside .search #Search {
	display: inline-block;
	vertical-align: bottom;
	width: 180px;
	width: calc(100% - 4.05em - 5px);
}

.blog aside .search form {
	padding: 2.7em 1.8em;
	position: relative;
	z-index: 2;
}

.blog aside .search form .lazy-holder {
	display: inline-block;
	max-width: 2.7em;
	max-width: 2.7rem;
	min-width: 0;
	vertical-align: bottom;
}

.blog aside .search form div {
	border-bottom: 1px solid #FFF;
}

/* Blarchive */

.BlogArchive {
	padding: 1.8em 0;
}

.blog aside .title {
	border: none;
	border-bottom: 0.45em solid #000;
	color: #000;
	font-size: 16px;
	font-size: 1.6rem;
	min-height: 0;
	padding: 0.45em 0;
	text-align: right;
	width: auto;
}

.blog aside nav {
	font-size: 13px;
	font-size: 1.1818rem;
	font-weight: 600;
	line-height: 1.8em;
	text-align: left;
}

.blog aside nav li + li {
	border-top: 1px solid #CCC;
}

.blog aside nav li a {
	display: block;
	padding: 0.45em 0;
	text-decoration: none;
}

/* Event List */

.events .sub .left {
	width: 32%;
}

.events .sub .left a {
	display: block;
}

.events .sub .NoThumb {
	background: #CCC;
	display: block;
	padding: 91.5% 0 0 0;/* 412, 377 */
}

.events .sub .right {
	width: 64%;
}

.events .sub .info {
	border-left: 0.25em solid #e62c13;
	font-family: 'Barlow Condensed', sans-serif;
	font-size: 20px;
	font-size: 2rem;
	font-weight: 600;
	letter-spacing: -0.03em;
	line-height: 1.2em;
	padding: 0 0 0 0.5em;
	text-transform: uppercase;
}

.event .summary {
	margin: 1.8em 0;
	max-height: 5.4em;
	overflow: hidden;
	position: relative;
}

.event .summary:after {
	content: '';
	background: linear-gradient(90deg, rgba(255,255,255,0), #FFF);
	height: 1.8em;
	position: absolute;
	top: 3.6em;
	right: 0;
	width: 180px;
}

.event .summary p {
	padding: 0;
}

/* Community Events */

.community-events {
	background: #222;
	color: #FFF;
}

.crumbtrail + .community-events {
	padding-top: 5.4em;
}

.community-events .hideForSomeReason {
	max-height: 640px;
	max-height: 75vh;
	overflow: auto;
}

.community-events .event {
	padding: 1.35em;
}

.community-events .event + .event {
	border-top: 1px solid rgba(255,255,255,0.1);
}

.community-events .inactive {
	background: repeating-linear-gradient(45deg, #222 0, #222 2em, #333 2em, #333 4em);
}

.community-events .event .left {
	color: #e62c13;
	font-weight: 600;
    width: 25%;
}

.community-events .event .right {
    width: 71%;
}

.community-events .event h4 {
	border: none;
	font-size: 18px;
	font-size: 1.8rem;
	line-height: 1.5em;
	min-height: 0;
	padding: 0;
	text-transform: none;
}

.community-events .event .info {
	color: #e62c13;
	padding: 0;
}

.community-events .event .summary {
	margin: 0.45em 0;
}

.community-events .event .summary:after {
	background: linear-gradient(90deg, rgba(32,32,32,0), #222);
}

.submit-event {
	background: #F5F5F5;
}

.submit-event .title, .submit-event h1, .submit-event h2, .submit-event h3, .submit-event h4, .submit-event h5, .submit-event h6 {
	border: none;
	min-height: 0;
	padding: 0;
}

/* Hideous Social Media Feeds */

.social-feeds .feed {
	float: left;
}

.social-feeds .facebook, .social-feeds .twitter {
	width: 50%;
}

.social-feeds .instagram {
	width: 22%;
}

.social-feeds .network {
	background: #000;
	color: #FFF;
	font-family: 'Barlow Condensed', sans-serif;
	font-size: 16px;
	font-size: 1.2rem;
	font-weight: 600;
	line-height: 1.8em;
	padding: 0.225em 0.675em;
	text-transform: uppercase;/* SHOUTING */
}

.social-feeds .facebook .network {
	background: #4267b2;
}

.social-feeds .twitter .network {
	background: #55acee;
}

.social-feeds .instagram .network {
	background: linear-gradient(170deg, #3771c8 0%,rgba(102,0,255,0) 66%), radial-gradient(circle at 0% 100%, #ffdd55 0%,#ffdd55 10%,#ff543e 48%,#c837ab 100%);
}


/* Data Nav */

.dataNav {
	padding: 0.45em 0;
	text-align: left;
}

.dataNav a {
	border: 1px solid;
	color: #000;
	font-size: 16px;
	line-height: 1.8em;
	display: inline-block;
	padding: 0.225em 0.9em;
	text-decoration: none;
}

.dataNav a + a {
	border-left: none;
}

.dataNav a:hover {
	background: #F0F0F0;
	color: #666;
}

.dataNav .selected, .dataNav .selected:hover {
	background: #000;
	border-color: #000;
	color: #FFF;
	cursor: default;
	text-decoration: none;
}

/* Footer */

footer {
	background: #222;
	color: #CCC;
	padding: 5.4em 1.8em;
}

footer a {
	color: #CCC;
}

footer a:hover {
	color: #EEE;
}

footer a:active {
	color: #AAA;
}

footer nav, footer p {
	padding: 0 0 1.8em 0;
}

footer nav li {
	display: inline;
	line-height: 1em;
}

footer nav li + li {
	border-left: 1px solid #CCC;
}

footer nav li a {
	padding: 0 0.9em;
}

footer .social a {
	background: #555;
	display: inline-block;
	padding: 0.45em;
	vertical-align: bottom;
}

footer .social a:hover {
	background: #777;
}

footer .social a + a {
	margin: 0 0 0 0.9em;
}

footer .social .lazy-holder {
	display: block;
}

footer .social .facebook:hover {
	background: #4267b2;
}

footer .social .twitter:hover {
	background: #55acee;
}

footer .social .instagram:hover {
	background: linear-gradient(160deg, #3771c8 0%,rgba(102,0,255,0) 66%), radial-gradient(circle at 0% 100%, #ffdd55 0%,#ffdd55 10%,#ff543e 48%,#c837ab 100%);
}

/* View As Guest button */

.viewguest {
	background: #354961;
	border-left: 0.45em solid #e62c13;
	bottom: 0.9em;
	box-shadow: 0 5px 10px rgba(0,0,0,0.4);
	color: #FFF;
	display: inline-block;
	font-family: "Courier New", Courier, serif;
	font-size: 16px;
	font-weight: 300;
	padding: 0.9em 1.8em;
	position: fixed;
	right: 0;
	text-decoration: none;
	text-transform: none;
	z-index: 2000;
}

@media (max-width: 990px) {

	.radio-player, .no-bodys-hero .radio-player {
		background: #222;
		padding: 1.8em;
	}
	
	.no-bodys-hero .radio-player + .crumbtrail {
		padding-top: 1.8em;
	}
	
	#RadioPlayer {
		position: static;
	}
}

@media (max-width: 900px) {

	.social-feeds .feed {
		float: none;
		margin: 0;
		width: auto;
	}
	
	.latest-news .wrapper > .left, .events .wrapper > .left, .events .event > .left, .community-events .wrapper > .left, .featured-events .wrapper > .left, .latest-news .wrapper > .right, .events .event > .right, .events .wrapper > .right, .community-events .wrapper > .right, .featured-events .wrapper > .right, .social-feeds .left, .social-feeds .right {
		float: none;
		margin: 0;
		width : auto;
	}

}

@media (max-width: 700px) {
	
	.community-events .event .left, .community-events .event .right, .events .event .left, .events .event .right {
		float: none;
		margin: 0;
		width : auto;
	}
	
	.events .event + .event {
		border-top: 1px solid rgba(0,0,0,0.2);
	}
	
	.community-events .event + .event {
		border-top: 1px solid rgba(255,255,255,0.2);
	}

}

@media (max-width: 600px) {

	.featured-events .three, .featured-events .three:nth-child(n) {
		float: none;
		margin: 0;
		width : auto;
	}

}

@media (max-width: 480px) {

	footer nav li {
		border: 1px solid #CCC;
		border-radius: 0.225em;
		display: inline-block;
		line-height: 1.8em;
		margin-bottom: 0.45em;
	}
	
	footer nav li + li {
		margin-left: 0.45em;
	}
	
	.contact .left, .contact .right {
		float: none;
		margin: 0;
		width: auto;
	}

	.social-feeds .left, .social-feeds .right {
		float: none;
		margin: 0;
		width: auto;
	}
	
	#RadioPlayer {
		background: #e62c13;
	}
	
	#RadioPlayer .left, #RadioPlayer .right {
		float: none;
		margin: 0;
		width: auto;
	}
	
}