@import url("https://fonts.googleapis.com/css?family=Abhaya+Libre:800&display=swap");

@import url("https://fonts.googleapis.com/css?family=Lato:100, 300,400,700&display=swap" rel="stylesheet");

html {
  box-sizing: border-box;
  scroll-behavior: smooth;
}
*, *:before, *:after {
  box-sizing: inherit;
  box-sizing: border-box;
}

body, p{margin:0; padding:0; }
body {background-color:#101010;}

p{font-family: 'Lato', sans-serif; color:#dddddd; line-height:1.5; font-size:12px;}

h2{
  font-family: 'Abhaya Libre', serif; 
  font-weight:800; 
  font-size:35px; 
  color:#efefef; 
  margin:0; 
  padding:0; 
  text-transform:lowercase;
}



@media only screen and (min-width: 768px) {
h2{
   font-size:60px;
}

p{font-size:14px}

}


@media only screen and (min-width: 1280px) {
h2{
   font-size:90px;
}
p{font-size:16px}

}


nav{  
  position:fixed; 
  z-index:999999; 
  top:3%; 
  left:0; 
  width:100%; 
  display:flex;
  align-items:center;
}

.logo{padding:0 2rem;}

.logo-background{
  position:absolute;
  width:45px;  
  height:45px;
  border-radius: 50%; 
  background: #282828; /* Old browsers */
background: -moz-radial-gradient(center, ellipse cover, #444 0%, #666 100%); /* FF3.6-15 */
background: -webkit-radial-gradient(center, ellipse cover, #444 0%,#666 100%); /* Chrome10-25,Safari5.1-6 */
background: radial-gradient(ellipse at center, #444 0%,#666 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
z-index:999;
}

.logo img{width:50px; position:relative; top:-13px; z-index:9999;}

@media only screen and (min-width: 800px) {
.logo img{width:80px; top:-20px; top:-20px;}
.logo-background{  width:85px;  
  height:85px;}
}

.mobile-navigation{opacity:0;}

.navigation{display:none;}

.menubar span:nth-child(2){
  opacity:1;
  transition:opacity 0.2s ease;
}

.menubar span:nth-child(1){
transition: transform .3s ease-in-out; 
transform:  translateY(0)  rotate(0deg);

}

.menubar span:nth-child(3){
transition: transform .3s ease-in-out; 
transform:  translateY(0)  rotate(0deg);
}

.menu-on .menubar span:nth-child(1){
  transform:  translateY(14px)  rotate(45deg);
}

.menu-on  .menubar span:nth-child(2){
  opacity:0;
}

.menu-on  .menubar span:nth-child(3){
  transform:  translateY(-10px)  rotate(-45deg);
}

.mobile-navigation-on{
  display:flex;
  flex-direction:column;
  height:100vh;
  width:100%;
  background-color:rgba(0, 0, 0, .9);
  position:absolute;
  top:-36px;
  left:0;
  z-index:99; 
  justify-content:center;
  align-items:center;
  text-transform:uppercase;
  opacity:1;
}

.mobile-navigation-on a{
  color:white;
  text-decoration:none;
  padding:0 0 40px 0;
  font-size:40px;
  font-family: 'Lato', sans-serif;
  font-weight:100;
}

.mobile-navigation:last-child{
  padding:0;
}

.menu{z-index:9999; position:absolute; right:20px; top:20px; height:20px; width:auto; display:flex; flex-direction:column; 
}


.menu span{
  display: flex;
  background: white;
  height: 2px;
  width: 3em;
  border-radius: 3px;
  margin-bottom:10px;
}



@media only screen and (min-width: 1280px) {
 
.menubar{display:none;} 
  
.mobile-navigation{display:none;}
  
.navigation{
  height:60px; 
  background-color: rgba(0, 0, 0, 0); 
  text-align:right; 
  display:flex; 
  width:100%;
  justify-content:flex-end;
  align-items:center;
  padding:0 3rem 0 0 ;
  flex-direction:row;
  background-color:inherit;
  position:relative;
  top:auto;
  left:auto;
  z-index:99; 
  align-items:center;
}

.navigation a{
  text-transform:uppercase;
  color:white;
  text-decoration:none;
  padding:0 20px;
  font-family: 'Lato', sans-serif;
  font-weight:100;
  position:relative;
  font-size:18px;
  }

.navigation a:before {
  content: "";
  position: absolute;
  width: calc(100% - 40px);
  height: 1px;
  bottom: -5px;
  background-color: #ffffff;
  visibility: hidden;
  -webkit-transform: scaleX(0);
  transform: scaleX(0);
  -webkit-transition: all 0.3s ease-in-out 0s;
  transition: all 0.3s ease-in-out 0s;
}

.navigation a:hover:before {
  visibility: visible;
  -webkit-transform: scaleX(1);
  transform: scaleX(1);
}
  
  
}

.hero{height:100vh;width:100vw; min-height: 400px;}

.hero video{    
    position: absolute;
    height: 100vh;
    min-height: 400px;
    width: 100%;
    object-fit: cover;
    -webkit-filter: grayscale(30%); /* Safari 6.0 - 9.0 */
    filter: grayscale(30%);
}

.overlay{
  position:relative;
  height: 100vh;
  min-height: 400px;
  width: 100%;
}

.overlay img{
    width: 100%;
    height: 100%;
    opacity: .2;
    object-fit: cover;
}
.who{
  width:100%;
  height:100%;
  min-height: 90vh;
  display:flex;
  justify-content:center;
  align-items:center;
}

.who-container{
  width:70%;
  display:grid;
  grid-template-columns: 1fr ;
  grid-gap: 100px;  
}



.work h2, .contact h2{text-align:center;}

.work h2{margin-top:3rem;}

.work, .contact{
  width:100%; 
  min-height:100vh; 
  display:flex;
  justify-content:center;
  align-items:center;
  flex-direction:column;
  position:relative;
margin: 2rem 0:
}

.work{
  background-color:#000000;
}

.video-grid{
  width:70%;
  height:auto;
  display:flex;
  flex-direction:row;
  flex-wrap:wrap;
  justify-content:center;
  margin-bottom:3rem;
 }

.video-item{
 margin:15px; 
   width:100%;
max-width:600px;
 height:30vh; 
min-height:300px;
 position:relative;
}


.video-image{
  width:100%;
  height:100%;
  overflow:hidden;
}


.video-image img{
  width:100%;
  height:100%;
  object-fit:cover; 
  -webkit-transition: 1.5s ease-in-out;
  transition: 1.5s ease-in-out; 
}

.img-cover{
  width:100%;
  height:100%; 
  position:absolute;
  top:0;
  left:0;
  opacity:0;
  transition: opacity .4s ease-in-out;
}

.img-overlay{
  position:relative; 
  width:100%; 
  height:100%; 
  background-color:black; 
  opacity:.8;}

.img-title{
  position:absolute; 
  width:100%; 
  height:100%; 
  top:0; 
  left:0; 
  color:white; 
  display:flex; 
  justify-content:center; 
  align-items:center;
  font-family: 'Lato', sans-serif;
  font-weight:100;
  text-transform:uppercase;
  font-size:18px;
}

.video-item:hover .video-image img{
  -webkit-transform: scale(1.2) rotate(-2deg);
 transform: scale(1.2) rotate(-2deg);
}

.video-item:hover .img-cover{
  opacity:1;
}

@media only screen and (min-width: 1280px) {
.video-item{
   width:calc(50% - 30px);
}
}

.contact-background{
  height:100vh; 
  width:100%; 
  background-color:#101010;  
  min-height:100vh; 
  position:relative;}

.contact-container{
  width:100%; 
  height:100%; 
  display:flex;
  justify-content:center;
  align-items:center;
  flex-direction:column;
  position:absolute; 
  z-index:25;}
