/* -------------- Global Styles --------------- */

* {
	box-sizing: border-box;
}

html {
	font-size: 62.5%;
	overflow-x: hidden;
}

body {
	color: #fff;
	font-family: 'Gomme-sans', sans-serif;
	font-size: 16px;
	font-size: 1.6rem;
	font-weight: 400;
	line-height: 25px;
	line-height: 2.5rem;
	background-color: #000!important;
	overflow-x: hidden;
	margin: 0;
}

ul,
li {
	list-style: none;
}

ul,
ol {
	padding-left: 0;
}

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

h1, h2, h3, h4, h5, h6 {
	font-weight: 800;
	margin-top: 0;
}

#main-content {
	background-color:#000;
	padding:12rem;
}

.main-title {
	margin: 8rem 0 5rem;
}

.main-title .date {
	white-space: nowrap;
}

.center {
	text-align: center;
}

.filmmaker-name {
	color: #fff;
	margin-block-end:0;
}

.filmmaker-name.weigel {
	font-size: 32px;
}

.filmmaker-photo{
	margin-right: 16px;
	width:290px;
	height:363px;
}

.filmmaker-craft-image{
	display:flex;
	align-items: flex-end;
	max-width: 500px;
}

.rowV2{
	display: flex;
	flex-direction: row;
}

.colV2a{
	width:50%;
}

.colV2b{
	width:50%;
}

.max-screen-width{
	max-width: 1600px;
	margin-left:auto;
	margin-right:auto;
}

.cyan.section-inner.lg-col-wrapper-indent{
	padding-right: 0px;
	padding-bottom:0px;
	margin-bottom: -20px;
}

h1 {
	color: #fff;
	font-family: 'Azo-sans-web', sans-serif;
	font-style: italic;
	font-size: 5rem;
	font-weight: 800;
	line-height: 5.5rem;
	margin-top: 2rem;
	margin-bottom: 5.5rem;
	text-align: center;
	text-transform: uppercase;
}

h3 {
	font-family: 'Azo-sans-web', sans-serif;
	font-style: italic;
	font-weight: 800;
	font-size: 26px;
}

.mobile-space-title {
	display: none;
}

.subtitle {
	color: #fff;
	font-family: "Azo-sans", sans-serif;
	font-size: 30px;
	line-height: 6rem;
	font-weight: 100;
	font-style: italic;
	margin-top: 0rem;
	text-align: center;
}

h2 {
	font-family: 'Azo-sans', sans-serif;
	font-style: italic;
	font-size: 3rem;
	line-height: 3.5rem;
}

h2.subtitle {
	font-family: "gomme-sans", sans-serif;
	font-weight:300;
	font-size: 3rem;
	margin: -1rem 0 4rem;
}

a {
	color: #fff;
	transition: all 300ms ease;
	text-decoration: underline;
}

p {
	font-size: 1.8rem;
}

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

ul li {
	font-size: 2.2rem;
	margin-bottom: 1rem;
}

.list-vertical li {
	margin-bottom: 3rem;
}

.brand-title {
	font-family: "gomme-sans", sans-serif;
	font-weight: 600;
	font-style: normal;
	margin-bottom: 0.5rem;
	text-transform: uppercase;
}

.btn-primary {
    background-color: #6F6E69;
    display: inline-block;
    font-size: 2.4rem;
    font-weight: bold;
    padding: 2.8rem 3rem 3rem;
    border: 6px solid white;
    border-radius: 10px;
    text-transform: uppercase;
    text-decoration: none;
}

.btn-primary.large {
	min-height: 100px;
	padding: 1.8rem 3rem 2rem;
}

.btn-primary.small {
	font-size: 1.8rem;
	padding: 1.3rem 1.3rem 1.5rem;
	border: 4px solid;
}

.btn-primary.small:hover {
	border: 4px solid;
}

.btn-primary:hover,
.btn-primary:focus {
	background-color: white;
	color: #6F6E69;
	border: 6px solid #6F6E69;
}

.btn-primary .subheading {
	display: contents;
	font-weight: 500;
	line-height: 3rem;
	text-transform: capitalize;
}

.inline-btn {
	display: flex;
	justify-content: center;
	text-align: center;
}

.inline-btn .btn-primary {
	display: flex;
	align-items: center;
	margin: 0 2rem 1rem;
}

.text-upper {
	text-transform: uppercase;
}

/* -------------- Carousel --------------- */

.mySlides {
	display: none;
}

img {
	vertical-align: middle;
}

/* Slideshow container */
.slideshow-container {
  max-width: 1000px;
  position: relative;
  margin: auto;
}

/* Next & previous buttons */
.prev, .next {
	cursor: pointer;
	position: absolute;
	top: 50%;
	width: auto;
	padding: 16px;
	margin-top: -22px;
	color: white;
	font-weight: bold;
	font-size: 64px;
	transition: 0.6s ease;
	border-radius: 0 3px 3px 0;
	user-select: none;
  }

/* Position the "next button" to the right */
.next {
	right: 0;
	border-radius: 3px 0 0 3px;
 }

 .prev:hover, 
 .next:hover {
 	text-decoration: none;
 	filter: brightness(0.9);
 }

/* Caption text */
.text {
	background-color: grey;
    padding: 8px 12px;
    width: 100%;
    text-align: center;
}

/* Number text (1/3 etc) */
.numbertext {
  color: #f2f2f2;
  font-size: 16px;
  padding: 8px 12px;
  position: absolute;
  top: 0;
}

/* The dots/bullets/indicators */
.dot {
  height: 15px;
  width: 15px;
  margin: 0 2px;
  background-color: #bbb;
  border-radius: 50%;
  display: inline-block;
  transition: background-color 0.6s ease;
}

.active {
  background-color: #717171;
}

/* Fading animation */
.fade {
  animation-name: fade;
  animation-duration: 1.5s;
}

@-webkit-keyframes fade {
  from {opacity: .4} 
  to {opacity: 1}
}

@keyframes fade {
  from {opacity: .4} 
  to {opacity: 1}
}

/* On smaller screens, decrease text size */
@media only screen and (max-width: 300px) {
	.prev, .next,.text {
		font-size: 11px;
	}
 }


/* -------------- Main Nav --------------- */

.main-nav-outer {
	position: absolute;
	display: flex;
	justify-content: flex-end;
	width: 100%;
	z-index: 25;
}

.main-nav {
	width: 100%;
}

.main-nav-outer a{
	color: white;
}

.footer-nav {
	display: flex;
	align-items: center;
}

.footer-nav ul {
	display: flex;
	flex-grow: 1;
    justify-content: center;
}

.footer-nav ul li {
	padding-right: 3rem;
}

.footer-nav li a {
	color: #fff;
	text-transform: uppercase;
	text-decoration: none;
	font-weight: 500;
}

.footer-nav li a:hover,
.footer-nav li a:focus {
	color: #fff;
	text-decoration: underline;
}

.header-social-icons {
	display: flex;
	margin-top: 2rem;
}

.header-social-icons i {
	color: #fff;
	padding-right: 3rem;
}

.header-social-icons i:hover,
.header-social-icons i:focus,
.search-form button:hover,
.search-form button:focus {
	
	cursor: pointer;
}

.fa-search {
    margin-top: 0.4rem;
}

.menu-toggle {
	display: block;
}

ul.nav-small.nav-open, 
.search-bar.open {
    background: #fff;
    display: block;
    width: 100%;
    position: absolute;
    z-index: 99999;
}

.search-bar {
    border-top: 1px solid #e6e6e6;
    border-bottom: 1px solid #e6e6e6;
    padding: 2rem;
}

.search-bar.closed {
	display: none;
}

.search-bar form {
    background-color: #ebebeb;
    color: #252525;
    border-radius: 50px;
    margin: 0 auto;
    width: 80%;
}

.search-form {
	font-size: 2rem;
}

.search-bar-input-wrap {
    float: left;
    margin-right: -70px;
    width: 100%;
}

.search-bar-input-wrap input {
	border: 2px solid #000;
	color: #000;
	border-radius: 50px;
	width: 100%;
}

.search-form input {
    margin-right: 70px;
    padding: 0 30px;
    vertical-align: middle;
}

.search-form input, .search-form button {
    background: none;
    display: block;
    float: left;
    height: 50px;
}

.search-form button {
    float: right;
    width: 70px;
    border: none;
}

.search-bar i.fa-chevron-right {
    color: #000;
}

#myLinks {
	display: none;
	background-color: black;
	padding: 1rem 4rem 0;
}

#myLinks a {
	color: white;
}

#sidebarMenu {
	background: #000;
	position: absolute;
	z-index: 10;
    left: 0;
    width: 250px;
    padding: 5rem 0 2rem;
    transform: translateX(-250px);
    transition: transform 250ms ease-in-out;
}

.sidebarMenuInner{
    margin: 0;
    padding: 0;
}

.sidebarMenuInner li {
    list-style: none;
    color: #fff;
    font-weight: bold;
    padding: 1.5rem 3rem 1.5rem;
    text-transform: uppercase;
    cursor: pointer;
}

.sidebarMenuInner li span {
    display: block;
    font-size: 1.4rem;
    color: rgba(255, 255, 255, 0.50);
}

.sidebarMenuInner li a {
    color: #fff;
    font-weight: bold;
    cursor: pointer;
    text-transform: uppercase;
    text-decoration: none;
}

.sidebarMenuInner li a:hover,
.sidebarMenuInner li a:focus {
	color: #FEE1C0;
}

input[type="checkbox"]:checked ~ #sidebarMenu {
    transform: translateX(0);
}

input[type=checkbox] {
    transition: all 0.3s;
    display: none;
}

.sidebarIconToggle {
	position: absolute;
	height: 100%;
    width: 100%;
    top: 22px;
    left: 30px;
    height: 22px;
    width: 22px;
    transition: all 0.3s;
    cursor: pointer;
    z-index: 99;
}

.spinner {
	background-color: #fff;
	position: absolute; 
    height: 3px;
    width: 100%;
    transition: all 0.3s;
}

.horizontal {
	position: relative;
    float: left;
    margin-top: 3px;
    transition: all 0.3s;
}

.diagonal.part-1 {
    position: relative;
    float: left;
    transition: all 0.3s;
}

.diagonal.part-2 {
    position: relative;
    float: left;
    margin-top: 3px;
    transition: all 0.3s;
}

input[type=checkbox]:checked ~ .sidebarIconToggle > .horizontal {
    transition: all 0.3s;
    opacity: 0;
}

input[type=checkbox]:checked ~ .sidebarIconToggle > .diagonal.part-1 {
    transition: all 0.3s;
    transform: rotate(135deg);
    margin-top: 8px;
}

input[type=checkbox]:checked ~ .sidebarIconToggle > .diagonal.part-2 {
    transition: all 0.3s;
    transform: rotate(-135deg);
    margin-top: -9px;
}

.footer-nav {
	margin-top: 7rem;
}

.copyright {
	margin: 6rem 0 0;
	text-align: center
}

.terms-privacy{
	margin: 6rem 0 0;
	text-align:center;
}
.terms-privacy a {
	color: #fff;
	text-transform: uppercase;
	text-decoration: none;
	font-weight: 500;
}

.terms-privacy a:hover,
.terms-privacy a:focus {
	color: #fff;
	text-decoration: underline;
}

/* -------------- Site Structure --------------- */

.wrapper, 
.section-inner, 
.section-inner-narrow {
	margin: 0 auto;
}

.wrapper {
	max-width: 2000px;
}

.section-inner {
	padding: 1.666666666667% 0; /* 20/1200 */
	
}

.section-inner-narrow {
	padding: 6rem 0;
	max-width: 980px;
}

.section-padding {
	padding: 3% 2%;
}

.lg-col-wrapper,
.lg-col-wrapper-no-space {
	margin: 0 auto;
	position: relative;
	clear: both;
}

.lg-col-wrapper {
	padding: 4.5rem 6rem 6rem;
}

.lg-col-wrapper-no-space {
	padding: 0;
}

.lg-col-wrapper,
.lg-col-wrapper-no-space {

}

.lg-col-wrapper-indent {
	padding: 2.5rem 12rem 2rem;
}

.banner-video {
	background-image: url('/images/home_background.jpg');
	background-repeat: no-repeat;
	background-size:cover;
	height:100%;
	position: relative;
	margin-bottom: 0;
}

.banner-hollywood {
	background-image: url('/images/voyager_still4_dark.png');
	background-repeat: no-repeat;
	background-size:cover;
	height:100%;
	position: relative;
	margin-bottom: 0;
}

#main-bg-video{
	background-color: #000;
}

.trailer-video {
    margin: auto;
    width: 90%;
    justify-content: center;
}

.banner-section-title.trailer-hero {
    display: flex;
    flex-direction: column;
}

.bg-img-wrap, 
video#main-bg-video {
    background-repeat: repeat;
    background-size: cover;
	background-position: center;
    min-width: 100%;
    position: absolute;
    width: auto;
    z-index: -10;
}

.hero-image {
	margin:auto;
	display: flex;
	margin: 6rem 0 4rem;
}

.tagline{
	font-style: italic;
}

.crew-bio{
	margin-block-start: 0;
	margin-top:-18px;
}

.cyan {
	background-color: #00a4b2;
}

.grey {
	background-color: #4d4c4c;
	background-size: fill;
	background-repeat: no-repeat;
	background-position-x: -200px;
	background-position-y:-100px;
}

.grey.section-inner.lg-col-wrapper{
	padding-bottom:0;
}

.voyager-craft-image{
	min-height: 100%;
	min-width: 100%;
	position: relative;
	left:0px;
	margin-top:-300px;
	overflow: hidden;
}

.crew-pic{
	margin-right:16px;
	height:247px;
	width:290px;
}

/* -------------- Content--------------- */

.three-column-content
.five-column-content,
.two-column-content {
	display: flex;
	gap: 4.5rem;
	margin-bottom: 3rem;
}

.four-column-content {
	display: grid;
    gap: 4.5rem;
    margin-bottom: 3rem;
    grid-template-columns: repeat(4, 1fr);
}

.cast-row{
	margin-bottom: 30px;
}
.col.crew-row {
	display: flex;
	flex-direction: row;
	width: 100%;
}

.three-column-content .col {
	width: calc(100% / 3);
}

.three-column-content .col-15{
	width:15%;
}

.three-column-content .col-70{
	width:70%;
}

.filmmaker-row {
	padding-bottom: 4rem;
}

.five-column-content {
	justify-content: space-evenly;
}

.five-column-content .col {
	width: 20%;
}

.five-column-content .col-small {
	width: 10%;
}

.rounded-corners {
	border-radius: 10px;
}

.popup-gallery .row {
	display: flex;
	flex-direction: row;
	gap: 3rem;
	margin-bottom: 4rem;
}

.popup-gallery .col {
	width: calc(100% / 3 - 2rem);
}

.festival-logo {
    margin: 4rem 0 4rem;

}
.sxsw-logo {
	height: 15%;
    width: 15%;
    margin: 10px 5px;
}

.content-inline-image {
	position: relative;
	z-index:  10;
}

/* -------------- Footer --------------- */

.footer-newsletter-form-wrap{
  display: flex;
  flex-direction: column;
  margin-bottom:64px;
}

.footer-newsletter-form-wrap h1 {
	margin-bottom: 4rem;

}

.footer-newsletter-form {
    position: relative;
    color: #000;
    font-size: 1.6rem;
    text-align: center;
    width: 50%;
    margin: 0 auto;
}

.footer-newsletter-form input {
    font-size: 1.5rem;
    font-size: 15px;
    padding: 1.7rem;
    border: none;
    border-radius: 50px;
    width: 100%;
}

.footer-newsletter-form button {
	background: none;
	position: absolute;
    top: 1.5rem;
    right: 1rem;
    padding: 0;
    width: 30px;
    border: none;
}

.footer-newsletter-form i {
	color: black;
    font-size: 2rem;
}

.voyager-form-error{
	margin-top: 2rem;
	text-align: center;
}

#inquiries-box{
	padding:12px;
	margin: 0 auto;
}

.footer-bg{
	background-image: url("/images/subscribe-bg.jpg");
	background-size: cover;
	background-repeat: no-repeat;
	background-position-y: -70px;
}

.popup-banner-wrapper {
    background-color: #0c6971;
    color: #fff;
    opacity: 0.9;
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    z-index: 99999;
}

.popup-banner-inner {
	display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    font-size: 1.8rem;
    padding: 2rem 1.5rem 2rem;
}

.popup-content-middle {
	display: flex;
	justify-content: center;
	align-items: center;
}

.popup-banner-message,
.popup-content-center {
	margin-right: 4rem;
}

.popup-banner-close {
	position: absolute;
	top: 15px;
	right: 30px;
}

.popup-banner-close .close-btn {
	font-size: 1.6rem;
	font-weight: bold;
	text-decoration: none;
	text-transform: uppercase;
}

.close-btn:hover {
	color: black;
	cursor: pointer;
}

.popup-banner-close .close-btn i {
	font-size: 2.6rem;
	margin-left: 0.5rem;
	vertical-align: sub;
}

/* Press */

.press-links{
	max-width: 1000px;
	margin-left:auto;
	margin-right:auto;
	margin-bottom:10rem;
	padding-left: 20px;
	padding-right: 20px;
	
}
.press-links a{
	line-height: 4rem;
    font-size: 20px;
}
.press-links tr{
	text-align:center
}

.press-links a {
	text-decoration: none;
}

.press-links a:hover{
	text-decoration:underline;
}


@media screen and (max-width: 1100px), handheld and (max-device-width: 1100px){

	.four-column-content {
		grid-template-columns: repeat(3, 1fr);
	}

	.two-column-content,
	.three-column-content {
		flex-direction: column;
	}

	.footer-bg{
		background-position-y:0px;
	}

	.grey{
		background-image: none;
	}

	.filmmaker-craft-image{
		display:none;
	}

	.colV2a{
		width:100%;
	}

	.colV2b{
		display: none;
		width: 0%;
	}

	.list-vertical-container .colV2a {
		display: none;
	}

	.list-vertical-container .rowV2 {
		justify-content: center;
	}

	.cyan.section-inner.lg-col-wrapper-indent {
		padding: 2rem 3rem 0;
	}

	.Sun-Matsumoto{
		margin-bottom:0;
	}

	.col.crew-row {
		align-items: center;
	}

}

@media screen and (max-width: 1000px), handheld and (max-device-width: 1000px){

	.brand-title {
		font-size: 2rem;
		line-height: 2.6rem;
	}

}

@media screen and (max-width: 900px), handheld and (max-device-width: 900px){

	.grey{
		background-image: none;
	}

	h1 {
		margin-bottom: 3.5rem;
	}

	.lg-col-wrapper,
	.lg-col-wrapper-indent {
		padding: 4.5rem 2rem 6rem;
	}

	#main-content {
		padding: 6rem;
	}

	.btn-primary {
		font-size: 2rem;
		padding: 2rem 2rem 2.2rem;
		min-width: 250px;
		text-align: center;
	}

	.banner-section-title {
		margin-top: 5rem;
	}

	.brand-title {
		margin-bottom: 1.5rem;
	}

	.crew-name{

		margin-top:10px;
	}
	#inquiries{
		text-align: center;
	}
	
	.subtitle {
		font-size: 1.8rem;
		line-height: 3rem;
	}

	.festival-logo {
		margin: 4rem 0;
	}

	.main-nav-outer {
		padding: 1.5rem 0rem 1rem;
	}

	.header-social-icons {
		margin-top: 0.5rem;
	}

	.search-bar form {
		width: 100%;
	}

	.footer-newsletter-form {
		width: 100%;
	}

	.footer-nav {
		margin-top: 3rem;
	}
	.footer-nav ul li{
		padding-right:0px;
	}

	.footer-nav ul {
		flex-direction: column;
		gap: 1.5rem;
		align-items: center;
	}

	.three-column-content,
	.five-column-content {
		gap: 2rem;
	}

	.two-column-content,
	.three-column-content {
		flex-direction: column;
	}

	.two-column-content .col,
	.three-column-content .col {
		width: 100%;
	}

	.three-column-content .col-15{
		width:0%;
	}
	
	.three-column-content .col-70{
		width:100%;
	}

	.four-column-content {
		grid-template-columns: repeat(2, 1fr);
	}	

	.popup-gallery {
		flex-direction: column;
		align-items: center;
		gap: 5rem;
	}

	.popup-gallery .col {
		width: 100%;
	}

	.popup-content-middle {
		flex-direction: column;
		margin-top: 1rem;
	}

	.popup-banner-message, .popup-content-center {
		margin-right: 0;
	}

	.prev, .next,.text {
		font-size: 11px;
	}

	.col.crew-row {
		display: flex;
		flex-direction: column;
		width: 100%;
	}

	.filmmaker-photo {
		margin-bottom: 2rem;
	}
	.footer-bg{
		background-position-y: 0;
	}
	.trailer-button{
		width: 80%;
	}
	.sxsw-logo{
		width:30%;
	}

}

@media screen and (max-width: 700px), handheld and (max-device-width: 700px){
	.inline-btn {
		flex-direction: column;
	}

	.inline-btn .btn-primary {
		justify-content: center;
	}

	.btn-primary .subheading {
		line-height: 2.6rem;
	}
}

@media screen and (max-width: 600px), handheld and (max-device-width: 600px){

	.four-column-content {
		grid-template-columns: repeat(1, 1fr);
	}

	.inline-btn .btn-primary {
		margin-bottom: 3rem;
	}

	.popup-banner-inner {
		padding: 2rem 1.5rem 2rem;
	}

	.popup-banner-message {
		text-align: center;
	}

	.popup-banner-message .date {
		display: block;
	}

	.close-text {
		display: none;
	}
}

@media screen and (max-width: 500px), handheld and (max-device-width: 500px){

	#main-content {
		padding: 2rem;
	}

	.voyager-craft-image{
		display:none;
	}

}

@media screen and (max-width: 425px), handheld and (max-device-width: 425px){

	h1{
		font-size: 3.3rem;
		line-height: 4rem;
	}
	.filmmaker-photo{
		margin: auto;
	}
	.filmmaker-name{
		text-align: center;
		margin-top: 10px;
	}
	
	img.crew-pic{
		margin: auto;
	}

	.crew-name{
		text-align: center;
		margin-top:10px;
	}

	#inquiries{
		text-align: center;
	}

	.grey.section-inner.lg-col-wrapper{
		padding: 4.5rem .5rem 6rem;
	}

	.sxsw-logo{
		width:50%;
	}

	h2.subtitle{
		font-weight:300;
		font-size:20px;
	}
}
