/* 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 */

/* Calendar & List UI Tabs [Events Parent] */
.calendar-list {
	padding-top: 0;
	padding-left: 0;
	padding-right: 0;
	position: relative;
	z-index: 3;
}

.calendar-list.tabs {
	background-color: #00548B; /* $primary */
}

.calendar-list > nav {
	padding: 0.5em 0;
}

.calendar-list > nav a,
.calendar-list > nav label {
	color: #FFFFFF; /* $white */
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
	max-width: calc(50% - 0.25rem);
	font-size: 0.778em;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	position: relative;
	z-index: 1;
	padding: 1em;
	transition: 0.5s ease;
	outline: none;
	cursor: pointer;
}

.calendar-list > nav label {
	display: block;
	text-align: center;
}

.calendar-list > nav > ul {
}

.calendar-list > nav > ul > li.half {
	width: calc(50% - 0.25rem);
	position: relative;
}

.calendar-list > nav input[type='radio'] {
	position: absolute;
	opacity: 0;
}

.calendar-list > nav > ul > li.half label {
	width: 100%;
	max-width: 100%;
}

.calendar-list > nav a:hover,
.calendar-list > nav label:hover {
	color: #D0282E; /* $secondary */
}

.calendar-list > nav a:before,
.calendar-list > nav label:before {
	content: '';
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background-color: #3F79BC; /* $tertiary */
	z-index: -1;
	transition: 0.5s ease;
}

.calendar-list > nav a:hover:before,
.calendar-list > nav label:hover:before {
	background-color: #dfeaf2;
}

.calendar-list > nav icon {
	margin-right: 0.5em;
}

.calendar-list > nav .active,
.calendar-list > nav input:checked + label {
	color: #D0282E; /* $secondary */
}

.calendar-list > nav .active:before,
.calendar-list > nav input:checked + label:before {
	height: 140%;
	background-color: #dfeaf2;
}

.calendar-list > nav .active icon {
}

.calendar-list .cms-zone .el-tab-panel {
	display: block;
}

.calendar-list .el-tab-panel {
	outline: none;
	display: none;
	z-index: -1;
}

.calendar-list .el-tab-panel.active {
	display: block;
	padding-bottom: 4.22em;
	z-index: 1;
}

.calendar-list .btn.back {
	padding: 1.444em 0 1.444em 0.5em;
}

.calendar-list .btn.back:hover {
	padding: 1.444em .5em 1.444em 0;
}

.calendar-list .btn.back:after {
	-webkit-transform: rotateY(180deg);
	-ms-transform: rotateY(180deg);
	transform: rotateY(180deg);
	-webkit-order: -1;
	-ms-flex-order: -1;
	order: -1;
	margin-right: 0.5em;
	margin-left: 0;
}
/* End Calendar & List UI Tabs [Events Parent] */

/* Calendar List - Paging */
.calendar-list .filters.paging-bottom {
	margin-top: 2.222em;
}
/* End Calendar List - Paging */

/* Calendar Tab Panel */
.calendar-list header {
	text-align: center;
}

.calendar-list h4 {
	font-weight: 300;
	color: #00548B; /* $primary */
}

.calendar-list header + nav {
	margin-top: -2em;
	margin-bottom: 1em;
}
/* End Calendar Tab Panel */

/* List Tab Panel */
.list-view {
	padding-top: 4.444em;
	padding-bottom: 4.444em;
}

.list-view > ul > li + li {
	margin-top: 3.5em;
}

.list-view figure {
	position: relative;
	min-height: 15em;
	width: 20em;
	-webkit-flex: 0 0 auto;
	-ms-flex: 0 0 auto;
	flex: 0 0 auto;
	max-width: 50%;
	max-height: 20em;
	margin-right: 2em;
}

.list-view li {
	position: relative;
}

.list-view li > a.flex {
	-webkit-flex-wrap: nowrap;
	-ms-flex-wrap: nowrap;
	flex-wrap: nowrap;
}

.list-view li > a.btn {
	position: absolute;
	right: 0;
	bottom: -.7em;
}

.list-view a > time {
	width: 25%;
	text-align: center;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-flex-direction: column;
	-ms-flex-direction: column;
	flex-direction: column;
	font-size: 1.333em;
	line-height: 1.5;
	font-weight: 600;
	color: #3e4952;
}

.list-view a > time small {
	display: block;
	font-size: 0.667em;
	color: #727d86;
}

.list-view .list-post {
	-webkit-flex: 1 1 auto;
	-ms-flex: 1 1 auto;
	flex: 1 1 auto;
	padding-left: 2.222em;
	border-left: solid 1px #dfeaf2;
	width: 75%;
}

.list-view .list-post time {
	display: none;
	color: #727d86;
}

.list-view img {
	display: block;
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background-size: cover;
	background-position: 50% 50%;
}

.list-view .list-post ul {
	-webkit-justify-content: flex-start;
	-ms-flex-pack: start;
	justify-content: flex-start;
	padding: 1.111em 0;
	-webkit-flex-wrap: nowrap;
	-ms-flex-wrap: nowrap;
	flex-wrap: nowrap;
}

.list-view .list-post ul li + li {
	margin-left: 1.111rem;
	padding-left: 1.111rem;
	border-left: solid 1px #727d86;
}

.list-view .list-post ul li {
	font-size: 0.778em;
	font-weight: 600;
	color: #727d86;
	line-height: 1;
}

.list-view li strong {
	display: block;
	font-size: 1.333em;
	color: #00548B;
	font-weight: 600;
	line-height: 1.25;
}

.list-view li p {
	line-height: 1.65;
	color: #3E4953; /* darken($dark,25%) */
}

.list-view li .btn {
	width: auto;
	display: -webkit-inline-flex;
	display: -ms-inline-flexbox;
	display: inline-flex;
	margin: 0;
}

.no-touch .list-view li a:hover .btn,
.no-touch .list-view li a .btn {
	padding-bottom: 0;
}

.list-view li .btn + .btn {
	margin-left: 2.5em;
}
/* End List Tab Panel */

/* Event Calendar Styles */
.calendar-list.calendar {
	padding-top: 4.444em;
	padding-bottom: 4.444em;
}

.calendar-list.calendar header {
	-webkit-align-items: flex-end;
	-ms-flex-align: end;
	align-items: flex-end;
	padding-bottom: 1.111em;
}

.calendar-list.calendar header h4 {
	font-weight: 500;
}

.calendar-list.calendar .calendar-period {
	line-height: 1;
}

.calendar-list.calendar footer.calendar-period {
	padding-top: 1.111em;
}

.calendar-list.calendar .calendar-period ul {
	-webkit-justify-content: flex-start;
	-ms-flex-pack: start;
	justify-content: flex-start;
}

.calendar-list.calendar .calendar-period ul li + li {
	margin-left: 1.111em;
	padding-left: 1.111em;
	border-left: solid 1px #dfeaf2;
}

.calendar-list.calendar .calendar-period ul a {
	line-height: 1;
	color: #D0282E;
}

.calendar-list.calendar .calendar-period ul a:hover {
	color: #00548B;
}

.calendar-list.calendar .calendar-period ul a icon {
	display: inline-block;
	vertical-align: middle;
}

.calendar-list.calendar .calendar-period icon[svg='57599'] {
	margin-right: .565em;
}

.calendar-list.calendar .calendar-period icon[svg='57597'] {
	margin-left: .565em;
}

.calendar-list.calendar .calendar-period div.fourth {
	text-align: right;
}

.calendar-list.calendar .calendar-period .reset {
	font-weight: 600;
	color: #D0282E;
}

.calendar-list.calendar .calendar-period .reset:hover {
	color: #00548B;
}

.calendar-list.calendar table {
	border-collapse: collapse;
	table-layout: fixed;
	width: 100%;
}

.calendar-list.calendar table th {
	background-color: #095588;
	color: #FFFFFF;
	height: 2.778em;
	vertical-align: middle;
}

.calendar-list.calendar table th:nth-last-child(2),
.calendar-list.calendar table th:last-child {
	background-color: #427aba;
}

.calendar-list.calendar table th {
	border-left: solid 1px #427aba;
	font-weight: 600;
}

.calendar-list.calendar table th:last-child {
	border-right: solid 1px #427aba;
	border-left-color: #095588;
}

.calendar-list.calendar table td {
	border: solid 1px #dfeaf2;
	font-family: 'Source Sans 3', sans-serif;
	vertical-align: top;
	height: 13.5em;
	padding-bottom: .625em;
}

.calendar-list.calendar table td.calendar-other {
	background-color: #f9fbfc;
}

.calendar-list.calendar table td.today {
	box-shadow: inset 0 0 0 1px #00548B;
	background-color: #dfeaf2;
}

.calendar-list.calendar table td:first-child {
	border-left: solid 1px #427aba;
}

.calendar-list.calendar table td:last-child {
	border-right: solid 1px #427aba;
}

.calendar-list.calendar table tr:last-child td {
	border-bottom: solid 1px #427aba;
}

.calendar-list.calendar table td span {
	background-color: #dfeaf2;
	font-weight: 600;
	font-family: 'Montserrat', sans-serif;
	font-size: 1rem;
	display: block;
	line-height: 1;
	padding: .5em 0;
	width: 2em;
	text-align: center;
	color: #427aba;
}

.calendar-list.calendar table td.calendar-other span {
	background-color: transparent;
}

.calendar-list.calendar table td.today span {
	background-color: #095588;
	color: #FFFFFF;
}

.calendar-list.calendar table td a {
	display: block;
	padding: .625em;
	font-weight: 600;
	line-height: 1.2;
	font-size: .889em;
}

.calendar-list.calendar table td a small {
	font-size: .875em;
	color: #53616e;
	font-weight: 400;
	display: inline-block;
}
/* End Event Calendar Styles */

/* Events Calendar - Profile Events */
.calendar-list.profile {
	padding-top: 0;
}

.calendar-list.profile > nav {
	background-color: #095588;
	margin-bottom: 4.444em;
}

.calendar-list.profile > nav input:checked + label:before,
.calendar-list.profile > nav label:hover:before {
	background-color: #FFFFFF;
}
/* End Events Calendar - Profile Events */

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

/* Responsive [1500px] */
@media screen and (max-width: 1500px) {
	.list-view a > time {
		width: 20%;
	}

	.list-view .list-post {
		width: 80%;
	}

	.calendar-list > nav {
	}

	.calendar-list .el-tab-panel {
	}
}
/* End Responsive [1500px] */

/* Responsive [1200px] */
@media screen and (max-width: 1200px) {
	.calendar-list .el-tab-panel {
	}

	.calendar-list > nav {
	}
}
/* End Responsive [1200px] */

/* Responsive [1000px] */
@media screen and (max-width: 1000px) {
	.calendar-list.tabs {
		display: none;
	}

	.list-view .list-post ul {
		display: block;
		padding: 1.111em 0;
	}

	.list-view .list-post ul li + li {
		margin-left: 0;
		padding-left: 1.2em;
		border-left: none;
		margin-top: .565em;
	}
}
/* End Responsive [1000px] */

/* Responsive [800px] */
@media screen and (max-width: 800px) {
	.list-view a > time {
		display: none;
	}

	.list-view .list-post time {
		display: block;
	}

	.list-view .list-post {
		border: none;
		padding-left: 0;
	}

	.calendar-list.profile > nav {
		margin-bottom: 2.222em;
	}

	.list-view {
		padding-bottom: 2.222em;
	}

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

	.events-calendar.header .bread {
		padding-bottom: 2em;
	}
}
/* End Responsive [800px] */

/* Responsive [600px] */
@media screen and (max-width: 600px) {
	.list-view figure {
		display: none;
	}

	.calendar-list header + nav {
		margin-top: 0;
	}
}
/* End Responsive [600px] */

/* Responsive [450px] */
@media screen and (max-width: 450px) {
	.calendar-list.profile > nav {
		padding: ;
	}
}
/* End Responsive [450px] */
