/* Color Tokens */
#primary {
	color: #00548B; /* $primary */
}

#secondary {
	color: #D0282E; /* $secondary */
}

#tertiary {
	color: #3F79BC; /* $tertiary */
}

#light {
	color: #EFECE4; /* $light */
}

#dark {
	color: #53616F; /* $dark */
}

#white {
	color: #FFFFFF; /* $white */
}

#text {
	color: #2B2E30; /* $text */
}
/* End Color Tokens */

/* Featured Events [Events Parent] */
.feat-events {
	padding-left: 0;
	padding-right: 0;
	background-image: url(/images/event-images/featured-events-bg.jpg);
	color: #FFFFFF;
	background-position: top;
}

.feat-events header.flex {
	margin-bottom: 2.5rem;
}

.feat-events h4 {
	color: #FFFFFF;
}

.no-touch .feat-events header.flex .btn,
.no-touch .feat-events header.flex .btn:hover,
.feat-events header.flex .btn,
.feat-events header.flex .btn:hover {
	padding-top: 1.2em;
	padding-bottom: 1.2em;
	display: none;
}

.feat-events ul.flex {
	-webkit-justify-content: space-around;
	-ms-flex-pack: distribute;
	justify-content: space-around;
	-webkit-align-items: flex-start;
	-ms-flex-align: start;
	align-items: flex-start;
}

.feat-events ul.flex li {
	width: calc(25% - .84em);
	line-height: 1.2;
}

.feat-events ul.flex li + li {
	margin-left: 1.111em;
}

.feat-events ul.flex li:nth-child(4n - 3) {
	margin-left: 0;
}

.feat-events ul.flex li a {
	color: #FFFFFF;
	display: block;
}

.feat-events figure {
	position: relative;
	margin-bottom: 2.2em;
}

.feat-events figure:before {
	content: '';
	display: block;
	padding-bottom: 56.25%;
}

.feat-events figure img {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background-size: cover;
	background-position: 50%;
	background-color: #FFFFFF;
}

.feat-events figure time {
	position: absolute;
	bottom: 0;
	left: 0;
	background-color: rgba(161, 14, 17, .8);
	font-weight: 700;
	padding: 1em;
	line-height: 1;
	font-size: .889em;
	text-transform: uppercase;
}

.feat-events ul.flex li small {
	font-size: 1em;
	display: block;
	font-family: 'Source Sans 3', sans-serif;
}

.feat-events ul.flex li strong {
	margin: .5em 0 1.11em;
	display: block;
	font-size: 1.333em;
}

.feat-events ul.flex li b.btn.no-background {
	text-transform: uppercase;
	color: #FFFFFF;
	padding: 0;
}

.feat-events ul.flex li b.btn.no-background:hover,
.feat-events ul.flex li a:hover b.btn.no-background:hover,
.no-touch .feat-events ul.flex li a b.btn.no-background {
	padding-top: 0;
	padding-bottom: 0;
	color: #FFFFFF;
}

.feat-events ul.flex li b.btn.no-background:after {
	background-image: url(/cms/svg/icon_57597.FFFFFF.svg);
	display: inline-block;
	vertical-align: middle;
	transition: transform .5s ease;
}

.feat-events ul.flex li a:hover b.btn.no-background:after {
	-webkit-transform: translate(.4em, 0);
	-ms-transform: translate(.4em, 0);
	transform: translate(.4em, 0);
}

.feat-events nav {
	position: absolute;
	bottom: 0;
	right: 0;
}
/* End Featured Events [Events Parent] */

/* Featured events - Log in stuff and things */
.feat-events .header-tab {
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	position: relative;
	background-color: #d02b2e;
	text-transform: none;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	padding: 1em;
	overflow: visible;
	z-index: 1;
}

.feat-events .header-tab:hover {
	background-color: #d02b2e;
}

.feat-events .header-tab > ul {
	position: absolute;
	top: 100%;
	right: 0;
	visibility: hidden;
	transition: visibility .4s;
}

.feat-events .header-tab:hover > ul {
	visibility: visible;
}

.feat-events .header-tab > ul li {
	border-top: solid 1px rgba(255,255,255,.3);
	background-color: #d02b2e;
	margin-top: -1em;
	opacity: 0;
	transition: opacity .3s, margin-top .3s;
}

.feat-events .header-tab:hover > ul li {
	margin-top: 0;
	opacity: 1;
}

.feat-events .header-tab > ul li a {
	display: block;
	padding: .875em 1em;
	background-color: #d02b2e;
	color: #FFFFFF;
	transition: background-color .5s;
}

.feat-events .header-tab > ul li a:hover {
	background-color: #F73E3E;
}

.feat-events .header-tab icon {
	font-size: 1.5em;
	margin-right: .5em;
}

.feat-events .header-tab.btn:after {
	content: '\e0fe';
	font-family: 'icomoon-ult';
	display: inline-block;
	transition: transform .4s ease 0s;
	margin-left: 0.786em;
	vertical-align: -0.15em;
}
/* End Featured events - Log in stuff and things */

/* Responsive [1650px] */
@media screen and (max-width: 1650px) {
}
/* End Responsive [1650px] */

/* Responsive [1500px] */
@media screen and (max-width: 1500px) {
}
/* End Responsive [1500px] */

/* Responsive [1200px] */
@media screen and (max-width: 1200px) {
	.feat-events {
		padding: 10% 0;
	}

	.feat-events ul.flex li:last-child {
		display: none;
	}

	.feat-events ul.flex li {
		width: calc(33.4% - .833em);
	}
}
/* End Responsive [1200px] */

/* Responsive [1000px] */
@media screen and (max-width: 1000px) {
	.feat-events ul.flex li {
		width: 100%;
	}

	.feat-events ul.flex li + li {
		margin-top: 1.111em;
		margin-left: 0;
	}

	.feat-events ul.flex li a {
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		-webkit-align-items: center;
		-ms-flex-align: center;
		align-items: center;
	}

	.feat-events ul.flex li a figure {
		width: 15em;
		margin-bottom: 0;
	}

	.feat-events ul.flex li a .contents {
		padding-left: 1.111em;
		width: calc(100% - 15em);
	}
}
/* End Responsive [1000px] */

/* Responsive [800px] */
@media screen and (max-width: 800px) {
	.feat-events header.flex .btn {
		font-size: .75em;
	}

	.calendar-list .filters .total-paging {
		width: auto;
	}
}
/* End Responsive [800px] */

/* Responsive [600px] */
@media screen and (max-width: 600px) {
	.feat-events ul.flex li a figure {
		width: 10em;
	}

	.feat-events ul.flex li a figure:before {
		padding-bottom: 85%;
	}

	.feat-events ul.flex li a .contents {
		width: calc(100% - 10em);
	}

	.feat-events ul.flex li strong {
		font-size: 1.2em;
	}
}
/* End Responsive [600px] */

/* Responsive [450px] */
@media screen and (max-width: 450px) {
	.feat-events header.flex {
		-webkit-flex-wrap: nowrap;
		-ms-flex-wrap: nowrap;
		flex-wrap: nowrap;
	}

	.feat-events .header-tab {
		font-size: .75em;
	}

	.feat-events ul.flex li a figure {
		width: 6.75em;
	}

	.feat-events ul.flex li a figure:before {
		padding-bottom: 150%;
	}

	.feat-events ul.flex li a figure time {
		font-size: .889em;
		padding-left: 0;
		padding-right: 0;
		text-align: center;
		width: 100%;
	}

	.feat-events ul.flex li a .contents {
		width: calc(100% - 6.75em);
	}
}
/* End Responsive [450px] */
