/**
 * The Events Calendar Pro Full Stylesheet
 * (Some of these styles may override your current theme's styles)
 *
 * To add your own custom styles, create a stylesheet with the name
 * tribe-events-pro.css in the tribe-events/pro/ directory of your theme.
 * Your new stylesheet will be loaded after our own stylesheet.
 *
 * To replace our stylesheet altogether, you can use the 'tribe_events_pro_stylesheet_url' filter.
 *
 * @package TribeEventsCalendarPro
 *
 */

:root {
	--featured-event-bg: #0ea0d7;
}

@define-mixin featured-list-styles {
	.tribe-event-featured {
		color: rgba( 255, 255, 255, .7 );

		.tribe-event-title,
		.tribe-events-title,
		.tribe-events-list-event-title {
			a {
				color: #fff;
			}
		}

		.tribe-events-duration,
		.tribe-events-event-meta {
			color: rgba( 255, 255, 255, .7 );
			font-weight: normal;
		}

		.tribe-events-content {
			color: rgba( 255, 255, 255, .9 );
		}

		a {
			color: rgba( 255, 255, 255, .7 );

			&:active,
			&:hover {
				color: rgba( 255, 255, 255, .9 );
			}
		}
	}
}

/**
 * Presentational classes to separate elements in a list-like view.
 * The 's', 'm' and 'l' suffixes indicate the size of the spacing between the elements: small,
 * medium and large.
 */
.tribe-section-s {
    padding: 5px 0;

	&:first-of-type {
		padding-top: 0;
	}

	&:last-of-type {
		padding-bottom: 0;
	}
}

.tribe-section-m {
    padding: 10px 0;

	&:first-of-type {
		padding-top: 0;
	}

	&:last-of-type {
		padding-bottom: 0;
	}
}

.tribe-section-l {
    padding: 20px 0;

	&:first-of-type {
		padding-top: 0;
	}

	&:last-of-type {
		padding-bottom: 0;
	}
}

.tribe-events-user-recurrence-toggle {
	clear: both;
	display: block;
	font-size: 12px;
	font-style: italic;
	margin-bottom: 15px;
	text-align: center;

	label:hover {
		cursor: pointer;
	}

	input {
		margin-right: 5px;
	}
}

/* = Week Grid Template Styles
   @ Template: Week.php
=============================================*/
/* grid structure */
.tribe-events-grid {
	border: 1px solid #bbb;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
	font-size: 12px;
	margin: 0 auto .6em;
	position: relative;
	width: 100%;

	* {
		-webkit-box-sizing: border-box;
		   -moz-box-sizing: border-box;
		        box-sizing: border-box;
	}

	.tribe-scroller {
		height: 500px;
		overflow: hidden;
		position: relative;
		width: 100%;

		& > .scroller-content {
			bottom: 0;
			left: 0;
			overflow: scroll;
			overflow-x: hidden;
			position: absolute;
			right: 0;
			top: 0;

			&:focus {
				outline: thin dotted;
			}

			&::-webkit-scrollbar {
				display: none;
			}
		}

		& > .scroller-pane {
			background: rgba(0,0,0,.25);
			-webkit-border-radius: 5px;
			   -moz-border-radius: 5px;
			        border-radius: 5px;
			bottom: 0;
			opacity: .01;
			position: absolute;
			right: 0;
			top: 0;
			-webkit-transition: .2s;
			   -moz-transition: .2s;
			     -o-transition: .2s;
			        transition: .2s;
			visibility: hidden\9; /* Target only IE7 and IE8 with this hack */
			width: 10px;
			z-index: 1000;

			& > .scroller-slider {
				background: #444;
				background: rgba(0,0,0,.5);
				-webkit-border-radius: 3px;
				   -moz-border-radius: 3px;
				        border-radius: 3px;
				margin: 0 1px;
				position: relative;
			}
		}
	}

	.tribe-scroller:hover > .scroller-pane,
	.scroller-pane.active {
		opacity: .99;
		visibility: visible\9; /* Target only IE7 and IE8 with this hack */
	}

	.has-scrollbar > .scroller-content::-webkit-scrollbar {
		display: block;
	}

	.tribe-grid-content-wrap .column {
		border-left: 1px solid #bbb;
		display: inline-block;
		float: left;
		text-align: center;
		vertical-align: top;
		width: 14.2857%;
		zoom: 1;
	}

	.type-tribe_events {
		padding: 4px;
	}

	.type-tribe_events.hentry {
		box-shadow: none;
	}

	div[id*='tribe-events-event-'] {
		visibility: hidden;
	}

	.type-tribe_events h3.entry-title {
		color: #333;
		font-size: 12px;
		height: 100%;
		letter-spacing: 0;
		line-height: 1.25;
		margin: 0;
		overflow: hidden;
		padding: 4px 6px;
		text-align: left;
		text-transform: none;
	}

	.type-tribe_events a {
		color: #333;
		display: block;
		font-size: 12px;
		height: 100%;
		line-height: 1.25;
		outline: none;
		overflow: hidden;
		padding: 0;
		width: 100%;
	}

	.tribe-grid-content-wrap .column {
		position: relative;
	}
}

/* grid header */
.tribe-grid-header {
	background-color: #ddd;
	border-bottom: 1px solid #bbb;

	.column {
		letter-spacing: 1px;
		padding: 1em 0;
		text-align: center;
		text-transform: uppercase;
	}

	.column a {
		color: #333;
		font-weight: bold;
	}
}

/* columns & structure */
.tribe-week-grid-wrapper {
	height: 500px;
	overflow-y: scroll;
	position: relative;
}

.scroller-pane.flashed {
	opacity: .99;
	visibility: visible\9; /* Target only IE7 and IE8 with this hack */
}

.tribe-grid-body {
	overflow: visible;
	position: relative;

	.tribe-events-week-hourly-single {
		margin: 4px;
	}

	.type-tribe_events {
		height: 100%;
		width: 100%;
	}

	div[id*='tribe-events-event-'] {
		font-weight: bold;
		line-height: 1.25;
		position: absolute;
		width: 94%;
		z-index: 500;
	}

	div[id*='tribe-events-event-']:hover {
		z-index: 800;
	}
}

.tribe-week-grid-hours {
	background-color: #fff;
	position: relative;
	z-index: 20;
}

.tribe-events-grid .column.first,
.tribe-week-grid-hours {
	border-left: 0;
	float: left;
	margin-right: -40px;
	width: 40px;

	div {
		font-size: 10px;
		font-weight: bold;
		height: 60px;
		line-height: 1.25;
		position: relative;
		text-align: center;
		text-transform: uppercase;
	}
}

.tribe-grid-content-wrap {
	float: left;
	padding-left: 40px;
	width: 100%;
}

.tribe-grid-allday .tribe-events-week-allday-single,
.tribe-grid-body .tribe-events-week-hourly-single {
	background-color: #e6e6e6;
	background-color: rgba(221, 221, 221, .75);
	border: 1px solid #ccc;
	-webkit-border-radius: 3px;
	        border-radius: 3px;
	cursor: pointer;
	width: 100%;
}

.tribe-grid-allday .column {
	padding: 4px;
}

.tribe-grid-allday .tribe-events-week-allday-single:hover,
.tribe-grid-body .type-tribe_events .tribe-events-week-hourly-single:hover {
	background-color: #e2e2e2;
	background-color: rgba(221, 221, 221, .85);
}

/* All day */
.tribe-grid-allday {
	background-color: #f9f9f9;
	border-bottom: 1px solid #bbb;
	position: relative;

	.column {
		min-height: 60px;
	}

	.column.first {
		top: 0;
	}

	.type-tribe_events {
		margin: 0;
		position: relative;

		h3.entry-title {
			padding: 0;

			/* Truncated all day titles */
			a.url {
				display: inline-block;
				overflow: hidden;
				padding: 8px 6px;
				position: relative;
				text-overflow: ellipsis;
				white-space: nowrap;
				z-index: 1;
				zoom: 1;
			}
		}

		&.tribe-dayspan2 > div {
			width: 200%;
		}

		&.tribe-dayspan3 > div {
			width: 300%;
		}

		&.tribe-dayspan4 > div {
			width: 400%;
		}

		&.tribe-dayspan5 > div {
			width: 500%;
		}

		&.tribe-dayspan6 > div {
			width: 600%;
		}

		&.tribe-dayspan7 > div {
			width: 700%;
		}
	}
}

/* Tooltip */
.tribe-events-grid div[id*='tribe-events-tooltip-'] {
	text-align: left;
}

.tribe-grid-body {
	.tribe-events-tooltip .tribe-events-event-body {
		position: relative;
	}

	.tribe-events-tooltip .tribe-events-arrow {
		background-position: -33px 0;
		bottom: auto;
		height: 18px;
		left: -11px;
		top: 6px;
		width: 11px;
	}

	.tribe-events-right .tribe-events-tooltip .tribe-events-arrow {
		background-position: -20px 0;
		left: auto;
		right: -11px;
	}
}

/* Specific Classes */
.tribe-week-today {
	background-color: #f9f9f9;
}

/* Week view grid background */
.tribe-week-grid-outer-wrap {
	position: relative;
	z-index: 10;
}

.tribe-week-grid-inner-wrap {
	position: absolute;
	width: 100%;
}

.tribe-week-grid-block {
	height: 60px;
	margin: 0;
	padding: 0;

	div {
		border-bottom: 1px dotted #ddd;
		border-top: 1px solid #ddd;
		height: 30px;
		margin-bottom: 30px;
	}
}

/* = Photo View Template Styles
   @ Template: Photo.php
=============================================*/

.tribe-events-photo-grid-sizer {
	width: 32%;
}

/* CSS3 Transitions */
#tribe-events-content.tribe-events-list {
	padding: 1px 0;
}

.tribe-events-photo-gutter-sizer {
	width: 2%;
}

.isotope,
.isotope .isotope-item {
	transition-duration: .2s;
}

#tribe-events-photo-events {
	transition-property: height;

	&.isotope {
		opacity: 0;
	}

	.isotope-item {
		transition: .2s ease-in;
	}

	&.photo-hidden {
		opacity: 0;
	}

	.tribe-events-photo-event {
		border-bottom: 0;
		box-sizing: border-box;
		margin-bottom: 20px;
		padding: 0;
		width: 32%;

		&:before,
		&:after {
			content: '';
			display: table;
		}

		&:after {
			clear: both;
		}
	}

	.tribe-event-featured {
		.tribe-events-photo-event-wrap {
			color: #eee;
		}

		.tribe-events-list-event-title {
			margin-top: 0;
		}

		.tribe-events-event-image {
			margin: 0;
		}
	}
}

.tribe-events-venue-widget {
	@mixin featured-list-styles;

	ol li {
		list-style: none;
		margin-bottom: .5rem;
	}

	.tribe-list-widget {
		margin-left: 0;
	}

	.type-tribe_events {
		padding: 0 1.5rem;
		margin-bottom: 1em;
	}

	.tribe-event-title {
		padding-top: .75em;
	}

	.duration {
		font-weight: bold;
	}

	.tribe-event-featured {
		background: var(--featured-event-bg);
		padding-bottom: .75em;

		.tribe-event-image {
			margin-left: -1.5em;
			margin-right: -1.5em;
		}
	}
}

.type-tribe_events.tribe-events-photo-event .tribe-events-photo-event-wrap {
	border: 1px solid #eee;
	border-bottom: 1px solid #ddd;
}

/**
 * This prevents Isotope conflicting not showing events
 * We need to use !important here because we have no control over how Isotope
 * creates the opacity on their script, which requires the usage of !important.
 */
.tribe-mobile {
	#tribe-events-photo-events,
	#tribe-events-photo-events.photo-hidden {
		opacity: 1 !important;
	}
}

.photo-loader {
	left: 50%;
	position: absolute;
	top: 200px;
}

/* Tile Styling */
.tribe-events-photo-event {
	padding: 4%;
	position: relative;
	transition: .1s ease-in;
}

.tribe-events-photo-event-wrap {
	background: #fafafa;

	&:hover {
		background: #fff;
		box-shadow: rgba(0,0,0, .1) 0 0 10px;
	}
}

.tribe-event-featured .tribe-events-photo-event-wrap {
	background: #0c4e67;
	color: white;

	a {
		color: white;
	}
}

.tribe-events-list {
	.tribe-events-loop {
		.tribe-events-photo-event {
			.entry-title a {
				transition: .2s ease-in;
			}

			.tribe-events-event-image {
				float: none;
				margin: 0;
				width: 100%;
			}

			.tribe-events-event-cost {
				display: none;
			}

			.date-divider {
				padding: 0 5px;
			}

			.tribe-events-event-details {
				float: none;
				padding: 15px;
				word-wrap: break-word;
			}

			.tribe-events-list-event-description {
				float: none;
				margin-top: 10px;
			}

			.tribe-events-event-meta .recurringinfo {
				display: block;
				margin: 8px 0 0;
			}
		}

		.type-tribe_events .tribe-events-event-meta {
			margin: 0 0 8px 0;
			padding-right: 0;
		}
	}
}

.tribe-events-photo #tribe-events-content .tribe-events-list-event-description p,
.tribe-events-loop .tribe-events-photo-event .time-details {
	margin-bottom: 0;
}

.tribe-events-photo #tribe-events-content .tribe-events-list-event-description p {
	line-height: 1.45;
}

.tribe-events-photo #tribe-events-content .tribe-events-list-event-description p.tribe-event-categories {
	font-size: 13px;
	margin-top: 1em;
}

.tribe-events-loop .tribe-events-photo-event .recurringinfo .tribe-events-divider {
	display: none;
}

.tribe-events-list #tribe-events-photo-events .tribe-events-event-details h2 {
	font-size: 1.2em;
	line-height: 1.2;
	margin-bottom: 10px;
	padding-right: 0;
}

.tribe-events-photo {
	.tribe-events-ical {
		clear: both;
	}
}

/* = Map View Template Styles
   @ Template: Map.php
=============================================*/
#tribe-geo-map-wrapper {
	background: #eee;
	border: 1px solid #ddd;
	margin-bottom: 20px;
	padding: 2px;
	position: relative;
	z-index: 2;
}

#tribe-geo-map {
	height: 400px;
	position: relative;
	width: 100%;
	z-index: 3;

	label {
		display: inline;
		width: auto;
	}

	img {
		max-width: none;
	}
}

#tribe-geo-options {
	background: #fff;
	border: 1px solid #b9b9b9;
	margin-top: 12px;
	padding: 10px;
	position: absolute;
	top: auto;
	z-index: 9999;

	&:before,
	&:after {
		border-bottom: 8px solid #b9b9b9;
		border-left: 8px solid transparent;
		border-right: 8px solid transparent;
		content: '';
		height: 0;
		left: 10px;
		position: absolute;
		top: -9px;
		width: 0;
		z-index: 9999;
	}

	&:after {
		border-bottom-color: #fff;
		top: -8px;
	}
}

.tribe-bar-collapse #tribe-geo-options {
	left: auto;
	position: relative;
	top: auto;
}

.tribe-bar-collapse {
	#tribe-geo-options:before,
	#tribe-geo-options:after {
		display: none;
	}
}

/* tribe geo location option links (displayed when multiple locations found) */
#tribe-geo-results h2,
#tribe-geo-options h2 {
	color: #222;
	font-size: 18px;
	font-weight: bold;
	line-height: 1em;
	margin: 0 0 6px;
	padding: 0;
}

#tribe-geo-options {
	display: none;
	margin-bottom: 20px;
}

.tribe-geo-option-link {
	border-bottom: 1px solid #eee;
	color: #444;
	display: block;
	padding: 3px 6px;
	text-decoration: none;
	-webkit-transition: .1s ease-in-out;
	   -moz-transition: .1s ease-in-out;
	     -o-transition: .1s ease-in-out;
	        transition: .1s ease-in-out;

	&:hover {
		background: #f5f5f5;
	}

	&:hover,
	&:focus {
		text-decoration: none;
	}
}

.tribe-option-loaded,
.tribe-geo-option-link.tribe-option-loaded:hover {
	background: #666;
	color: #fff;
}

.tribe-bar-collapse .tribe-geo-option-link {
	padding: 10px;
}

.timer {
	color: red;
	margin: 20px 0;
	text-align: center;
	width: 100%;
}

#tribe-geo-results {
	@mixin featured-list-styles;

	#tribe_events_filters_wrapper {
		display: none;
	}

	#tribe-events-content {
		float: none;
		width: 100%;
	}

	.tribe-event-featured {
		.tribe-events-map-event-title {
			margin-top: 1.5rem;
		}
	}
}

.tribe-events-distance {
	background-color: #666;
	-webkit-border-radius: 3px;
	        border-radius: 3px;
	color: #fff;
	display: inline-block;
	font-size: 14px;
	font-weight: bold;
	margin: 2.5em 0 1em 0;
	padding: 6px 10px;
}

/* = View Loading / Pagination Styles
   @ Template: Map.php & Photo.php
=============================================*/
#tribe-geo-loading {
	background: rgba(255, 255, 255, .2);
	background: #fff;
	display: none;
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	-moz-transition: all 1s linear;
	 -ms-transition: all 1s linear;
	  -o-transition: all 1s linear;
	     transition: all 1s linear;
	webkit-transition: all 1s linear;
	width: 100%;
	z-index: 4;

	img {
		left: 50%;
		margin: -16px 0 0 -16px;
		position: absolute;
		top: 50%;
	}
}

/* = Single Venue Template Styles (Pro Version)
   @ Template: single-venue.php
=============================================*/
.tribe-events-venue {
	.tribe-events-map-wrap {
		background: #eee;
		border: 1px solid #ddd;
		-webkit-border-radius: 3px;
		        border-radius: 3px;
		float: right;
		margin: 5px 0 30px 30px;
		padding: 5px;
		width: 50%;
	}

	h3.tribe-events-upcoming {
		font-size: 1.3em;
		margin-bottom: 30px;
	}

	.tribe-events-user-recurrence-toggle {
		display: none;
	}

	.tribe-events-event-meta {
		border: 0;
	}

	.tribe-events-venue-meta {
		border-bottom: 1px solid #ddd;
		margin: 0 0 30px 0;
		padding: 0 0 30px 0;
	}
}


#tribe-events-content.tribe-events-venue {
	padding: 0;
}

.tribe-events-venue-meta {
	h2.entry-title {
		display: inline;
		font-size: 1.4em;
		line-height: 1.4;
		margin: 0;
		padding: 0;
	}

	address {
		font-style: normal;
		font-weight: bold;
		margin: 0;
	}
}


.tribe-events-venue {
	address.venue-address {
		display: block;

		span {
			line-height: 1;
			margin: 5px 0;

			&.tel,
			&.url {
				display: block;
			}
		}
	}

	.tribe-venue-description {
		margin: 3% 0 0;
	}
}

/* = Single Organizer Template Styles (Pro Version)
   @ Template: Single_Organizer.php
=============================================*/
#tribe-events-content.tribe-events-organizer {
	padding: 0;
}

.single-tribe_organizer .tribe_organizer h2.entry-title {
	font-size: 1.6em;
	margin: 0 0 .5em 0;
	padding: 0;
}

.tribe-events-organizer {
	.tribe-events-event-meta {
		border: 0;
	}

	.tribe-events-organizer-meta {
		border-bottom: 1px solid #ddd;
		margin-bottom: 30px;
		padding-bottom: 30px;
	}

	address.organizer-address {
		font-style: normal;
		font-weight: bold;
		margin-bottom: 1.25em;
		word-wrap: break-word;
	}

	address.organizer-address span {
		line-height: 1;
		white-space: pre;
	}

	.tribe-organizer-description {
		margin-bottom: 1em;
	}

	.tribe-events-divider {
		margin: 0 10px;
	}

	.tribe-events-user-recurrence-toggle {
		display: none;
	}
}

/* = Related Events
   @ Template: Single_Event.php
=============================================*/
.related-events-title {
	font-size: 18px;
	line-height: 1.4;
}

ul.related-events {
	display: block;
	margin: 0;

	li {
		display: block;
		float: left;
		list-style-type: none;
		min-width: 160px;
		position: relative;
		vertical-align: text-bottom;
	}
}

.related-event-date {
	font-size: .75em;
	text-transform: uppercase;
}

h3.tribe-events-related-events-title {
	font-size: 1.4em;
	margin-bottom: 2%;
}

.tribe-events-single ul.tribe-related-events,
.post .tribe-events-single ul.tribe-related-events {
	border: none;
	margin: 0 0 8% 0;
	padding: 0;
}

.tribe-events-single ul.tribe-related-events {
	li {
		background: #fafafa;
		border: none;
		border: 1px solid #eee;
		-webkit-border-radius: 3px;
		        border-radius: 3px;
		-webkit-box-sizing: border-box;
		   -moz-box-sizing: border-box;
		        box-sizing: border-box;
		float: left;
		font-size: .9em;
		font-weight: normal;
		list-style: none;
		margin: 0 4% 2% 0;
		padding: 0;
		width: 29.3333%;

		.date-divider {
			padding: 0 5px;
		}

		.tribe-related-event-info {
			padding: 8%;
		}
	}

	.tribe-related-events-thumbnail img {
		border: none;
		height: auto;
		margin: 0;
		max-width: 100%;
		padding: 0;
		width: 100%;
	}

	.tribe-related-events-title {
		font-size: 16px;
		line-height: 1.5;
		margin: 0 0 10px 0;
	}

	.recurringinfo {
		display: block;
		margin: 4% 0;

		.tribe-events-divider {
			display: none;
		}
	}
}

/* = Events Calendar Widget Styles (Sidebar)
   @ Template: widgets/list-widget.php
=============================================*/

.tribe-mini-calendar-list-wrapper .type-tribe_events {
	margin: 0;
	padding: 0;
}

.tribe-mini-calendar-list-wrapper,
.tribe-events-adv-list-widget {
	@mixin featured-list-styles;

	ol li {
		list-style: none;
		margin-bottom: 30px;
	}

	.tribe-venue {
		display: block;
		margin-top: 10px;
	}

	.tribe-events-organizer,
	.tribe-events-location {
		&:empty {
			display: none;
		}
	}

	.list-info {
		margin-bottom: .25rem;
	}

	.tribe-organizer {
		display: block;
	}

	.tribe-events-event-cost {
		display: inline;
	}

	 .duration {
		display: inline;
	}

	.event-is-recurring .tribe-events-divider {
		display: none;
	}

	.event-is-recurring {
		color: inherit;
	}

	.type-tribe_events {
		margin: 0 0 .25rem 0;
		padding: 0;
	}

	.tribe-event-title {
		margin-top: .75rem;
	}

	.tribe-event-featured {
		background: transparent;
		border-bottom: 1px dotted #2f2f2f;
		margin-top: .75rem;
		padding-bottom: .75rem;

		&:first-of-type {
			margin-top: 0;
		}

		&:last-of-type {
			border-bottom: 0;
		}

		.list-date {
			display: none;
		}

		.list-info {
			display: block;
			padding: 0 1.5rem;
			width: 100%;
		}

		.tribe-mini-calendar-event {
			border: 0;
			margin-bottom: 0;
			padding-bottom: 16px;

			.list-info {
				margin-bottom: 0;
			}

			.tribe-events-title a {
				color: white;

				&:hover {
					color: rgba( 255, 255, 255, .9 );
				}
			}
		}
	}
}

/* = Events Countdown Widget
   @ Template: widgets/countdown-widget.php
=============================================*/
.tribe-countdown-timer {
	span.tribe-countdown-seconds,
	span.format,
	h3.tribe-countdown-complete {
		display: none;
	}
}

div.tribe-countdown-timer {
	line-height: 1.5em;
	min-height: 60px;
	padding-top: 10px;
	text-align: center;
}

div.tribe-countdown-number {
	color: #000;
	float: left;
	font-size: 2.4em;
}

span.tribe-countdown-under {
	color: #666;
	font-size: 10px;
	font-weight: 500;
	text-transform: uppercase;
}

div.tribe-countdown-colon {
	color: #666;
	float: left;
	font-size: 1.5em;
	padding: 0 4px;
}

div.tribe-countdown-right {
	float: left;
}

div.tribe-countdown-text {
	clear: both;
	margin: 0 0 10px 0;
}

/* Twenty Thirteen compat
========================================================================== */

.tribe-events-week.tribe-theme-twentythirteen .tribe-grid-content-wrap .hentry {
	padding: 4px;
}

/* Twenty Thirteen Footer Widget */
.tribe-theme-twentythirteen #secondary div.tribe-countdown-number,
.tribe-theme-twentyfourteen #primary-sidebar div.tribe-countdown-number,
.tribe-theme-twentyfourteen #footer-sidebar div.tribe-countdown-number {
	color: #fff;
	text-shadow: 1px 1px #000;
}

.tribe-theme-twentythirteen #secondary span.tribe-countdown-under {
	color: #fff;
}

/* Twenty Fourteen Compat
========================================================================== */
.tribe-theme-twentyfourteen {
	#primary-sidebar div.tribe-countdown-number {
		font-size: 24px;
	}

	.widget .tribe-mini-calendar-event .list-info h2 {
		font-size: 14px;
	}
}


/* Twenty Fifteen Compat
========================================================================== */

.tribe-theme-twentyfifteen {
	.tribe-events-adv-list-widget {
		.type-tribe_events.hentry {
			box-shadow: none;
			margin-left: 0;
			margin-right: 0;
		}

		.tribe-mini-calendar-event {
			border-bottom: 0;
		}
	}

	.tribe-events-venue-widget {
		.hentry {
			box-shadow: none;
			display: inline-block;
			margin-left: 0;
			margin-right: 0;

			.entry-title {
				font-size: 1.2em;
			}
		}
	}

	.tribe-venue-widget-wrapper {
		ul {
			list-style-type: none;
		}

		li {
			border-bottom: 1px dotted #000;
			box-shadow: none;
			margin-left: 0;
			margin-right: 0;
			padding-bottom: 10px;
			padding-top: 5px;
		}

		h4 {
			font-size: 14px;
		}

		.date-start,
		.date-end,
		.end-time,
		.tribe-events-event-cost {
			font-size: 13px;
		}

		.date-end {
			display: block;
		}
	}

	#tribe-events-content.tribe-events-photo #tribe-events-photo-events {
		h2 {
			line-height: 1.2;
		}

		h2 a {
			border: 0;
			text-decoration: none;
		}

		.tribe-events-event-meta {
			line-height: 1.2;
			margin: 10px 0;
		}

		.tribe-events-list-photo-description {
			font-size: .9em;
			line-height: 1.5;
		}
	}

	#tribe-events .tribe-events-venue-meta {
		.tribe-events-event-meta {
			font-size: 14px;
			line-height: 1.3;
			margin-top: 10px;
		}

		.tribe-events-map-wrap {
			margin-bottom: 20px;
		}

		.tribe-events-event-meta {
			.venue-address .location {
				display: block;
				margin: 10px 0 5px;
			}

			.venue-address .tel {
				margin: 5px 0 8px;
			}
		}

		 .tribe-venue-description {
			clear: both;
			display: block;
			float: left;
			padding-left: 0;
			padding-right: 0;
		}
	}

	&.single-tribe_events #tribe-events .tribe-events-venue-meta {
		float: left;
	}
}

@media screen and (min-width: 59.6875em) {
	.tribe-theme-twentyfifteen .tribe-events-countdown-widget div.tribe-countdown-number {
		font-size: 2.1em;
	}
}

/* Twenty Sixteen Compat
========================================================================== */

.tribe-theme-twentysixteen {
	.tribe-grid-body {
		div[id*='tribe-events-event-'] {
			z-index: 80;
		}

		div[id*='tribe-events-event-']:hover {
			z-index: 81;
		}

		.tribe-events-tooltip p:last-child {
			margin-bottom: 0;
		}
	}

	.tribe-events-grid a:hover {
		color: white;
	}

	.tribe-venue-widget-list {
		margin-left: 0;
		list-style: none;
	}

	.tribe-events-list-photo-description ul,
	.tribe-events-list-photo-description ol {
		margin-left: 1.25em;
	}

	.tribe-events-list-photo-description {
		width: 100%;
	}
}

.tribe-events-list-photo-description {
	width: 100%;
}

/* = Events Venue Widget
   @ Template: widgets/venue-widget.php
=============================================*/
.tribe-venue-widget-venue {
	margin-bottom: 20px;

	.tribe-venue-widget-venue-name a {
		font-weight: bold;
	}
}

.tribe-venue-widget-list {
	li + li {
		margin-top: 15px;
	}

	.tribe-events-event-schedule-details {
		display: inline;
		font-weight: bold;
	}

	.entry-title {
		margin: 0 0 5px;
	}

	.type-tribe_events {
		margin-bottom: 20px;
	}
}

.tribe-venue-widget-thumbnail {
	margin: 10px 0 20px 0;

	img {
		display: block;
		height: auto;
		max-width: 100%;
	}
}

/* = Events Calendar Tribe Bar Styles
=============================================*/
.tribe-events-uses-geolocation .tribe-bar-date-filter,
.tribe-events-uses-geolocation .tribe-bar-search-filter,
.tribe-bar-geoloc-filter,
.tribe-events-uses-geolocation .tribe-bar-submit {
	float: left;
	margin-bottom: 0;
	padding: 15px;
	width: 25%;
}

.tribe-events-uses-geolocation {
	.tribe-bar-submit {
		margin-left: 0;
	}

	.tribe-bar-mini {
		.tribe-bar-date-filter {
			padding: 10px;
		}

		.tribe-bar-search-filter {
			padding: 10px;
		}

		.tribe-bar-submit {
			padding: 10px;
		}
	}
}

.tribe-bar-mini .tribe-bar-geoloc-filter {
	padding: 10px;
}

.tribe-events-shortcode {
	.tribe-bar-search-filter {
		width: 25%;
	}
	.tribe-bar-submit {
		float: left;
		margin-bottom: 0;
		margin-left: 0;
		padding: 10px;
		width: 25%;
	}
}
