@charset "UTF-8";
/* CSS Document */

/*! minireset.css v0.0.3 | MIT License | github.com/jgthms/minireset.css */
html,body,p,ol,ul,li,dl,dt,dd,blockquote,figure,fieldset,legend,textarea,pre,iframe,hr,h1,h2,h3,h4,h5,h6{margin:0;padding:0}
h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal}
ul{list-style:none}
button,input,select,textarea{margin:0}
img,embed,iframe,object,audio,video{max-width:100%}
iframe{border:0}
table{border-collapse:collapse;border-spacing:0}td,th{padding:0;text-align:left;vertical-align: top;}
/*! END  minireset.css v0.0.3 */

/* SETUP  -------   */

body {
	background-color: #161616;
	width: 100%;
	height: 100%;
	min-height: 600px;
	font-family: 'Lato', sans-serif;
	font-weight: 300;
	color:#ddd;
	font-size: 1em;
	line-height: 1.5;
	
	
}

h1 {
	font-size: 2.4em;
	font-weight: 300;
	padding: 0px;
}
h2 {
	font-size: 1.8em;
	line-height: 1.2;
	font-weight: 300;
	margin: 0 0 0.25em 0;
	padding: 0px;
	text-transform: uppercase;
}
h3 {
	font-size: 1.4em;
	font-weight: 300;
	margin: 0 0 0.4em 0;
	padding: 0px;
}
h4 {
	font-size: 1.2em;
	font-weight: 300;
	margin: 0 0 0.3em 0;
	padding: 0px;
	text-transform: uppercase;
}

section {
	font-size: 1.1em;
	position: relative;
}

p {
	padding-bottom: 0.5em;
}


a {
	text-decoration: none;
	color:#ddd; /* #09f */
}
a:hover {
	color: #e706a9;	
}
ul {
    list-style-position: inside;
}
ul li {
	padding-left: 0.2em;
	list-style: circle;
	margin-left: 1.8em;
}

.nobreak {
  white-space: nowrap;
}

.clrflt {
clear: both;
}

.onhighlight {
	display:inline-block;
	padding: 0 3px 0 3px;
	background-color: darkgreen;
	font-weight: bold;
}
.offhighlight {
	display:inline-block;
	padding: 0 3px 0 3px;
	background-color: red;
	font-weight: bold;
}

.plus {
	color: #e706a9;
	padding: 0 6px 0 1px;
}

.button {
	-moz-appearance: none;
    -webkit-appearance: none;
    -ms-appearance: none;
	display:inline-block;
	background-color: rgb(64,64,64,0.6);
	color:#eee;
	padding: 10px 20px;
	margin: 10px 0;
	font-size: 1.2em;
	font-weight: 400;
	border-radius: 30px;
	border-style: solid;
	border-color: rgba(192,192,192,0.7);
    border-width: 1px;
}
.button:hover {
background-color: #e706a9;
	color:#fff;
}

.button_s {
	-moz-appearance: none;
    -webkit-appearance: none;
    -ms-appearance: none;
	display:inline-block;
	background-color: #555;
	color:#eee;
	padding: 5px 10px;
	margin: 10px 0;
	font-size: 1em;
	font-weight: 500;
	border-radius: 30px;
	border:none;
}

.button_s:hover {
background-color: #e706a9;
	color:#fff;
}

input[type="text"], input[type="email"], input[type="password"], input[type="number"], select, textarea {
    -moz-appearance: none;
    -webkit-appearance: none;
    -ms-appearance: none;
	height:2.6em;
	font-size: 1em;
	margin-bottom: 0.5em;
    appearance: none;
    background: rgba(64,64,64,.5);
    border-radius: 6px;
    border: none;
    color: #fff;
    display: inline-block;
    outline: 0;
    padding: 0 0.8em;
    text-decoration: none;
    width: 100%; 
	max-width: 600px;
	box-shadow: none;
}
input[type="checkbox"] {
 transform:scale(1.6, 1.6);
		margin: 5px 10px;
}

input::placeholder, textarea::placeholder  {
	font-size: 0.9em;
	opacity: 0.5;
	font-weight: 300;
}

.select-wrapper {
	position: relative;
	display: inline-block;
	min-width: 240px;
}

.select-wrapper:after {
	position: absolute;
  cursor: pointer;
  content: '\25BC';
  font-size: 70%;
  transform: scaleY(0.75);
  right: 4px;
  color: #ddd;
  top: 40%;
  line-height: 0;
}


textarea {
height: 160px;	
}

label {
	font-size: 0.9em;
	color: #ccc;
	display:inline-block;
	width: 20%;
	max-width: 150px;
}

.hybrid_box {
	display: block;
	width: 100%;	
}

.online_label {
	display: inline-block;
	background-color: #B10092;	
	padding: 2%;
	text-align: center;
	width: 44%;
	color: white;
	font-size: 0.85em;
	text-transform: uppercase;
	font-weight: bold;
}
.in_person_label {
	display: inline-block;
	background-color: #038C6D;
	padding: 2%;
	text-align: center;
	width: 44%;
	color: white;
	font-size: 0.85em;
	text-transform: uppercase;
	font-weight: bold;
}

.online_label_s {
	display: inline-block;
	background-color: #B10092;	
	padding: 2px;
	text-align: center;
	color: white;
	font-size: 0.75em;
	text-transform: uppercase;
	font-weight: bold;
}
.in_person_label_s {
	display: inline-block;
	background-color: #038C6D;
	padding: 2px;
	text-align: center;
	color: white;
	font-size: 0.75em;
	text-transform: uppercase;
	font-weight: bold;
}

.showing-date {
		font-size: 1em;
		font-weight: 500;
		padding: 0 0 5px 0;
	}
	.showing-location {
		font-size: 1em;
		font-weight: 300;
		line-height: 1.2;
		padding: 0 0 10px 0;
	}



.qr_code {
	width: 100%;
}
.qr_code img {
	width: 100%;
	height: 100%;
}

.error {
color:white;
	background-color: #A50052;
	display: inline-block;
	font-weight: 600;
	padding: .5em 1em .4em 1em;
	font-size: 1.2em;
	margin: 0 1em 1.4em 0;
	border-radius: 10px;
}
.success {
background-color:#009D30;
	display: inline-block;
	font-weight: 400;
	padding: .5em 1em .4em 1em;
	font-size: 1.2em;
	margin: 0 1em 1.4em 0;
	border-radius: 10px;
}
.message {
background-color: #1E3BEF;
	display: inline-block;
	font-weight: 400;
	padding: .5em 1em .4em 1em;
	font-size: 1.2em;
	margin: 0 1em 1.4em 0;
	border-radius: 10px;
}

.in-person-color {
	background-color: #038C6D;
}
.online-color {
	background-color: #B10092;
}

.my_pass_label {
			width: 100%;
			box-sizing: border-box;
			padding: 5px 10px 10px 20px;
			margin: 0 0 10px 0;
			background-color: #1E3BEF;
			color: white;
			font-weight: 500;
			font-size: 1.1em;
		}


*::-webkit-input-placeholder {
    color: #ccc;
}
*:-moz-placeholder {
    /* FF 4-18 */
    color: #ccc;
}
*::-moz-placeholder {
    /* FF 19+ */
   color: #ccc;
}
*:-ms-input-placeholder {
    /* IE 10+ */
    color: #ccc;
}

*:link, *:visited, *:hover, *:active, *:focus {

   -webkit-transition: color .25s linear,
    background-image .25s linear,
    background-color .25s linear,
	padding-left .5s ease-in-out,
	padding-right .5s ease-in-out,
    border-color .25s linear;
	
	
	-moz-transition: color .25s linear,
    background-image .25s linear,
    background-color .25s linear,
	padding-left .5s ease-in-out,
	padding-right .5s ease-in-out,
    border-color .25s linear;
	
	

   transition:  color .25s linear,
    background-image .25s linear,
    background-color .25s linear,
	padding-left .5s ease-in-out,
	padding-right .5s ease-in-out,
    border-color .25s linear;
	
}


.more-symbol {
	padding-top: 0.5em;
	color:#777;
}
    

/* HEADER -------   */
header {
min-height: 60px;
	background-color: #000;
	color:#ddd;
	position: fixed;
	z-index: 10;
	top: 0px;
	width: 100%;
	
}

header .wrapper {
	padding-left:auto;
	padding-right:auto;
	max-width: 1440px;
	
}

nav {
	padding-top:10px;
	padding-left: 3%;
	float:left;
	text-transform: uppercase;

}

nav a {
	color:#ddd;
	font-size: 1.2em;
	font-weight: 300;
	padding-right: 24px;
	
}
nav a:hover {
	color:#e706a9;	
}
#nav-desktop {
			display:block;
		}	
#nav-mobile {
	display:none;
}

.mobile_menu{
padding: 3.5em 0 2em 3%;
font-size: 1.4em;
text-transform: uppercase;
line-height: 2;
background-color:#260026;
display: none;
}

.user_menu{
color: white;
padding: 3.5em 3% 2em 0;
font-size: 1.4em;
text-transform: uppercase;
line-height: 2;
	text-align: right;
	display: none;
}

.admin_menu {
	background-color:#555;
	font-size: 1em;
	padding: 1 10 0 10;
	text-align: left;
}

.toggle-button {
	color: white;
	padding: 0 0 0 3%;
	float:left;
	display: inline-block;
}

/* mobile menu */
.menu-tab-right{
  width: 90px;
  height: 70px;
  position: fixed;
  z-index: 100;
  top: 0px;
  right: 0px;
  cursor: pointer;
  display: none;
		}
		
.menu-tab-left{
  width: 90px;
  height: 70px;
  position: fixed;
  z-index: 100;
  top: 0px;
left: 0px;
  cursor: pointer;
	 display: none;
		}

.menu-right{
  width: 280px;
  right: -300px;
  height: 100vh;
  position: fixed;
  z-index: 10;
  top: 0px;
	background-color: rgba(60,1,60,0);
  transition: all .6s ease-in-out;
		}
 .menu-left{
  width: 280px;
  left: -300px;
  height: 100vh;
  position: fixed;
  z-index: 10;
  top: 0px;
  background-color: rgba(60,1,60,0);
  transition: all .6s ease-in-out;
		}
		
.menu-right.show{
 right: 0px;
  background-color: rgba(60,1,60,1.00);
  transition: all .6s ease-in-out;
}
.menu-left.show{
 left: 0px;
  background-color: rgba(60,1,60,1.00);
  transition: all .6s ease-in-out;
}

/* end mobile menu */


.menu_right {
	float: right;
	font-size:0.9em;
	padding: 8px 3% 0 0;
	display: block;
}
.menu_right_mobile {
	float: right;
	font-size:0.9em;
	font-size: 1em;
	padding: 12px 3% 0 0;
	display: none;
}

.menu_center_mobile {
	text-align: center;
	padding: 10px 0 0 0;
	font-size: 1.5em;
	display:none;
}

.logo {
	float:right;
	padding-right: 3%;
	padding-top: 10px;
	width:30%;
	max-width: 200px;
}
.logo img {
	width: 100%;
}

#panel {
	background-color: #161616;
	height: 100%;
	padding: 0 0 70px 0;
}


/* CONTENT -------   */
.content {
max-width: 1800px;
	height: 100%;
	margin: 60px auto;
	color:#eee;
	
}

.login_request {
	text-align: center;
	padding: 30px 0 60px 0;
}

section .wrapper {
	position: relative;
	padding: 20px 3% 40px 3%;
	
}

.title {
	width:100%;
	text-align: center;
	padding: 10px 0 20px 0;
}

.main {
	padding: 0 3% 20px 3%;
}


.slider-box {
	width:50%;
	
}
.video-box {
	width:50%;
	padding: 1em 0 02em 0;
}

.text-box {
	width:44%;
	height:auto;	
	padding: 20px 3% 20px 3%;	
}
.pos-1 {
float:left;
}
.pos-2 {
float:right;
}

.center {
	padding: 0 3% 0 3%;
	text-align: center;
}

.response_box {
	background:rgba(64,64,64,0.4); 
		clear:both;
		width: 94%;
		padding: 3%;
	border-radius: 10px;
}

.topshelf {
	with: 100%;
	padding: 0 0 16px 0;
			background-repeat: no-repeat;
            background-position: center;
			background-size: cover;
		}

.topshelf .inner {
		   padding-top: 25%; /* height/width of image */
           display: block;
           height: 0;
		}


.app_icon {
	width: 100px;
	border-radius: 10px;
}

.appletv_icon {
	width: 167px;
	border-radius: 10px;
	padding: 1em  0 0 0;
}

video {
	display:block;
  width: 100%    !important;
  height: auto   !important;
}
.video_festivals {
 display:block;
  width: 100%;
	max-width: 600px;
  height: auto;
	margin: 0 auto 0 auto;
}

.home-contact {
float:left;
	width:50%;
	padding: 0 5% 20px 0;
	
}

.contact {
	margin-top: 30px;
	margin-bottom: 20px;
}

.terms {
	margin: 0 auto 0 auto;
	width: 100%;
	max-width: 760px;
}

	.picture_box {
			width:100%;
			background-repeat: no-repeat;
            background-position: center;
			background-size: cover;
		}
    
		.picture_box .inner {
		   padding-top: 56.25%; /* height/width of image */
           display: block;
           height: 0;
		}

	

.picture_box_2 {
			width:49.5%;
	        margin: 30px 0 0 0; 
		    display:inline-block;
			background-repeat: no-repeat;
            background-position: center;
			background-size: cover;
		}

.picture_box_2 .inner {
		   padding-top: 66.6%; /* height/width of image */
           display: block;
           height: 0;
		}
.picture_box_2 .inner_sq {
		   padding-top: 100%; /* height/width of image */
           display: block;
           height: 0;
		}
	
	.text-box {
		margin: 0 0 40px 0;
	}
	
	.call-action {
	width: 100%;
	text-align: center;
	padding: 30px 0 30px 0;	
		
	}
	
	.content_box {
		display: table;
		width: 100%;
	}
	.row {
		display: table-row;
	}

.qa {
		padding: 0 3% 0 3%;
	}
	
   .question{
	font-size: 1.4em;
	   font-weight: 500;
	padding: 10px 0 10px 3%;
	}

	
	.answer{
	font-size: 1.0em;
	padding: 10px 0 10px 0;
		display: block;
		overflow: hidden;
	}
	.qa_content {
	float: left;
	width: 40%;
	margin: 0 5% 10px 5%;
	font-size: 1.2em;
	}
	
	.qa_picture{
	        float: left;
	        width:25%;
			background-repeat: no-repeat;
            background-position: center;
			background-size: cover;
			border-radius: 3px;
		}
	
		.qa_picture .inner {
			padding-top: 63.35%; /* height/width of image */
           display: block;
           height: 0;
	}
/* FILM ---------  */

.film_content {
			padding: 20px 2% 20px 2%;
		}
	.film_content h2{
			text-transform: uppercase;
		}
	.festival_menu {
		padding: 0 0 10px 0;
		text-align: center;
	}	

/* PASS------   */
.pass_box {
		width: 94%;
		max-width: 640px;
		background-color: rgba(64,64,64,0.4);
		padding: 10px;
		border-radius: 10px;
		margin-bottom: 20px;
	}
	.pass_box table {
		width: 100%;
	}
	
	.pass_box td {
		padding: 0 1% 0 1%;
	}
	.ticket_box {
		padding: 10px 0 20px 2em;
	}
.unregister {
		float: right;
	}

.festival_description {
	text-align: left;
	width: 96%;
	max-width: 600px;
	margin: 20px auto 20px auto;
}


/* FOOTER-------   */

footer {
	position: fixed;
	z-index: 10;
	bottom: 0px;
	height: 70px;
	width: 94%;
	background-color: rgba(16,16,16,0.9);
	color:#aaa;font-size: 0.8em;
	padding: 0 3% 5px 3%;
}
.iframe footer {
	height: 40px;
}
.footer_menu {
	width: 70%;
	font-size: 1.1em;
	margin: 6px auto 0 auto;
	text-align: center
}
.copyright {
	width: 60%;
	margin: 4px auto 0 auto;
	text-align: center
}
.iframe .copyright {
	margin: 14px auto 0 auto;
}

.ffa_logo {
	float: left;
	width: 120px;
}
.ffa_logo img {
	width: 100%;
}

.go_top {
	float: right;
	width: auto;
	padding: 20px 0 0 0;
	text-align: right;
}
.iframe footer .go_top {
	padding: 10px 0 0 0;
}


@media (max-width: 1024px) {
	
	
	.menu-tab-right{
  display: block;
		}
		
.menu-tab-left{
	 display: block;
		}

	
	.slider-box {
	width:50%;
	
}
	.video-box {
	width:100%;
	padding: 1em 0 2em 0;
}
.text-box {
	width:40%;
	padding: 20px 5% 20px 5%;
}
	
	
	  #nav-desktop {
			display:none;
		}	
		
		#nav-mobile {
	display:block;
}
	
	.menu_right {
	display: none;
}
.menu_right_mobile {
	display:block;
}
	
	.menu_center_mobile {
	display:block;
}
	
	.mobile_menu{
display: block;
}

.user_menu{
	display: block;
}

	.topshelf .inner {
		   padding-top: 29%; /* height/width of image */
           display: block;
           height: 0;
		}
	
	
} /* end widt 1024px */

@media (max-width: 768px) {
	
	
	.slider-box {
	width:100%;
	
}
	
	.picture_box_2 {
	        margin: 0; 
	}
	
	.video-box {
	width:100%;
	padding: 1em 0 02em 0;
}
	
.text-box {
	width:90%;
	padding: 20px 5% 20px 5%;
}
	section {
	border-bottom-style: none;	
}

	
	.content_box {
		display:block;
		width: 100%;
	}
	.row {
		display:block;
	}
	.pos-1 {	
		float:none;
	}
	.pos-2 {
		float:none;
	}
	

h1 {
	font-size: 1.8em;
	line-height: 1.2;
}
h2 {
	font-size: 1.5em;
	margin: 0 0 0.2em 0;
}
h3 {
	font-size: 1.3em;
	font-weight: 400;
	margin: 0 0 0.4em 0;
	padding: 0px;
}
h4 {
	font-size: 1em;
	font-weight: 400;
	margin: 0 0 0.6em 0;
	padding: 0px;
}
		

section {
	font-size: 1.1em;
}
		header {
			min-height: 40px;
		}

		video {
			display:none;
		}
		
		.af-bk {
	display:block;
}
	.home-contact {
float:none;
	width:100%;
	padding: 10px 2% 20px 2%;
	
}	
			

.logo {
	float:right;
	padding-right: 2%;
	padding-top: 5px;
	width:50%;
	max-width: 200px;
}		

	.qa_content {
	float: none;
	width: 88%;
	margin: 0 2% 10px 10%;
	font-size: 1.2em;
	}
	
	.qa_picture{
	        float: none;
	        width:80%;
		margin: 0 10% 0 10%;
			background-repeat: no-repeat;
            background-position: center;
			background-size: cover;
			border-radius: 3px;
		}
	
	footer {
		height: 60px;
	}
	
	.ffa_logo {
	width: 100px;
}
	
	
	.topshelf .inner {
		   padding-top: 36%; /* height/width of image */
           display: block;
           height: 0;
		}
	
	.video_festivals {	
  width: 90%;
}

	
	} /* end widt 768px */



@media (max-width: 480px) {

	.video_festivals {	
  width: 100%;
}
	
}	/* end widt 480px */
	

