html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {margin: 0;padding: 0;border: 0;outline: 0;font-size: 100%; background: transparent; font-weight: 100; -webkit-font-smoothing: antialiased;}

.otBlack{
	font-family: ff-enzo-web, sans-serif;
	font-weight: 900;
	font-style: normal;
}

.otLight{
	font-family: ff-enzo-web, sans-serif;
	font-weight: 300;
	font-style: normal;
}

.otMedium{
	font-family: ff-enzo-web, sans-serif;
	font-weight: 600;
	font-style: normal;
}

.otLightItalic{
	font-family: ff-enzo-web, sans-serif;
	font-weight: 300;
	font-style: italic;
}

.minionBold{
	font-family: minion-pro, serif;
	font-weight: 700;
	font-style: normal;
}

.minionReg{
	font-family: minion-pro, serif;
	font-weight: 400;
	font-style: normal;
}

a{
	text-decoration: none!important;
	color: inherit!important;
}

body{
	background: #000;
	font-family: minion-pro, serif;
	font-weight: 400;
	font-style: normal;
}

.slideshowBanner{
    width: 100%;
    margin: auto;
    height: 100vh;
    overflow: hidden;
}

.slideshowBanner .slide{
	position: relative;
	width: 100%;
	height: 100%;
	background-position: center center;
	background-size: cover;
	cursor: pointer;
}

.slideshowBanner .slide .overlay{
	position: absolute;
    background: #000;
    width: 100%;
    height: 100%;
    opacity: 0.3;
    transition: opacity 0.25s linear;
}

.slideshowBanner .textOverlay{
	position: absolute;
	top: 60%;
	left: 60px;
	width: calc(100% - 120px);
}

p{
	font-family: minion-pro, serif;
	font-weight: 400;
	font-style: normal;
	font-size: 18px;
}

h2{
	color: #FFF;
	font-family: ff-enzo-web, sans-serif;
	font-weight: 900;
	font-style: normal;
	font-size: 40px;
	line-height: 49px;
}

h3{
	color: #FFF;
	font-family: ff-enzo-web, sans-serif;
	font-weight: 300;
	font-style: normal;
    font-size: 34px;
    line-height: 41px;
	margin-top: 5px;
}

.textOverlay h3{
	margin-top: 5px;
}

.slideshowBanner .slide:hover .overlay{
    opacity: 0;
}

.slick-list{
	height: 100%;
}

.slick-track{
	height: 100%;
}

.slideshowBanner .slick-prev, .slideshowBanner .slick-next{
    bottom: 100px!important;
    width: 40px;
    height: 40px;
    transform: none!important;
    top:auto!important;
}

.slick-prev:before{
	position: absolute;
	content: ''!important;
	background-image: url('../svg/leftArrow.svg')!important;
	background-position: center center!important;
	background-size: contain!important;
	width: 40px!important;
	height: 40px!important;
    top: 0px;
    left: 0px;
}

.slick-next:before{
	position: absolute;
	content: ''!important;
	background-image: url('../svg/rightArrow.svg')!important;
	background-position: center center!important;
	background-size: contain!important;
	width: 40px!important;
	height: 40px!important;
    top: 0px;
    right: 0px;
}

.mainLogo{
	position: absolute;
    top: 30px;
    left: 60px;
    width: 80px;
    z-index: 9;
}

.mainLogo img{
	position: absolute;
	width: 100%;
	height: auto;
	top: 0px;
	opacity: 1;
	transition: opacity 0.5s linear;
}

.menuBtn{
	width: 41px;
    height: 41px;
    position: fixed;
    top: 30px;
    right: 60px;
    cursor: pointer;
    z-index: 9;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 30px;
    font-size: 17px;
    line-height: 17px;
    transition: all 0.35s linear;
    pointer-events: all;
    opacity: 1;
    background: #FFF;
    box-shadow: 6px 6px 6px rgb(0 0 0 / 16%);
}

.menuBtn span{
    height: 12px;
}

.menuBtn:hover{
	color: #FFF;
	background-color: #000;
}

nav.open .menuBtn{
	pointer-events: none;
	opacity: 0;
}

.closeBtn{
	width: 41px;
    height: 41px;
    position: fixed;
    top: 30px;
    right: 60px;
    cursor: pointer;
    z-index: 9;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 30px;
    font-size: 17px;
    line-height: 17px;
    transition: all 0.35s linear;
    pointer-events: all;
    opacity: 0;
    background: #FFF;
    box-shadow: 6px 6px 6px rgb(0 0 0 / 16%);
}

.closeBtn span{
    height: 12px;
}

.closeBtn:hover{
	color: #000;
	background-color: #FFF;
}

nav.open .closeBtn{
	pointer-events: all;
	opacity: 1;
}

nav{
	position: fixed;
	width: 100%;
	height: 50px;
	z-index: 9;
	top: 0px;
	transition: all 0.5s linear;
	box-shadow: 0px 0px 10px rgba(0,0,0,0);
}

.navContainer{
	position: fixed;
	width: 100%;
	height: 100%;
	background: #000;
	top:0px;
	left: 0%;
	opacity: 0;
	transition: opacity cubic-bezier(0.5, 1, 0.89, 1) 0.5s;
	display: flex;
	pointer-events: none;
}

.navBg{
	background-size: cover;
    background-image: url('../images/navBg.jpg');
    flex-basis: 50%;
    background-position: left top;
    height: 100%;
}

.navItems{
	flex-basis: 50%;
    justify-self: flex-end;
    color: #FFF;
    padding: 100px 0;
    font-size: 45px;
    line-height: 75px;
    font-family: ff-enzo-web, sans-serif;
	font-weight: 600;
	font-style: normal;
}

nav.open .navContainer{
	opacity: 1;
	pointer-events: all;
}

.drop{
	display: flex;
    background: #000;
    position: absolute;
    width: calc(100% - 160px);
    color: #FFF;
    z-index: 1;
    padding: 40px 80px;
    font-size: 48px;
    line-height: 58px;
    transform: translateY(-100vh);
    -webkit-transition: transform 1s cubic-bezier(0.215, 0.61, 0.355, 1); 
	-moz-transition: transform 1s cubic-bezier(0.215, 0.61, 0.355, 1); 
	-ms-transition: transform 1s cubic-bezier(0.215, 0.61, 0.355, 1); 
	-o-transition: transform 1s cubic-bezier(0.215, 0.61, 0.355, 1);
	transition: transform 1s cubic-bezier(0.215, 0.61, 0.355, 1);
}

nav ul{
    list-style: none;
    flex-basis: 50%;
}

nav ul li{
	 cursor: pointer;
     width: 100%;
     opacity: 0;
     transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
     transform: translateX(-100px);
}

nav ul li a{
	font-weight: 600;
}

nav ul li ul li a{
	font-weight: 300;
}

nav.open ul li{
	opacity: 1;
    transform: translateX(0px);
}


nav ul li.closed ul{
  max-height: 0;
}

nav ul li ul{
	-webkit-transition: max-height 1s cubic-bezier(0.215, 0.61, 0.355, 1); 
	-moz-transition: max-height 1s cubic-bezier(0.215, 0.61, 0.355, 1); 
	-ms-transition: max-height 1s cubic-bezier(0.215, 0.61, 0.355, 1); 
	-o-transition: max-height 1s cubic-bezier(0.215, 0.61, 0.355, 1);
	transition: max-height 1s cubic-bezier(0.215, 0.61, 0.355, 1);
	max-height: 300px;
	overflow: hidden;
	transform: none;
}

ul li a{
	width: 50%;
}

ul li.hasSub:after{
    content: '>';
    position: absolute;
    left: 250px;
    color: #FFF;
    top: 0px;
}

nav ul li ul{
	padding: 0px;
    padding-left: 30px;
    top: 0px;
    font-size: 25px;
    line-height: 40px;
    color: #ffffff;
    margin-left: 300px;
    position: absolute;
    width: 50%;
    margin-top: 20px;
    font-family: minion-pro, serif;
	font-weight: 400!important;
	font-style: normal;
	opacity: 0;
	transition: opacity 0.5s linear;
	display: block;
	z-index: 9999999;
}

nav ul li.hasSub:hover ul{
	opacity: 1;
	z-index: 999999;
	display: block;
}

nav ul li.hasSub:hover{
	opacity: 1;
	z-index: 999999;
	display: block;
}


nav ul li ul li{
    width: calc(100% - 30px);
	cursor: pointer;
}

.csPreview{
	position: relative;
    flex-basis: 50%;
    float: right;
    display: flex;
    align-items: center;
}

.csPreviewImg {
    position: absolute;
    width: 100%;
    height: 400px;
    background-color: #FFF;
    background-position: center center;
    background-size: cover;
    opacity: 0;
    transition: all 0.35s linear;
}

.csPreviewImg.show{
	opacity: 1;
}

.btn{
	font-size: 17px;
	border: 1px solid #ff7376;
    border-radius: 30px;
    padding: 20px;
    min-width: 100px;
    width: fit-content;
    padding: 8px 40px;
    margin: auto;
    margin-top: 40px;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #FFF;
    transition: all 0.35s linear;
    cursor: pointer;
}

.btn a{
	height: 15px;
}

.btn span{
	height: 15px;
	color: #000;
}

.btn:hover{
	color: #000;
	background-color: #ff7376;
}

.textBlock{
	width: 100%;
    margin: auto;
    display: flex;
    flex-wrap: wrap;
    padding: 80px 0px;
    background-color: #EDEDEE;
}

.textBlock .inner{
	width: 100%;
	max-width: 800px;
	margin: auto;
}

.textBlock h1{
	font-family: minion-pro, serif;
	font-weight: 700;
	font-style: normal;
	font-size: 36px;
	line-height: 40px;
	color: #000;
    margin-bottom: 20px;
}

.textBlock h2{
	font-family: ff-enzo-web, sans-serif;
	font-weight: 900;
	font-style: normal;
	color: #000;
	font-size: 26px;
	line-height: 30px;
    margin-bottom: 20px;
}

.textBlock h3{
	font-family: minion-pro, serif;
	font-weight: 500;
	font-style: normal;
	font-size: 26px;
	line-height: 30px;
	color: #000;
    margin-bottom: 20px;
}

.textBlock p+p{
	margin-top: 20px;
}

.textBlock strong{
	font-weight: 700;
}

.textBlock a{
	text-decoration: underline!important;
}

.leftCol{
    flex-basis: calc(50% - 10px);
    margin-right: 20px;
}

.rightCol{
    flex-basis: calc(50% - 10px);
}

.imagesBlock{
	width: 100%;
    margin: auto;
    display: flex;
    flex-wrap: wrap;
    padding-bottom: 25%;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	background-attachment: fixed;
}


.caseStudiesLinks{
	display: flex;
    flex-basis: 100%;
    flex-wrap: wrap;
}

.caseStudyLink{
    position: relative;
    flex-basis: calc(50% - 10px);
    margin-right: 20px;
    background: aliceblue;
    padding: 10% 0px;
    display: flex;
    justify-content: center;
    text-align: center;
    
}

.caseStudyLink:nth-child(2){
    margin-right: 0px;
}

.caseStudyLink a{
	z-index: 1;
	opacity: 0;
	pointer-events: none;
	transition: opacity 0.35s linear;
}

.caseStudyLink:hover a{
	opacity: 1;
	pointer-events: all;
}

.caseStudyLink h3{
	font-size: 18px;
}

.previewImage{
    position: absolute;
    width: 100%;
    height: 100%;
    background: black;
    top: 0px;
    z-index: 0;
    background-size: cover;
    background-position: center;
    transition: opacity 0.35s linear;
    opacity: 1;
}

.caseStudyLink:hover .previewImage{
	opacity: 0.3;
}

.caseStudies{
    width: calc(100% - 160px);
    padding: 40px 80px;
    margin: auto;
    display: flex;
    border-top: 1px solid;
    border-bottom: 1px solid;
    flex-wrap: wrap;
}

.caseStudies h2{
	font-family: 'WorkSans-Light';
    flex-basis: 100%;
    font-size: 30px;
    line-height: 36px;
    text-transform: uppercase;
    letter-spacing: 0.02em;
    margin-bottom: 40px;
    text-align: center;
}

.contact .btn{
	color: #000;
}

footer{
	background:#000;
	color: #FFF;
	background-image: url('../images/footerBg.jpg');
	background-size: contain;
    background-repeat: no-repeat;
    background-position: center bottom;
}

footer .inner{
    padding: 40px 60px 100px;
    display: flex;
    flex-wrap: wrap;
}

.footerSocials{
	display: flex;
}

.socialLink{
	width: 30px;
	height: 30px;
    margin-left: 15px;
}

.socialLink img{
	width: 100%;
	height: auto;
}

.footerSocials{
	justify-content: flex-end;
}

.footerLogo{
    width: 130px;
}

.footerTop{
    flex-basis: 100%;
    display: flex;
    border-bottom: 1px solid #FFF;
    padding-bottom: 15px;
}

.footerBottom{
    display: flex;
    flex-basis: 100%;
}

.footerBottom .leftCol {
    flex-basis: calc(100% - 200px);
    margin-right: 20px;
}

.footerBottom .rightCol {
    display: flex;
    flex-basis: 200px;
    flex-wrap: wrap;
}

.footerBottom ul{
	list-style: none;
	padding: 15px 0;
}

.footerLinks{
	text-align: center;
    padding-bottom: 40px;
}

.footerLinks a{
	margin: 0px 20px;
}

.footerEmail{
	width: 200px;
    padding-top: 15px;
}

.nlSignup{
	background: #898A8D;
	color: #FFF;
	display: flex;
    justify-content: center;
    padding: 80px 0px;
    flex-wrap: wrap;
    text-align: center;
}

.nlSignup h3{
	margin-bottom: 10px;
}

.nlSignup p{
	margin-bottom: 20px;
	text-align: center;
}

.nlSignup .wpcf7 form{
	display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

.nlSignup .wpcf7 p{
	flex-basis: 50%;
	text-align: left;
}

.nlSignup .wpcf7 label{
	font-size: 20px;
    line-height: 34px;
    
}

.nlSignup input[type=text], .nlSignup input[type=email]{
    background: #898a8d;
    border: 1px solid #FFF;
    border-radius: 15px;
    padding: 13px;
}

.slidingGallerySection{
	width: 100%;
	overflow: hidden;
    background: #FFF;
}

.slidingGallery{
    width: 80%;
    margin: auto;
    height: 40vw;
    background: #FFF;
}

.slidingGallery .slide{
	margin: 0px 12px;
	overflow: hidden;
	background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    position: relative;
}

.slidingGallery .slick-list{
	overflow: visible;
}

.slick-next {
    right: 60px!important;
    z-index: 9999;
}

.slick-prev {
    left: 60px!important;
    z-index: 9999;
}

.slidingGallery .textOverlay{
	width: 100%;
    position: absolute;
    bottom: 0px;
    left: 0px;
    height: 150px;
    backdrop-filter: blur(20px);
    padding: 60px;
    box-sizing: border-box;
}

.video{
	display: none;
}

.youtubeEmbed{
    padding: 40px 0;
    width: 560px;
    height: 315px;
    margin: auto;
}

.ytWrap{
    background-position: center;
    background-size: cover;
    width: 100%;
    height: 100%;
    position: relative;
}

.ytButton{
	position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    cursor: pointer;
}

.ytButton img{
    width: 150px;
    height: auto;
}

.reviews{
    padding: 40px 60px;
}

.reviews h3{
	text-align: center;
	text-transform: uppercase;
}

.reviews .reviewQuote{
	color: #FFF;
	    padding: 20px 70px;
    text-align: center;
}

.reviews .reviewName{
	color: #FFF;
	text-align: center;
}

.reviews .reviewsSlider{
    padding: 40px 60px;
}

.reviews .slick-dots{
    left: 0px;
}

.reviews .slick-dots li button:before {
    font-family: 'slick';
    font-size: 50px;
    opacity: .25;
    color: white;
}

.reviews .slick-dots li.slick-active button:before {
    opacity: 1;
    color: white;
}
    
.reviews .starsHolder{
    width: 120px;
    height: 20px;
    margin: auto;
}

.reviews .starsHolder .starsInner{
	background-image: url('../images/stars.png');
	background-position: left center;
	height: 20px;
    background-size: 120px;
}

.starsInner.rating5 {
    width: 120px;
    margin: auto;
}

.starsInner.rating4 {
    width: 95px;
    margin: auto;
}

.starsInner.rating3 {
    width: 70px;
    margin: auto;
}

.starsInner.rating2 {
    width: 45px;
    margin: auto;
}

.starsInner.rating1 {
    width: 25px;
    margin: auto;
}

.supporters{
    padding: 40px 60px;
}

.supporters h3{
	text-align: center;
	text-transform: uppercase;
}

.supportersLogos{
	display: flex;
	flex-wrap: wrap;
    justify-content: center;
    margin-top: 60px;
}

.supporterBlock{
	display: flex;
	flex-basis: 20%;
	margin-right: 20px;
	box-sizing: border-box;
	flex-wrap: wrap;
}

.supporterBlock .supporterTitle{
	flex-basis: 100%;
	color: #FFF;
	margin-bottom: 30px;
}

.supporterBlock .supporterLogo{
	flex-basis: 100%;
}

.supporterBlock .supporterLogo img{
	width: 100%;
	height: auto;
}

.newsPosts{
	background: #898A8D;
    padding: 40px 60px;
}

.newsPosts h3{
	text-align: center;
	text-transform: uppercase;
}

.newsImage{
	width: 176px;
    height: 176px;
    background-size: cover;
    border-radius: 100px;
    background-position: center;
}

.newsFeed{
    display: flex;
    flex-wrap: wrap;
    width: 90%;
    margin: auto;
    max-width: 1200px;
}

.newsPost{
    margin-top: 80px;
    flex-basis: 33.33%;
    margin-bottom: 40px;
}

.newsPost .postTitle{
	color: #FFF;
	font-size: 30px;
	line-height: 36px;
    margin-top: 20px;
    margin-bottom: 20px;
}

.castCrew{
	background: #898A8D;
    padding: 40px 60px;
}

.castCrew h3{
	text-align: center;
	text-transform: uppercase;
}

.castImage{
	width: 176px;
    height: 176px;
    flex-basis: 176px;
    background-size: cover;
    border-radius: 100px;
    background-position: center;
}

.castHolder{
    display: flex;
    flex-wrap: wrap;
    width: 90%;
    margin: auto;
    max-width: 1200px;
}

.castPost{
    margin-top: 80px;
    flex-basis: calc(50% - 30px);
    margin-bottom: 40px;
    display: flex;
    flex-wrap: wrap;
    margin-right: 60px;
    align-items: flex-start;
}

.castPost .rightCol{
    flex-basis: calc(100% - 200px);
    display: flex;
    flex-wrap: wrap;
    padding-left: 24px;
    overflow: hidden;
}

.castPost em{
	display: inline-block;
}

.castPost:nth-child(2n+2){
	margin-right: 0px;
}

.castRole{
	flex-basis: 100%;
}

.castName{
	flex-basis: 100%;
	font-size: 20px;
    border-bottom: 1px solid rgba(0,0,0,0.2);
    margin-bottom: 20px;
    padding-bottom: 20px;
}

.castBio{
	flex-basis: 100%;
}

.readMore{
	font-family: ff-enzo-web, sans-serif;
	font-weight: 600;
	font-style: normal;
	font-size: 16px;
	position: relative;
}

.readMore:after{
	content: '';
    width: 50px;
    height: 50px;
    background-image: url('../images/readMore.svg');
    background-position: center center;
    background-size: cover;
    position: absolute;
    margin-left: 10px;
    top: -10px;
}

.newsPost .readMore{
	color: #F5EA61;
}

.imageSection{
	background: #EDEDEE;
	padding: 40px 60px;
	width: 100%;
	box-sizing: border-box;
    display: flex;
}

.imageSection .imageBlock{
    width: calc(50% - 20px);
    padding-bottom: 22.5%;
    background-size: cover;
    margin-right: 40px;
    background-position: center center;
}

.imageSection.twoCol .imageBlock{
	padding-bottom: 27.5%;
}

.imageSection.twoCol .imageBlock:nth-child(2){
	margin-right: 0px;
}

.imageSection.fourCol .imageBlock {
    width: calc(25% - 30px);
    padding-bottom: 22.5%;
}

.imageSection.fourCol .imageBlock:nth-child(4){
	margin-right: 0px;
}

.teamSection{
	background: #FFF;
    padding: 40px 60px;
}

.teamSection h3{
	text-align: center;
	text-transform: uppercase;
	color: #000;
}

.teamSection .inner{
    display: flex;
    flex-wrap: wrap;
    max-width: 1200px;
    margin: 60px auto 0px;
}

.teamSection .teamItem{
    flex-basis: 33.33%;
    margin-bottom: 20px;
}

.teamSection .teamItem{
    font-size: 20px;
    margin-bottom: 10px;
}

.teamSection .teamRole{
	margin-bottom: 10px;
}

.teamSection .teamName{
	margin-bottom: 30px;
}

.projectsGrid{
	background: #000;
	padding: 40px 60px;
	width: 100%;
	box-sizing: border-box;
}

.projectsGrid h3{
	text-align: center;
	text-transform: uppercase;
}

.projectsGrid .projectBlock{
    width: calc(50% - 20px);
    padding-bottom: 27.5%;
    background-size: cover;
    margin-right: 40px;
    background-position: center center;
    margin-top:20px;
    margin-bottom: 20px;
    position: relative;
}

.projectsGrid .projectBlock:nth-child(2n+2){
	margin-right: 0px;
}

.projectsGrid .inner{
	margin: 20px 0px;
    display: flex;
    flex-wrap: wrap;
}

.projectsGrid .projectTitle{
	opacity: 0;
	position: absolute;
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #FFF;
    backdrop-filter: blur(20px);
    transition: opacity 0.25s linear;
    font-size: 25px;
}

.projectsGrid .rollovers .projectBlock:hover .projectTitle{
	opacity: 1;
}

.relatedPosts{
	background:#0098A7;
	padding: 40px 60px;
}

.relatedPosts h3{
	text-align: center;
    text-transform: uppercase;
    border-top: 1px #FFF solid;
    padding-top: 40px;
}

.relatedPosts hr{
	border: none;
	border-bottom: 1px solid #FFF;
}

.pageHeader{
	width: 100%;
    height: 500px;
    background-size: cover;
    background-position: center;
    position: relative;
    overflow: hidden;
}

.backgroundVid video{
	height: 100%;
}

.pageHeader .overlay{
	position: absolute;
    background: #000;
    width: 100%;
    height: 100%;
    opacity: 0.3;
    transition: opacity 0.25s linear;
}

.pageHeader .textOverlay{
    position: absolute;
    top: 370px;
    left: 60px;
}

.vp-flex{
    max-width: 1200px!important;
    height: auto!important;
}

.vp-flex video, vp-flex iframe{
	border: 0px!important;
}

.copyright{
    margin-top: 75px;
}

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

	.mainLogo {
	    left: 30px;
	}
	
	.menuBtn{
	    right: 30px;
	}
	
	.slideshowBanner {
    	width: 100%;
	}
    
    .instagram .instaImage {
    	padding-bottom: 2.2%;
    }
    
    .closeBtn {
	    right: 30px;
    }
    
    .drop {
	    width: calc(100% - 60px);
	    padding: 40px 30px;
    }
    
    nav:after{
        left: 30px;
    }
    
    nav.open:after {
    	width: calc(100% - 60px);
	}
	
	nav ul {
    	flex-basis: 100%;
	}
	
	.csPreview{
		display: none;
	}
	
	.textBlock {
	    width: calc(100% - 60px);
	    padding: 80px 30px;
	}
	
	.leftCol {
    	flex-basis: 100%;
		margin-right: 0px;
	    margin-bottom: 30px;
	}
	
	.imagesBlock {
    	padding-bottom: 40%;
    }
    
    .imageHolder {
	    flex-basis: 100%;
	    margin-right: 0px;
	}
	
	.rightCol {
    	flex-basis: 100%;
	}
	
	.caseStudies {
    	width: calc(100% - 60px);
    	padding: 40px 30px;
    }
    
    .caseStudyLink {
    	position: relative;
		flex-basis: 100%;
		margin-right: 0px;
		margin-bottom: 20px;
	    padding: 20% 0px;
	}
	
	.castHolder{
	    align-items: baseline;
	}
	
	.castPost .castImage{
		margin-bottom: 30px;
	}
	
	.castPost .rightCol {
    	flex-basis: 100%;
    	padding-left: 0px;
    }

}

@media screen and ( max-width: 640px ){
	
	.projectsGrid {
	    padding: 40px 30px;
    }
    
    .projectsGrid .projectBlock {
   		width: 100%;
   		padding-bottom: 55.5%;
   		margin-right: 0px;
    }
    
    .imageSection {
    	padding: 40px 30px;
	    flex-wrap: wrap;
    }
    
    .imageSection.twoCol .imageBlock{
	    width: 100%;
	    padding-bottom: 55.5%;
	    margin-right: 0px;
		margin-bottom: 40px;
	}
	
    .pageHeader .textOverlay {
	    left: 30px;
	}
	
	footer .inner {
    	padding: 40px 30px 100px;
    }
	
	.instagram .instaImage {
	    padding-bottom: 4.4%;
	}
	
	.contact h1{
	    width: 80%;
	    margin: auto;
	    margin-bottom: 50px;
	}
	
	.navBg{
		flex-basis: 100%;
	}
	
	.navItems {
	    position: absolute;
	    left: 30px;
	    top: 30px;
    }
    
    nav ul li ul {
	    padding: 0px;
	    padding-left: 30px;
	    top: 0px;
	    font-size: 25px;
	    line-height: 40px;
	    color: #ffffff;
	    margin-left: 0px;
	    position: relative;
	    width: 100%;
	    margin-top: 0px;
	    opacity: 0;
	    height: 0;
	    transition: opacity 0.5s linear;
	}
	
	nav ul li:hover ul {
	    height: 100%;
	}
	
	.castPost{
	    flex-basis: 100%;
	    margin-right: 0px;
	}
	
	.castCrew{
		padding: 40px 0px;

	}
	
	.castBio{
		padding-right: 20px;
	}
	
	.imagesBlock{
		padding-bottom: 50%;
	}
	
}