@media screen and (max-width: 900px) {
	header {
		height: auto;
		min-height: 135px;
	}

	header .logo {
		width: 180px;
		height: 65px;
		left: 48px;
		top: 36px;
		background-size: 180px auto;
	}

	header.home {
		background-color: rgba(35, 37, 41, 1);
		min-height: 0px;
	}
	
	header nav {
		width: 100%;
		height: 0px;
		padding: 0;
		overflow: hidden;
		
		transition: height 0.8s cubic-bezier(0,0.6,0.4,1);
	}
	
	header nav ul {
		display: table;
		width: 100%;
		height: calc(100vh - 194px);
		text-align: center;
		margin: 147px 0 47px 0;
	}

	header nav ul li {
		display: table-row;
		font-size: 41px;
	}

	header nav ul li a:after {
		display: none;
	}

	header .nav_expand {
		display: block;
		position: absolute;
		right: 48px;
		top: 48px;
		width: 48px;
		height: 36px;
		cursor: pointer;
		
		-ms-transition: top 0.5s cubic-bezier(0.6,0,0.4,1);
		-webkit-transition: top 0.5s cubic-bezier(0.6,0,0.4,1);
		transition: top 0.5s cubic-bezier(0.6,0,0.4,1);
	}
	
	header .nav_expand span {
		display: block;
		position: absolute;
		width: 52px;
		height: 4px;
		background: #efefef;
		
		-webkit-transition: top 0.3s, transform 0.3s 0.3s;
		transition: top 0.3s, transform 0.3s 0.3s;
	}
	
	header .nav_expand.hide span {
		-webkit-transition: top 0.3s 0.3s, transform 0.3s;
		transition: top 0.3s 0.3s, transform 0.3s;
	}
	
	header .nav_expand span:nth-child(1) {
	  top: 0px;
	}
	
	header .nav_expand span:nth-child(2) {
	  top: 16px;
	}
	
	header .nav_expand span:nth-child(3) {
	  top: 32px;
	}
	
	header.show .nav_expand span:nth-child(1) {
	  top: 16px;
	  transform: rotate(-45deg);
	}
	
	header.show .nav_expand span:nth-child(2) {
		display: none;
	}
	
	header.show .nav_expand span:nth-child(3) {
	  top: 16px;
	  transform: rotate(45deg);
	}
	
	body.show_banner header {
		height: auto;
		min-height: 219px;
	}

	body.show_banner header.hide {
		-ms-transform: translateY(-219px);
		-webkit-transform: translateY(-219px);
		transform: translateY(-219px);
	}
	
	body.show_banner header .nav_expand {
		top: 132px;
	}
	
	body.show_banner header .logo {
		top: 120px;
	}
	
	body > footer {
		height: 250px;
	}

	body > footer ul {
		width: 100%;
		height: 113px;
		margin: 0;
		border-spacing: 100% 0;
	}

	body > footer li {
		font-size: 25px;
	}

	body > footer li:nth-child(4) {
		display: none;
	}

	body > footer li i:not(.fa-download) {
		font-size: 36px !important;
	}

	body > footer .logo {
		position: relative;
		width: 100%;
		height: 137px;
		left: auto;
		top: auto;
		background-color: #232529;
		text-align: center;
		
		transform: none;
	}
	
	body > footer .logo img {
		display: inline-block;
		width: 250px;
		height: auto;
		margin: 33px 0 0 0;
	}
}

@media screen and (max-width: 720px) {
	br.desktop, span.desktop {
		display: none;	
	}
	
	.container {
		padding: 0 0 250px 0;
	}
	
	blockquote p {
		font-size: 24px;
		line-height: 35px;
	}

	blockquote footer {
		font-size: 19px;
	}
	
	article .date {
		font-size: 18px;
		line-height: 27px;
	}

	.textblock.header {
		font-size: 18px;
		line-height: 24px;
	}

	.textblock.p {
		font-size: 22px;
		line-height: 37px;
	}

	.textblock.p.medium {
		font-size: 23px;
		line-height: 27px;
	}

	.home .header img.rumble {
		width: 70%;
		height: auto;
		margin: 60px 0 80px 0;
	}
	
	.home .header iframe {
		width: 100%;
		height: calc(100vw * (405/720));
		margin: 0;
	}
	
	.home .header blockquote p {
		padding: 0 5%;
	}
	
	.home .synopsis h1 {
		font-size: 27px;
		line-height: 35px;
	}

	.home .synopsis p, .home .synopsis h2, .home.synopsis h3 {
		font-size: 24px;
		line-height: 37px;
		padding: 0 5%;
	}

	.home .synopsis ul {
		width: 100%;
		padding: 0 5%;
	}
	
	.home .synopsis ul li {
		font-size: 24px;
		line-height: 35px;
	}

	.home .synopsis .credits {
		display: none;
	}
	
	.home article h1 {
		font-size: 28px;
		line-height: 35px;
	}

	.home article p {
		font-size: 21px;
		line-height: 27px;
	}
	
	.screenings {
		padding: 190px 0 0 0;
	}
	
	.screenings ul.screenings_container li > div.date, .screenings ul.screenings_container li > div.location {
		font-size: 18px;
		line-height: 24px;
	}

	.screenings ul.screenings_container li > div.description {
		font-size: 19px;
		line-height: 27px;
	}

	.screenings ul.screenings_container li > div.description .title {
		font-size: 23px;
	}

	.news {
		padding: 229px 0 0 0;
	}
	
	.news .news_container article .date {
		font-size: 18px;
		line-height: 24px;
	}

	.news .news_container article h1 {
		font-size: 31px;
		line-height: 37px;
	}

	.news .news_container article p {
		font-size: 22px;
		line-height: 30px;
	}

	.press {
		padding: 190px 0 0 0;
	}
	
	.about .synopsis {
		padding: 220px 5% 0 5%;
	}
	
	.about .synopsis h1 {
		font-size: 25px;
		line-height: 33px;
	}

	.about .synopsis h2, .about .synopsis p {
		font-size: 24px;
		line-height: 37px;
	}

	.about .gallery li {
		width: calc(50% - 2px);
	}
	
	.cast .participants {
		padding: 198px 5% 86px 5%;	
	}
	
	.cast h1 {
		font-size: 28px;
	}

	.cast p {
		font-size: 20px;
		line-height: 32px;
	}

	.cast .participants ul li {
		font-size: 21px;
		line-height: 34px;
	}
	
	.cast .credits .credits_container {
		display: block;
		-webkit-column-count: 2;
		-moz-column-count: 2;
		column-count: 2;
		max-width: 80%;
		border-spacing: 0;
	}

	.cast .credits .credits_container > div {
		display: inline-block;
		width: 100%;
		margin: 0 0 32px 0;
	}

	.cast .credits .credits_container h2, .cast .credits .credits_container p {
		font-size: 20px;
		line-height: 32px;
	}
	
	.cast .biographies h2 {
		font-size: 28px;
	}

	.cast .biographies h3 {
		font-size: 18px;
	}

	.cast .biographies a {
		font-size: 20px;
	}
	
	.cast .pictures li {
		width: calc((100% / 2) - 2px);
	}
	
	.cast .biographies li {
		width: 94.68%;
		margin: 0 auto 2.66% auto;
	}

	form input {
		font-size: 16px;
	}	
}

@media screen and (max-width: 1024px) {

	
	/*************************************
		Backgrounds
	 *************************************/

	
	.container {
		padding: 0;
	}
	
	.home .home_news, .screenings, .news, .press, .about, .cast, .contact {
		background-image: none;
	}

	.home .home_news:before, .screenings:before, .news:before, .press:before, .about:before, .cast:before, .contact:before {
		content: "";
		display: block;
		position: fixed;
		width: 100%;
		height: 100vh;
		left: 0px;
		top: 0px;
		background-size: cover;
		z-index: -1;
	}
	
	.home .home_news:before {
		background: url(../images/bckg-home-news.jpg) center bottom no-repeat;
	}
	
	.screenings:before {
		background: url(../images/bckg-screenings.jpg) center top no-repeat;
	}

	.news:before {
		background: url(../images/bckg-news.jpg) center top no-repeat;
	}

	.press:before {
		background: url(../images/bckg-press.jpg) center top no-repeat;
	}
	
	.about:before {
		background: url(../images/bckg-about-quotes.jpg) center top no-repeat;
	}
	
	.cast:before {
		background: url(../images/bckg-news.jpg) center center no-repeat;
	}
	
	.contact:before {
		background: url(../images/bckg-contact.jpg) center top no-repeat;
	}
	
	body > footer {
		position: relative !important;
		background: #191A1C;
		z-index: 1000;
	}
}

@media screen and (max-width: 1050px) {
	.cast .videos ul {
		padding: 0 5px;
	}
	
	.cast .videos li {
		width: calc((100vw - 40px) / 3);
	}

	.cast .videos .bckg {
		height: calc((9 / 16) * ((100vw - 40px) / 3));
		background-size: calc(((100vw - 40px) / 3) + 40px) auto;
	}
}

@media screen and (max-width: 900px) {
	.cast .videos li {
		width: calc((100vw - 30px) / 2);
	}

	.cast .videos .bckg {
		height: calc((9 / 16) * ((100vw - 30px) / 2));
		background-size: calc(((100vw - 30px) / 2) + 30px) auto;
	}
}

@media screen and (max-width: 720px) {
	.cast .videos li {
		width: calc(100vw - 20px);
	}

	.cast .videos .bckg {
		height: calc((9 / 16) * (100vw - 20px));
		background-size: calc((100vw - 20px) + 30px) auto;
	}
}