/*
 Theme Name:     Canvas Child Theme for Chicago Intl Film Festival
 Theme URI:      https://woocommerce.com/products/canvas/
 Description:    Canvas Child Theme
 Author:         Grab Bag Media
 Author URI:     http://www.grabbagmedia.com
 Template:       canvas
 Version:        19.09
*/
 
@import url("../canvas/style.css");
 
/* =Theme customization starts here
------------------------------------------------------- */

/* Basic theme touchups */
#header { padding-bottom:0 !important; }
.entry ul.icons-large { padding:0 0 0 0px !important; }
#footer-widgets .widget { colfor:rgb(255,255,255) !important; }
#footer-widgets h3 { font-size:1.25rem; font-eweight:bold; }
.no-bottom-margin { margin-bottom:0 !important; }
.tight-margins {margin-top:0; margin-bottom:0; }
.ult-carousel-wrapper {margin-bottom:0 !important; }
s { text-decoration:line-through; }
.no-p-margins p { margin:0 !important; }
.flex { display:flex; }
.header-image, .page-header {
	display:block;
	width:100%;
	height:auto;
}
#navigation {
	z-index:999 !important; /* keeps nav menu under pop-up modals */
}
.middle-images img { /* Vertically aligns images inside a container */
    vertical-align:middle;
}
blockquote {
	display:block;
	padding:0.5rem 0.5rem 0.5rem 2rem;
	margin-bottom:1rem;
	border-left:2px solid black;
}
blockquote p {
	margin:0;
}

/* General button styling */
.long-button, .fest-button {
	display:block;
	background:rgb(238,33,40);
	padding:1em;
	font-size:1.25em;
	color:rgb(255,255,255) !important;
	text-decoration:none !important;
	font-weight:bold;
	margin: 0.5em 0 0.5em 0;
}
.long-button:hover, .fest-button:hover {
	background:rgb(253,74,81);
}
a.button {
	display:inline-block;
	margin:0;
	padding:0.5em 1em;
	background:rgb(214,26,36);
	border-radius:2px;
	font-size:1.5em;
	color:rgb(255,255,255) !important;
}
a.button:hover {
	background:rgb(240,98,102);
	text-decoration:none;
}
a.button.small {
	padding:0.25em 0.5em;
	font-size:1em;
}

/* Styling for Elevent header menu */
#top {
	background:grey; /* change this */
}
#top-nav {
	width:100%;
	display:flex;
	justify-content:end;
}
top-nav li {
  border-left: 1px solid rgba(255,255,255,.2) !important;
}
#top-nav li a {
	padding-right:1rem !important;
	padding-left:2rem !important;
}
#top-nav li a:hover {
	background:red; /* change this */
}

/* Styling for Max Mega Menu drop down menus with widgets */
.mega-menu-item-type-widget ul { list-style:none; margin-left:0; padding-left:0; }
.mega-menu-item-type-widget ul li { line-height:1.6; margin:0; padding:0;  }
.mega-menu-item-type-widget ul a { color:#000; text-decoration:none; }
.mega-menu-item a:hover { color:#ed1c24 !important;  }
.menu-item-description {
	display:block;
	font-size:75%;
	line-height:1.3;
	font-weight:normal;
	color:#000 !important;
	text-decoration:none !important;
	text-transform:none !important;
}
#inner-wrapper .mega-menu-wrap {
    margin-bottom:0 !important;
}
#mega-menu-link {
	color:#000 !important;
}
#mega-menu-wrap-primary-menu #mega-menu-primary-menu a.mega-menu-link .mega-description-group .mega-menu-description {
	font-style:normal;
	color:#000;
}


/* Rollover images */
.rollover:hover { opacity:0.7; }

/* Styling for new Footer widgets */
#footer-widgets-container .block,
#footer-widgets-container p,
#footer-widgets-container div,
#footer-widgets-container h3  { color:rgb(255,255,255) !important; }
#footer-widgets-container a:hover { color:#fff; }
#footer-container { border:none !important; }
#footer { padding-top:0 !important; }
#footer-widgets-container .block>.widget { margin-bottom:0 !important; }


/** FESTIVAL PAGES **/

/****************** Ticket page ****/
.colorbar {
    color: #fff;
    background: #000;
    padding:0.25rem 0.5rem;
    border-top-right-radius:15px;
}
.price-table {
    border-collapse:collapse;
    width:auto;
    border:0 !important;
    
}
.price-table tr {
    border-bottom:2px dotted #dbdbdb;
}
.price-table td {
    padding:0.5rem 2rem 0.5rem 0;
    text-align:center;
}
.price-table td:first-child {
    text-align:left;
}

/****************** Hub Page ****/
.hub-menu {
	display:flex;
	flex-wrap:wrap;
}
.hub-menu div {
	width:225px;
	Margin-right:20px;
	margin-bottom:1em;
	display:block;
}
.hub-menu div img {
	width:225px;height:auto;
}
.hub-menu div img:hover { opacity:0.7; }
.hub-menu div a {
	font-weight:bold;
	font-size:110%;
}

.fest-back-link {
	display:block;
	font-size:110%;
	font-weight:bold;
}

/****************** Program Overview Page ****/
.program-list {
	display:flex;
	flex-wrap:wrap;
	width:100%;
}
.program-list .fest-program {
	width:300px;
	padding: 0 10px 45px 10px;
	font-size:85%;
}

.program-list .fest-program .film-still,
.program-list .fest-program img {
	width:300px; height:200px;
	object-fit:cover;
	border:0;padding:0;
}
.program-list .fest-program .film-still {
	margin-bottom:0.5em;
}
.program-list .fest-program h3 {
	margin-bottom:0; line-height:1.2;
}

.program-list .fest-program img {
	opacity:0.7;
}
.program-list .fest-program img:hover {
	opacity:1;
}

/****** Program/Category Page ****/
.film-program-archive,
.film-program-listing {
	width:100%;
}
.film-program-archive .banner {
	width:100%; height:auto;
	margin-bottom:1em;
}


/****************** Film Listing (category page, film list page, similar to event list) ****/

.film-listing { /* This is the container for each indiviual film */
	display:flex;
	flex-direction:row;
	width:100%;height:auto;
	margin-bottom:1em;
	background:#e8e8e8;
}
.film-listing .film-img { /* Thumbnail image */
	flex-shrink:0;
	width:200px;
	overflow:hidden;
}
	.film-listing .film-img img {
		border:0 !important;margin:0 !important; padding:0!important;
		height:100% !important;width:auto !important;
		object-fit:cover;
	}
	.film-listing .film-img img:hover {
		opacity:0.75;
	}
.film-listing .film-info { /* Title/info section */
	padding: 5px 15px;
	height:auto;
	flex-shrink:5;
	font-size:.85em;
	line-height:1.35;
}
	.film-listing h3 {
	margin:0;
	padding:0;
	}
	.original-title { font-style:italic;line-height:0.2; color:rgb(110,110,110); } /* This same rule is in the Events Calendar section */
	.film-listing .film-info label {
		font-size:85%;
		font-weight:bold;
		text-transform:uppercase;
		display:inline-block;
		margin-right:0.75em;
	}
	
.film-listing .screening-info { /* Screening info/buttons */
	width:150px; height:auto !important;
	flex-shrink:0;
	margin-left: auto;
	padding:2px 0;
	}

.film-listing .screening-info a {
	display:block;
	width:calc(100% - 10px) !important;
	margin:2px 0;
	padding:2px 5px;
	background:rgb(238,33,40);
	color:#fff;
	font-size:12px;
	font-weight:bold;
}
.film-listing .screening-info a:hover {
	text-decoration:none;
	background:rgb(253,74,81);
}
.film-listing .original-title {
  font-size:75%;
}
.film-info {
  line-height:1.5 !important;
}
.film-listing .progs-list a {
  display:inline-block;
  background-color:#a4a29e;
  padding:1px 5px;
  color:#fff;
  font-size:80%;
  margin-right:4px;
}
.film-listing .progs-list a:hover {
  text-decoration:none;
  background-color:rgb(253,74,81);
}
/******/

@media only screen and (max-width: 700px) { /* Adapt for small screengs */
	.film-listing { /* Film container turns into a column */
		flex-direction:column;
	}
	.film-listing .film-img { /* Thumbnail image gets wide */
		width:100% !important; height:auto !important;
	}
		.film-listing .film-img img {
			width:100% !important; height:auto !important;
		}
	.film-listing .screening-info { /* Screening info/buttons */
		width:100%;
		flex-shrink:0;
		margin-left:0;
		padding-top:1rem;
		padding-bottom:1rem;
		}

	.film-listing .screening-info a {
		display:block;
		width:100%;
		margin:1rem auto;
	}
}

/** Film Filter Controls **/
.film-listing-controls {
	margin-bottom: 1em;
	background:#000;
	color:#fff;
	padding: 0.5em 2em 0.5em 2em;
	border-radius:0 !important;
}
.film-listing-controls h3{
	color:#fff !important;
}
.film-listing-controls ul {
	padding:0; margin:0 auto; list-style:none;
	display:flex;flex-wrap:wrap;
}
.film-listing-controls li {
	padding-right:1em;
	padding-bottom:1em;
}
.film-listing-controls label {
	display:block;
 	color:#fff;
	margin-bottom:0.25em;
}
.film-listing-controls li select {
	height:2em;
	min-width:200px;
}
.film-listing-controls li.filter-submit,
.film-listing-controls li.filter-reset {
	padding-top:1em
}
.film-listing-controls input[type=text] {
	min-width:200px;
  	height:1em;
  	border-radius:0;
  	border:0;
}
.film-listing-controls input[type=submit] {
	padding:5px 15px; 
	background:rgb(215,35,35); 
	border:0 none;
	cursor:pointer;
	font-size:1em;
    color:rgb(255,255,255);
	border-radius: 5px; 
}
.film-listing-controls input[type=submit]:hover {
	background:rgba(215,35,35,0.75); 
}
.film-listing-controls input[type=button] {
	padding:5px 15px; 
	background:rgb(88,88,88); 
	border:0 none;
	cursor:pointer;
	font-size:1em;
    color:rgb(255,255,255);
	border-radius: 5px; 
}
.film-listing-controls input[type=button]:hover {
	background:rgba(88,88,88,0.75); 
}


/****************** Tiled Film Listing (category page, film list page, similar to event list) ****/
.film-list2020 {
  display:flex;
  flex-direction:row;
  flex-wrap:wrap;
}
.film-listing2020 {
  width:calc(33% - 1rem);
  position:relative;
  margin-right:1rem;
  margin-bottom:1rem;
  display:flex;
  flex-direction:column;
  background:#e8e8e8;
}
@media (max-width: 786px) {
  .film-listing2020 {
    width:calc(50% - 1rem);
  }
}
@media (max-width: 600px) {
  .film-listing2020 {
    width:calc(100%);
    margin-right:0;
  }
}

.film-listing2020 img {
  width:100% ;
  height:auto;
  border:0 !important;margin:0 !important; padding:0!important;
  display:block;
}
.film-listing2020 img:hover {
  opacity:0.75;
}

.film-listing2020 .film-info { /* Title/info section */
	padding: 0.25rem 1rem;
}
.film-listing2020 .film-meta {
	font-size:.75rem;
	line-height:1.35;
}
.film-listing2020 .film-meta label {
 	font-weight:bold;
}
.film-listing2020 .progs-list {
   	margin-bottom: 6px;
}
.film-listing2020 .progs-list a {
    display:inline-block;
    background-color: #000;
    padding:1px 5px;
    color:#fff;
    font-size:.68rem;
    margin-right:4px;
  	margin-bottom:4px;
}
  .film-listing2020 .progs-list a:hover {
    text-decoration:none;
    background-color:rgb(253,74,81);
  }
.film-listing2020 .original-title {
  font-size:75%;
}
.film-listing2020 .film-info label {
  font-size:85%;
  font-weight:bold;
  text-transform:uppercase;
  display:inline-block;
  margin-right:0.75em;
}

.film-listing2020 .film-status {
 display:flex;
  flex-direction:row;
  justify-content:flex-start;
 width:100%;
 margin-top:0.5rem;
 margin-bottom:1rem;
}
.film-listing2020 .streaming-status,
.film-listing2020 .drivein-status {
  background:rgb(237, 27, 37);
  padding:5px;
  margin-right:10px;
  font-size:0.7rem;
  line-height:1;
  font-weight:bold;
  color:#fff;
}
.film-listing2020 .film-status a {
  display:block;
  text-decoration:none;
  color:#fff;
}
.film-listing2020 .film-status a:hover {
  text-decoration:none;
  color:#fff;
}
.film-listing2020 .status-soldout {
  background:#000;
}
.film-listing2020 .status-soldout .strike {
  text-decoration:line-through;
}

.film-listing2020 h3 {
  line-height:1.25em;
}
.film-listing2020 .film-descr,
.film-listing2020 .film-descr p { 
	font-size:.85rem !important;
	line-height:1.35 !important;
}
.film-listing2020 .film-descr {
  padding-bottom:1rem;
}
.film-listing2020 .caption-icon {
 	display:block;
  	position:absolute;
  	bottom:0;
  	right:1rem;
 	font-size:1.5rem;
  	margin-top:1rem;
}
.film-listing2020 .text-cc {
  font-size:1.2em;
}


/****************** Film Page 2021 ****/
/** General page rules **/
.filmpage-container {
	width:100%;
}
@media (max-width: 480px) { /* reorder sections */
	.filmpage-container {
		display:flex;
		flex-direction:column;
	}
}
.filmpage section {
	padding-bottom:1rem;
	border-bottom: 2px solid #e8e8e8;
	margin-bottom:5rem;
}

.filmpage h1 {
	font-size:2.25rem;
	line-height:1;
	text-wrap:balance;
}
.filmpage h2 {
	font-size:1.25rem;
	text-transform:uppercase;
	margin-bottom:1rem;
}
.filmpage h4 {
	margin-bottom:0 !important;
}
.filmpage .original-title {
	font-size:75%;
	font-style:italic;
	line-height:0.2;
	color:rgb(110,110,110);
}
.filmpage label {
	text-transform:uppercase;
	font-weight:bold;
}
ul.film-credits {
	margin:0 0 1rem 0;
	padding:0;
	list-style:none;
}
ul.film-credits li {
	display:block;
	margin:0;
}
.filmpage aside>div>label:first-of-type{
		display:block;
		font-size:1.5em;
}

/* Film identity section styling */
.filmpage .film-categories {
	margin-bottom:1rem;
}
.filmpage .film-categories a {
	display:inline-block;
	background-color:#000;
	padding:1px 5px;
	line-height:1.5;
	color:#fff;
	font-size:80%;
	margin-right:4px;
	font-weight:bold;
}
.filmpage .film-categories a:hover {
	text-decoration:none;
	color:#fff;
	background-color:rgb(253,74,81);
}
.filmpage .film-meta {
	margin-top:0.5rem;
	margin-bottom:1.5rem;
}
.filmpage .film-meta p {
	margin-bottom:0.25rem;
}
.filmpage .film-meta .film-categories a {
	background-color:#e8e8e8;
	color:#000;
}


/** Image Header **/
.filmpage .film-img {
	margin-bottom:0.5rem;
	}
.filmpage .film-img img {	
	display:block;
	width:100%;
	height:auto;
}
@media (max-width: 680px) { 
	.filmpage .film-img img {
		min-height:300px;
		object-fit:cover;
	}
}

/** film-topinfo ( title, director, categories + ticketing ) **/
.film-topinfo {
	display:flex;
	flex-direction:row;
	margin-top:-6rem;
}
.film-topinfo--container {
	flex-direction:column;
	margin-top:6rem;
	z-index:900;
	flex-grow:2;
}
.film-topinfo--poster {
	width:auto;
	padding-left:2rem;
	margin-right:1rem;
}
.film-topinfo--poster img {
	width:auto;
	max-width:300px;
	border: solid #fff 3px;
}

/* Film tickets & events */
.filmpage .film-events {
	display:flex;
	align-items:stretch;
	align-content:stretch;
	width:100%;
}
	.filmpage .film-events>* {
		margin-bottom:1rem;
		margin-right:0.5rem;
		border:#000 2px solid;
		padding:0.75rem 1.25rem;
	}
		.filmpage .film-events>* p {
			margin:0.5rem 0 0 0 !important;
		}
		.filmpage .rental-buttons {
			display:flex;
			flex-direction:row;
			flex-wrap:wrap;
		}
			.filmpage .rental-buttons .button {
				white-space: nowrap;
			}
			.filmpage .rental-buttons .rental-buttons-instance:first-child {
				margin-right:2rem;
			}
			.filmpage .film-rentalinfo .rentalinfo-fineprint {
				color:#ccc;
				font-size:0.85rem;
			}
			.filmpage .rental-buttons .soldout {
				background:#7e7e7e !important;
			}
			.filmpage .rental-buttons .soldout:hover {
				background:#7e7e7e !important;
			}
		.filmpage .rental--event-info {
			min-width:175px;
		}
@media only screen and (max-width: 600px) {
	.filmpage .film-events {
		flex-direction:column;
	}
}

/** filmpage-filmdetails (synopsis and credits) **/
.filmpage-filmdetails {
	display:flex;
}
.filmpage-filmdetails .film-synopsis {
	padding-right:40px;
}
.filmpage-filmdetails .film-synopsis blockquote,
.filmpage-filmdetails .film-synopsis blockquote p {
	color:#000 !important;
	font-weight:bold;
}
.filmpage-filmdetails .film-credits {
	display:block;
	width:40%;
	min-width:300px;
	background:#e8e8e8;
	padding:1rem 1.5rem;
	font-size:85%;
	margin-left:auto;
}
.filmpage-filmdetails .film-credits h3 {
	margin-bottom:1rem;
}
.filmpage-filmdetails .film-credits--list li {
	margin-bottom: 0.5rem;
	line-height: 1.4;
}
@media (max-width: 680px) { /* Stack columns on mobile */
	.filmpage-filmdetails {
		flex-direction:column;
	}
	.filmpage-filmdetails .film-synopsis {
		width:100%;
		padding-right:0;
	}
	.filmpage-filmdetails .film-credits {
		width:100%;
		min-width:none;
		font-size:100%;
	}
}

	/** Media **/
.filmpage-media .video-container {
	position: relative;
  height: 0;
  padding-top: 56.25%;
  width:100%;
}
.filmpage-media .video-container iframe {
  position: absolute;
  top: 0; left: 0;
  border: 0;
  width: 100%;
  height: 100%;
}
/** Media **/
.filmpage-media--photos {
	margin-top:1rem;
	display:flex;
	align-items: flex-start; /* fixes a safari bug */
}
.filmpage-media--photos img {
	margin:0 15px 0 0;
	padding:0 !important;
	flex-shrink:1;
	min-width: 0;
  width: 100%;
	height:auto;
}
@media (max-width: 480px) { /* Stack photos on mobile */
	.filmpage-media--photos {
		flex-direction: column;
	}
	.filmpage-media--photos img {
		margin:10px;
	}
}


/** Screenings (from 2019 design) **/
.screenings {
	order:3;
}
.film-screening-info {
	display:block;
	width:100%;
	background:#e8e8e8;
	margin-bottom:0.5em;
	padding:0.75em;
}
.film-screening-info p {
	margin:0; padding:0;
	}
.film-container .date-time {
	display:inline-block;
	font-size:125%;
	font-weight:bold;
	padding-right:2em;
	}
	.film-container .soldout-date { text-decoration:line-through; }
	.film-container .soldout-notice,
	.film-container .rushonly { color:rgb(238,33,40); font-weight:bold; }
	.film-container .date-time .small { padding:2px 8px; }

/* Film Sponsors **/
.film-sponsors {
	order:6;
}
.film-sponsors-list {
	display:flex;
	flex-direction:row;
	justify-content:flex-start;
	align-items:center;
	flex-wrap:wrap;
}
.film-sponsors-list h4,
.film-sponsors-list img {
	margin-right:15px;
	flex-shrink:0;
}
.film-sponsors h4 {
	font-size:0.8rem;
	text-transform:uppercase;
	color:#707070; /* Grey */
	border-bottom:2px solid #707070;
	margin-bottom:1rem !important;
}
.film-sponsors-list>* {
	margin-right:15px;
}

@media (max-width: 600px) { /* Stack photos on mobile */
	.film-sponsors-list {
		flex-direction:column;
	}
}

/** Related Films **/
.related-films {
	background:#e8e8e8;
	padding:1em;
	order:7;
}
	.related-films-list {
		display:flex;
		width:100%;
	}
	.related-film-item {
		width:31%;
		padding:1em;
	}
	.related-film-item img {
		width:300px;height:auto;
		margin-bottom:0.5em;
	}
	.related-film-item h3 {
		font-size:1.1em;
		font-weight:bold;
		text-transform: uppercase;
	}
	.related-film-item label {
		text-transform:uppercase;
		font-weight:bold;
	}
@media (max-width: 480px) { /* Stack columns on mobile */
	.related-films-list {
		flex-direction:column;
		}
	.related-film-item {
		width:100%;
	}
	.related-film-item img {
		width:80%;
	}
}

.rental-buttons {
	padding-bottom:0.5rem;
}
.rental-buttons a.button {
	font-size:1.16rem;
}
@media (max-width: 760px) {
	.film-topinfo--poster {
		display:none;
	}
}

@media (max-width: 600px) { /* Stack photos on mobile */
	.film-sponsors-list {
		flex-direction:column;
	}
}
@media (max-width: 600px) {
	.filmpage .film-events {
		flex-direction:column;
	}
}
.stack {
	flex-direction:column !important;
}


/****************** CineYouth Film Page Changes ****/

.cineyouth-filmpage .film-events>* {
	flex-basis:50%;
}
.cineyouth-filmpage .film-img {
	margin-top:1rem;
}
@media (max-width: 680px) { 
	.filmpage.cineyouth-filmpage .film-img img {
		min-height:0 !important;
	}
}

/****************** EVENTS CALENDAR ****/
/** General Styling **/
#tribe-events-content-wrapper {
	max-width:980px !important;
	margin:0 auto;
}
.tribe-events-notices {
	margin-bottom: 0;
}
#tribe-events {
	padding-top:0 !important;
}
#tribe-events-pg-template {
	padding-top:0 !important;
}
.tribe-events-back {
	margin-bottom:1rem !important;
}

/****************** Event List View ****/
.eventinstance {
	display:flex;
	flex-direction:column;
	width:clamp(400px, 95%, 600px);
	margin:0 auto 2rem auto;
	border:2px solid #E4E4E4;
}
.eventinstance-date {
	text-align:center;
	padding:0.5rem 1rem;
	background-color:#000;
	font-size:2rem;
	color:#fff;
	line-height:1.1;
}
	.eventinstance-date-dayname {
		text-transform:uppercase;
		font-weight:bold;
	}
.eventinstance-image {
	height:200px;
	aspect-ratio:2/1;
}
	.eventinstance-image img {
		width:100%;
		height:100%;
		object-fit: cover;
	}
.eventinstance-content {
	margin:0.5rem 1rem;
}
	.eventinstance-eventtype span {
		display:inline-block;
		padding:2px 10px;
		font-size:0.85rem;
		background:#000;
		color:#fff;
		text-transform:uppercase;
		margin-top:0;
		margin-bottom:0.5rem;
	}
	.eventinstange-title {
		margin:0;
	}
	.eventinstance-meta {
		font-size:1.25rem;
	}
	.eventinstance-meta-time::after {
		content:' @ ';
	}
	.eventinstance-button {
		margin-bottom:1rem;
		text-align:center;
	}
	.eventinstance-button a {
		padding:0.5rem 1rem;
		background-color:red;
		font-size:1.25rem;
		color:#fff;
		font-weight:bold;
		text-transform:uppercase;
		text-decoration:none;
		margin-right:auto;
		margin-left:auto;
	}

@media (min-width:850px) {
	.eventinstance {
		flex-direction:row;
		width:clamp(850px, 100%, 1200px);
		align-items:stretch;
		margin:0 auto 0.75rem auto;
	}
	.eventinstance-date {
		width:100px;
		margin:0 1rem;
		background-color:transparent;
		color:#000;
	}
	.eventinstance-date-dayname {
		display:inline-block;
		font-size:1.5rem;
		text-transform:uppercase;
		font-weight:bold;
	}
	.eventinstance-date-month {
		display:inline-block;
		font-size:1.1rem;
		text-transform:uppercase;
	}
	.eventinstance-date-day {
		display:inline-block;
		font-size:2em;
		text-transform:uppercase;
		font-weight:bold;
	}
	.eventinstance-image {
		width:25% !important;
		height:auto !important;
		min-width:250px !important;
	}
	.eventinstance-image img {
		width:100% !important;
		height:100% !important;
		object-fit: cover;
	}
	.eventinstance-content {
		margin:0.5rem 1.5rem;
		width:50%;
	}
	.eventinstance-eventtype span {
			font-size:1.1rem;
	}
	.eventinstance-meta-time,
	.eventinstance-meta-venue {
		display:block;
	}
	.eventinstance-meta-time::after {
		content:'';
	}
	.eventinstance-button {
		display:flex;
		align-items:flex-end;
		flex-grow: 2;
		min-width:200px;
		margin-bottom:0.75rem;
		text-align:right;
	}
	.eventinstance-button a {
		margin-right:0;
	}
}
/** End Event List View **/
/****************** Event Single Day View ****/
/* Small changes from list view */
.eventinstance-date {
	display:flex;
}
.eventinstance-date-time {
	font-weight:bold;
	align-self:center;
}
/** End Event Single Day View **/



/****************** Individual Event Page ****/
/** General info **/

.event-container {
	width:100%;
	display:flex;
	flex-direction:column;
}
.event-container h1 {
	font-size:2.25rem;
	line-height:1.2;
}
.event-container h2 {
	font-size:1.5rem;
	padding:1rem 0;
	margin:0 !important;
}
/* .event-container p {
	color:rgb(0,0,0) !important;  /* does not work for some reason */
} */
.event-container label {
	text-transform:uppercase;
	font-weight:bold;
}
.event-content>div {
	margin-bottom:2em;
}
.event-container img {
	max-width:100%;
	height:auto;
}

/** Event Header **/
.event-header {
	order:1;
}
.event-header img {
	width:100%;
	height:auto;
}

/** Event Credits **/
.event-film-credits {
	order:2;
	margin-bottom:2rem;
	padding-right:40px;
}
.event-container .original-title {
	font-style:italic;
	line-height:0.2;
	color:rgb(110,110,110);
	margin-bottom:1rem;
}

/** Event Content **/
.event-content {
	order:3;
}

.event-description {
	margin-top:2rem;
}
.event-content .film-synopsis {
	padding-right:0;
	margin-top:2rem;
}
.event-sponsors h4 {
	margin-top:2em;
	margin-bottom:0.5rem;
}
.event-sponsors h4:first-of-type {
	margin-top:0em;
}

/** Event Info **/
.event-aside {
	order:4;
}
.event-primary-info--content,
.event-trailer--content,
.event-specialguests,
.event-post-share--content {
	border:2px solid #000;
	margin-bottom:1.5em;
}
.event-primary-info--content,
.event-specialguests,
.event-post-share--content {
	padding: 1.5em;
}
.event-aside h3 {
	display:block;
	width:100%;
	padding:0.25em 0;
	color:#fff;
	background-color:#000;
	text-align:center;
	text-transform:uppercase;
	margin:0;
}
.event-aside .event-date {
	font-size:1.25em;
	font-weight:bold;
	color:#000;
}
.event-aside div.event-trailer {
	padding:0;
	border:0;
}
.event-aside>div>label:first-of-type {
		display:block;
		font-size:1.5em;
}
.event-aside ul {
	margin:0 0 1em 0;
	padding:0;
	list-style:none;
}
.event-aside ul li {
	display:block;
	margin:0;
}
.event-aside h3-sold-out {
	display:inline-block;
	width:auto;
	margin:0;padding:0.5em 1em;
	background:#000;
	border-radius:2px;
	font-size:1.5em;
	color:#fff;
}
/* Event Sponsors **/
.event-sponsors img {
	margin-right:20px;
}
.event-sponsors .film-sponsors-list {
	display:flex;
	flex-direction:column;
	text-align:center;
}
.event-sponsors .film-sponsors-list div {
	margin-right:50px;
}
.event-sponsors h4 {
	text-transform:uppercase; 
	color:#707070; /* Grey */
}

@media (min-width:800px) {
	.event-container {
		display:grid;
		grid-template-columns: 66% minmax(350px, auto);
  		grid-template-rows: auto auto 6fr;
		grid-template-areas: 
    	"header header"
    	"credits aside"
    	"general aside";
		padding-right:0;
	}
	.event-header {
		grid-area: header;
	}
	.event-film-credits {
		grid-area: credits;
		margin-bottom:0;
		padding-right:40px;
	}
	.event-content {
		grid-area: general;
		padding-right:40px;
	}
	.event-aside {
		grid-area: aside;
	}
}


/* Event menu styling */
/* Unused
.tribe-events-page-title {
	margin-bottom:0 !important;
	font-weight:bold !important;
	text-align:left !important;
}
.events-list-view-single,
.events-day-view-single {
	display:flex;
	width:100%;
	margin-left:0;
	flex-wrap:none;
}
.tribe-events-list .type-tribe_events {
	padding-top:0;
	padding-bottom:1em;
	width:100%;
	margin-left:auto;margin-right:auto;
}
.tribe-events-list-separator-month {
	font-size:1.5em;
	font-weight:normal;
	letter-spacing:2px;
	margin-top:1em;
}
.listing-header { margin-bottom:0em; width:100%; }
.listing-header h2 {
	font-size:1.25em;
	width: calc(100% - 1em);
	padding: 0.25em 1em 0.25em 0.5em;
	background:#fff;
	border:2px solid #000;
	color:#000;
	display:inline-block;
}
.listing-header h2.screening {
	background:#000;
	color:#fff;
	border:none;
}

.listing-image {
	margin-left:0;
	margin-right:20px;
	margin-bottom:0.5em;
	width:150px;
	flex-grow:1;
}
.listing-image img { width:100% !important; height:auto; }
.listing-image .tribe-events-event-image { width:100% !important; margin:0 !important; float:none; }
.single-tribe_events .tribe-events-event-image { margin-bottom:0; }
.listing-image img:hover { opacity:0.70; }

.listing-info {
	display:block;
	overflow:hidden;
	padding-top:0.5em;
	flex-grow:4;
}
.listing-info label { 
	text-transform:uppercase;
	font-weight:bold;
}
.listing-info ul {
	margin:0 0 1em 0;
	padding:0;
	list-style:none;
}
.listing-info ul li {
	display:block;
	margin:0;
}
.listing-info .listing-type { font-size:75%; }
.listing-info:after { clear:left; }
.ticket-info {
	padding-top:0.5em;
	flex-grow:1;
}
.ticket-info .sold-out {
	display:inline-block;
	width:auto;
	margin:0;
	padding:0.25em 0.5em;
	padding:0.5em 1em;
	background:#000;
	border-radius:2px;
	font-size:1em;
	color:#fff;
}
@media (max-width:600px) {
	.events-list-view-single,
	.events-day-view-single {
		flex-direction:column;
	}
	.listing-image {
		margin-left:0;
		margin-right:0;
		margin-bottom:0.5em;
		width:100%;
		flex-grow:1;
	}
}
*/
.tribe-events-tooltip .tribe-event-description { display:none; }
.tribe-events-address { font-style:normal !important; }
.tribe-events-address .tribe-country-name { display:none; }
.single-tribe_events .tribe-events-event-image {
    text-align:left;
}

/* Buttons on Day navigation (can't assign a class to them) */
.tribe-events-nav-previous a,
.tribe-events-nav-next a {
		display:inline-block;
		margin:0;
		padding:0.25em 0.5em;
		background:rgb(214,26,36);
		border-radius:2px;
		font-size:1em;
		color:rgb(255,255,255) !important;
}
.tribe-events-nav-previous a:hover,
.tribe-events-nav-next a:hover {
	background:rgb(240,98,102);
	text-decoration:none;
}


/***** Sponsor listings formatting ****/
.sponsors-level1,
.sponsors-level2,
.sponsors-level3 { 
/*	display:flex;
	flex-wrap:wrap;
	flex-direction:row;
	justify-content:center; */
	text-align:center;
	margin:0 auto 10px auto;
}
.sponsors-level1 img {
	height:85px; width:auto;
}
.sponsors-level2 img {
	height:60px; width:auto;
	padding:5px;
}
.sponsors-level3 img {
	height:40px; width:auto;
	padding:5px;
}
.sponsors-level1 img:hover,
.sponsors-level2 img:hover,
.sponsors-level3 img:hover {
	opacity:0.7;
}


/***** Blog styling ****/
.blog-post>.section-title {
	display:block;
	padding-bottom:2px;
	border-bottom:2px solid #000;
	margin-bottom:1.5em !important;
}
#player { width:100%;height:100%; }
#player video {
	width:75% !important; height:auto !important;
}

/* Hot Spots */
.hotspot-list {
    display:flex;
    flex-wrap:wrap;
    width:100%;
}
.hotspot-list--instance {
    width:31.5%;
    margin-right:0.75%;
    margin-left:0.75%;
    margin-bottom:15px;
}
.hotspot-list--header {
    display:block;
    width:100%;
    margin-bottom:0.25rem;
}
.hotspot-list--header:hover {
    opacity:0.7;
}
.hotspot-list--info {
    display:flex;
}
.hotspot-list--logo {
    width:30%;
    margin-right:15px;
    margin-left:0;
}
@media (max-width:800px) {
    .hotspot-list--instance {
        width:48%;
    }
}
@media (max-width:500px) {
    .hotspot-list--instance {
        width:100%;
        margin-right:0;
    }
}


/***** CineYouth program display ****/
.cineyouth-film-table { border:0 !important; }
.cineyouth-film-table tr td:first-of-type img { width:200px !important; height:133px !important; margin-right:15px !important; }
.cineyouth-film-table td { vertical-align:top; border:0 !important; padding-bottom:15px; }
.cineyouth-film-table tr td:first-of-type { width:215px !important; }
.cineyouth-film-table tr.header td:first-of-type { width:100% !important; }
.cineyouth-film-table h3 { margin:0 !important; text-transform:uppercase; }
.cineyouth-film-table .cineyouth-credit { display: block;margin-top:5px;font-size:85%;line-height:1.2;color:#6C6C6C; }

/* CineYouth screening list in events */
.cineyouth-event-film { display:block; margin-bottom:2em; }
.cineyouth-event-film img { width:200px; height:auto; float:left; margin-right:1.5em; }
.cineyouth-event-film div { display:block; }
.cineyouth-event-film h3 { text-transform:uppercase; }
.cineyouth-credit { display:block;font-size:85%;line-height:1.2;color:#6C6C6C; }

/****** Program Film Line Up (Intl Screening, Sneak Peak, CineYouth) ****/
.filmprogram-list {
	display:flex;
	flex-flow: row wrap;
	align-items:stretch;
}
.filmprogram-list h2,
.filmprogram-list p {
	margin:0;padding:0;
}
.filmprogram-list p {
	line-height:0;
}
.filmprogram-list h2 {
	font-size:1.25em;
	margin-top:5px;
	line-height:1.2
}
.filmprogram-list>div {
	width:295px;
	margin:10px;
	height:auto;
	padding-bottom:1em;
	overflow:hidden;
	background-color:#e8e9f0;
}
.filmprogram-list>div>div {
	padding:0 1em;
}
.filmprogram-list>div img {
	width:100%;
	height:auto;
	margin-bottom:0.5em;
	opacity:0.7;
	border:0 !important;
	border-image-width:0 0 0 0 !important;
	padding:0;
}
.filmprogram-list>div img:hover {
	opacity:1;
}

.filmprogram-list .blurb {
	display:block;
	margin:0.5em 0;
	font-size:85%;
	line-height:1.4;
}
/** End Film list **/


.entry table tbody td {
    border-bottom: none !important;
}
.entry table td, .entry table th {
    border-right: none !important;
}

/****** Tribute page table ****/
.tribute-table {
	display:flex;
	width:100%;
	margin-bottom:2em;
}
.tribstill {
	min-width:320px;
	padding-right:20px;
	vertical-align:top;
}
@media (max-width:400px) {
	.tribute-table {
		flex-direction: column;
	}
	.tribstill {
		min-width:0;
		padding-right:0;
	}
}

/***** Attending Artists List ****/
.attending-film { 
	display:block;
	width:100%;
	}
.attending-film h3 { 
	text-transform:uppercase;
	margin-top:1.5em;
	}
.attending-screening {
	display:flex;
 	flex-flow:row;
  margin:0.5em auto;
	padding:0 1em;
  background:#e8e8e8;
}
.attending-screening .screening-info {
	padding:0.5em;
}
.attending-screening .screening-link {
 	min-width:300px;
  text-align:right;
  margin-left:auto;
	padding-top:1em;
  padding-right:1em;
}
.attending-screening h4 { 
	margin-bottom:0;
}
.attending-screening .date-time { 
	font-weight:bold;
}
.attending-screening label {
	font-weight:bold;
	text-transform:uppercase;
	color:#464646;
}

/* Temp workaround for homepage small supporter icons */
.small-supporter-icons { display:flex; }
.small-supporter-icons>* { height:50px; }

/************** Elevent Embedded Widgets ******/
.elevent-widget {
	min-height:0 !important;
}
.elevent-widget h3 {
	margin-bottom:1rem;
}
.elevent-text-highlight a {
    background:rgb(214,26,36);
}
.elevent-text-success {
    color: #5cb85c !important;
}
.elevent-text-warning {
		background:none;
}
.elevent-text-muted {
    color: #6c757d !important;
}
.elevent-item-name {
    font-weight: bold;
}
.elevent-warning-msg {
	color:rgb(214,26,36);
    border-color:rgb(214,26,36);
    border-radius: 4px;
    padding: 1rem;
}
.elevent-discount-msg {
    background:rgb(214,26,36);
    font-style: italic;
}
.elevent-widget .btn {
    cursor: pointer !important;
    color: #fff !important;
    border-color: rgb(214,26,36) !important;
    font-style: normal;
    background:rgb(214,26,36);
    font-size: 14px !important;
    padding-top: 4px !important;
    padding-bottom: 4px !important;
    padding-left: 15px !important;
    padding-right: 15px !important;
    text-transform: uppercase;
    border: 1px solid transparent;
    border-radius: 4px;
}
.elevent-widget .btn:focus{
	box-shadow: 0 0 0 .2rem rgba(64, 110, 201, .2)!important;
}
.elevent-widget .btn:hover {
    font-style: normal;
    background-color: rgb(240,98,102);
    color: #fff !important;
    transform: none !important;
}


/** Showtime & Ticket Display **/
.elevent-ticket-display {
    border-bottom: solid 1px #efefef;
    border-radius: 8px;
}

.elevent-event-type, .elevent-item-price, .elevent-seat-display, .elevent-venue-name {
    font-size: 12.8px;
}
.elevent-quantity-btn {
    background-color: transparent;
}

/** Add-Ons **/
.elevent-addon-product-lbl {
    border-bottom: solid 1px #efefef;
    border-top: solid 1px #efefef;
    padding: .2rem;
    background-color: #fefefe;
    font-size: 80%;
}
#elevent-checkout-btn {
    color: #fff !important;
    background-color: rgb(214,26,36) !important;
    border-color: rgb(214,26,36) !important;
}
.elevent-addon-lbl {
    color: rgb(214,26,36);
}
.edit-credential-link {
    text-decoration: underline;
}
.elevent-ticket-table {
    table-layout: fixed;
}
.elevent-ticket-table td {
    border: none;
    vertical-align: middle;
    text-align: center;
}
.elevent-addon-row {
    border-top: solid 1px #c0c0c0;
    border-bottom: solid 1px #c0c0c0;
}
.elevent-addon-row:first-child {
    border-bottom: none !important;
}
.elevent-addon-skip-btn {
    color: #fff !important;
    background-color: #5E5E5E !important;
    border-color: #5E5E5E !important;
}
/** Login/Register **/
@media(min-width:730px) {
    .elevent-login-form-container { height: 455px; }
}
/** Checkout **/
.elevent-roundup-container, #elevent-transaction-errors {
    font-size: 80% !important;
}
[class*=" elevent-"]:before, [class^=elevent-]:before {
		margin-top:3px;
}
.elevent-button {
    cursor: pointer !important;
    color: #fff !important;
    border-color: rgb(214,26,36) !important;
    font-style: normal;
    background:rgb(214,26,36);
    font-size: 14px !important;
    padding-top: 4px !important;
    padding-bottom: 4px !important;
    padding-left: 15px !important;
    padding-right: 15px !important;
    text-transform: uppercase;
    border: 1px solid transparent;
    border-radius: 4px;
}
.elevent-button:hover {
	background:rgb(240,98,102);
}
/**** End Elevent Widget ****/