@import url('https://fonts.googleapis.com/css?family=Open+Sans:300,400,600');

:root {
	--cover-height: 530px;
}

html, body {
	font-family: "Open Sans", "Lucida Grande", Lucida, Verdana, sans-serif !important;
	font-weight: 300;
	-webkit-font-smoothing: auto !important;
	letter-spacing: initial !important;
	margin: 0;
	overflow-x: hidden;
}

p{
	word-wrap: break-word;
}

body.modal-active{
	overflow:hidden;
}

/*body:not(.plugin){
	padding-top: 46px;
}*/

body.plugin section {
	background-color: #ecf0f1 !important;
}

body.plugin section .bounds {
	padding: 30px !important;
	box-sizing: border-box !important;
}

.input-group-btn {
	padding: 0;
}

.input-group-btn .btn {
	margin: 0;
	padding: 16px;
    line-height: 0px;
}


ul.menu {
	margin-bottom: 6px;
}

.left {
	float: left;
}

.right {
	float: right;
}

.bold {
	font-weight: 600 !important;
}

.print {
	display: none;
}

.no-print {
	display: block;
}

article.center {
	display: table;
	margin: 0 auto;
	text-align: center;
}

header .bar,
section .bounds {
	margin: 0 auto;
	max-width: 960px;
}

section .bounds {
	padding: 100px 0;
}

section.first-section {
	margin-top:100px;
}

@media(max-width:1024px) {

	section .bounds > h1{
		font-size: 21px !important;
		margin-bottom: 20px !important;
	}

	section.strip h1{
		margin-bottom:15px !important;
	}

	section.about .bounds,
	section.agenda .bounds,
	section .bounds {
		padding: 30px 0 !important;
	}

	section .bounds > p{
		font-size: 12px !important;
	}
}

section.header-body .countdown {
	display: flex;
	opacity: 0;
	pointer-events: none;
	justify-content: center;
	font-size: 64px;
	width:100%;
	font-weight: 600;
	transition: all 0.5s ease;
	margin-bottom: 20px;
}

.countdown.active {
	opacity:1 !important;
}

.countdown .countdown-headline {
	font-size: 16px;
	width:100%;
	text-transform: uppercase;
	text-align: center;
	margin-bottom:30px;
	word-wrap: break-word;
}

.countdown .countdown-sep {
	width:44px;
	text-align: center;
	margin-top: 10px;
}

.countdown .countdown-item {
	position:relative;
}

.countdown .countdown-label {
	left: 0px;
	font-size: 12px;
	font-weight: 800;
	position:absolute;
	width:100%;
	text-align: center;
	text-transform: uppercase;
	word-wrap: break-word;
}

.countdown span:last-child {
	margin-top: 10px;
	display: block;
}


section.about {
	padding: 0 10px;
}

section.error {
	padding: 20px 0;
	text-align: center;
}

section.error h2 {
	margin: 0;
}


/* PHOTOS */

.photos .photos-container {
	display: flex;
    align-items: center;
    justify-content: space-between;
}

.photos .photo {
	display: inline-block;
	margin: 2.5px 5px;
	overflow: hidden;
	position: relative;
	width: 30%;
	box-shadow: 1px 1px 8px -2px rgba(78,78,78,0.78);
	border-radius: 5px;
}

.photos .photo img {
	width: 100%;
	object-fit: cover;
}

.more-btn{
	width: 93px;
	height: 24px;
	border-radius: 100px;
	background-color: #ffffff;
	border: solid 1px #3178ca;
	font-size: 10px;
	font-weight: 600;
	text-align: center;
	color: #3178ca;
	cursor:pointer;
	outline:none;
	text-transform: uppercase;
	font-family: "Open Sans", "Lucida Grande", Lucida, Verdana, sans-serif !important;
	position: absolute;
	bottom:22px;
	left: 50%;
	transform: translateX(-50%);
	transition: all 0.3s ease;
}

section.events .filters {
	padding: 0 20px;
}

section.events ul.events {
	list-style: none;
	padding: 0;
	width: 900px;
	display: table;
	margin: 40px auto;
	padding: 0 20px;
}

section.events ul.events li {
	margin: 0 auto;
	display: table;
	padding: 10px 0;
	box-sizing: border-box;
}

section.events ul.events li a,
section.events ul.events li a:link,
section.events ul.events li a:visited,
section.events ul.events li a:active,
section.events ul.events li a:hover {
	display: block;
	cursor: pointer;
	color: #222222;
	width: 100%;
}

section.events ul.events li .cover {
	width: 100%;
	height: 135px;
	display: block;
	border-radius: 4px 4px 0px 0px;
	object-fit: cover;
}

section.events ul.events li .details {
	display: grid;
	padding: 10px;
	background-color: #fefefe;
	border-radius: 0px 0px 4px 4px;
	width: 100%;
}

section.events ul.events li .details .name {
	display: block;
	white-space: nowrap;
	word-break: break-word;
	overflow: hidden;
	text-overflow: ellipsis;
	font-size: 18px;
	color: #4a4a4a;
	font-weight: 600;
	word-wrap: break-word;
	margin: 10px 0;
}

section.events ul.events li .details .date {
	margin-top: 5px;
	display: block;
	font-size: 16px;
	color: #808080;
	word-wrap: break-word;
}

section.events ul.events li .details .location {
	margin-top: 5px;
	display: block;
	font-size: 16px;
	color: #808080;
	white-space: nowrap;
	word-break: break-word;
	overflow: hidden;
	text-overflow: ellipsis;
}

section.events ul.pagination {
	display: table;
	margin: 0 auto;
}

section.events ul.pagination li {
	cursor: pointer;
}


@media(max-width:1024px) {

	section.download {
		height: auto !important;
	}

	section.download .download-content{
		height: auto !important;
	}

	section.download .download-content .headline{
		margin-top:50px;
	}

	section.download .download-content .available{
		padding-bottom:50px;
	}
}

.eventbriteContainer {
	margin-top: 40px;
}

.next-btn{
	width: 50px;
	height: 50px;
	border-radius: 8.7px;
	border: solid 2.1px #ffffff;
	background:none;
	justify-content: center;
	display:flex;
	cursor:pointer;
	outline:none;
}

.triangle{
	width: 0;
	height: 0;
	display: inline-block;
	border-style: solid;
	border-width: 8px 0 8px 10px;
	border-color: transparent transparent transparent #ffffff;
}

/*others*/

.nav > li > a:focus, .nav > li > a:hover{
	background: none !important;
}

section.header-body .bounds {
	text-align: center;
}

section.header-body .bounds .cover-date {
	color: #222;
	font-size: 24px;
}

section.header-body .bounds .cover-date i {
	margin: 0 15px;
}

section.header-body .bounds .cover-date i:last-child {
	margin-left: 20px;
}

section.header-body .bounds h1 {
	color:#222 !important;
}

section.header-body .bounds button {
	width: 129px;
	height: 40px;
	text-align: center;
	font-size: 14px;
	font-weight: 900;
	border:2px solid #222;
	background:none;
	border-radius:4px;
	color:#222 !important;
	margin-top:20px;
	outline:none;
	cursor:pointer;
	transition: all 0.3s ease;
	word-wrap: break-word;
}

@media screen and (max-width: 960px) {
	.download-content{
		padding: 0px 10px;
	}
}

@media screen and (max-width: 1024px) {
	header .bar .left {
		margin-left: 20px;
	}


	section.about .bounds,
	section.agenda .bounds {
		padding: 100px 0px;
		box-sizing: border-box;
	}
}

@media screen and (max-width: 550px) {
	section.map h2 a {
		clear:both;
		margin-left:0;
	}
}

/* DATE TABS */

ul.tabs li.active a,
ul.tabs li.active a:hover,
ul.tabs li.active a:focus {
	border-radius: 4px;
	background: none;
}

ul.tabs li.active .month {
	background-color:#ffffff !important;
}

ul.tabs li.active .day {
	background-color:#005997;
	color:#ffffff !important;
	border:none;
}

.show {
	display:inline-block;
}

.clear {
	clear: both;
}

section[class^='extra'] {
	padding: 0 10px;
}

#directory .bounds {
	width: auto !important;
	max-width: min(1200px, calc(100% - 80px));
}

#directory ul.events {
	width: 100%;
}

#directory section.cover,
#directory section.cover:before {
	height: 400px;
}
#directory section.events {
	padding-top: 40px;
}

section.events ul.events li {
	box-shadow: 0 3px 10px 0 #ACB9BD88
}

section.events ul.events div {
	transition: transform .15s ease-in;
}
