*,
*::after,
*::before {
  margin: 0;
  padding: 0;
  box-sizing: inherit;
}

html {
  box-sizing: border-box;
  font-size: 62.5%;
}

body {
  font-family: "Nunito", sans-serif;
  color: #333;
  font-weight: 300;
  line-height: 1.6;
}

/* navbar */
a{
	text-decoration: none;
	color: #eee;
}

header{
	width: 100%;
	height: 30vh;
	background: linear-gradient(to bottom, rgba(0,0,0,.8), rgba(0,0,0,.5)), url("../images/header.jpg") center no-repeat;
	background-size: cover;
	position: relative;
    overflow: hidden;
}

.container1{
	max-width: 120rem;
	width: 90%;
	margin: 0 auto;
}

.menu-toggle{
	position: fixed;
	top: 2.5rem;
	right: 2.5rem;
	color: #eeeeee;
	font-size: 3rem;
	cursor: pointer;
	z-index: 1000;
	display: none;
}

nav{
	padding-top: 5rem;
	display: flex;
	justify-content: space-between;
	align-items: center;
	text-transform: uppercase;
	font-size: 1.6rem;
}

.brand{
	font-size: 3rem;
	font-weight: 300;
	transform: translateX(-100rem);
	animation: slideIn .5s forwards;
}

.brand span{
	color: rgb(137, 192, 194);
}

nav ul{
	display: flex;
}

nav ul li{
	list-style: none;
	transform: translateX(100rem);
	animation: slideIn .5s forwards;
}

nav ul li:nth-child(1){
	animation-delay: 0s;
}

nav ul li:nth-child(2){
	animation-delay: .5s;
}

nav ul li:nth-child(3){
	animation-delay: 1s;
}

nav ul li:nth-child(4){
	animation-delay: 1.5s;
}

nav ul li a{
	padding: 1rem 0;
	margin: 0 3rem;
	position: relative;
	letter-spacing: 2px;
}

nav ul li a:last-child{
	margin-right: 0;
}

nav ul li a::before,
nav ul li a::after{
	content: '';
	position: absolute;
	width: 100%;
	height: 2px;
	background-color: rgb(137, 192, 194);
	left: 0;
	transform: scaleX(0);
	transition: all .5s;
}

nav ul li a::before{
	top: 0;
	transform-origin: left;
}

nav ul li a::after{
	bottom: 0;
	transform-origin: right;
}

.overlay{
	background-color: rgba(0,0,0,.95);
	position: fixed;
	right: 0;
	left: 0;
	top: 0;
	bottom: 0;
	transition: opacity 650ms;
	transform: scale(0);
	opacity: 0;
  display: none;
}

nav ul li a:hover::before,
nav ul li a:hover::after{
	transform: scaleX(1);
}

@keyframes slideIn {
	from{

	}
	to{
		transform: translateX(0);
	}
}

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

	.menu-toggle{
		display: block;
	}

	nav{
		padding-top: 0;
		display: none;
		flex-direction: column;
		justify-content: space-evenly;
		align-items: center;
		height: 100vh;
		text-align: center;
	}

	nav ul{
		flex-direction: column;
	}

	nav ul li{
		margin-top: 5rem;
	}

	nav ul li a{
		margin: 0;
		font-size: 2.5rem;
	}

	.brand{
		font-size: 5rem;
	}

  .overlay.menu-open,
  nav.menu-open{
	  display: flex;
	  transform: scale(1);
	  opacity: 1;
  }

}


/*image collage*/
.container{
    margin: 60px;
}
.gallery {
    display: grid;
    grid-template-columns: repeat(8, 1fr);
    grid-template-rows: repeat(8, 5vw);
    grid-gap: 0px;
}

.gallery__img {
    width: 100%;
    height: 100%;
    object-fit: cover;

}

figure{
    filter: grayscale(.8);
    overflow: hidden;
}


.gallery__item--1 {
    grid-column-start: 1;
    grid-column-end: 4;
    grid-row-start: 1;
    grid-row-end: 9;
}

.gallery__item--2 {
    grid-column-start: 4;
    grid-column-end: 9;
    grid-row-start: 1;
    grid-row-end: 9;

}

.gallery__item--3 {
    grid-column-start: 1;
    grid-column-end: 9;
    grid-row-start: 1;
    grid-row-end: 9;
}
.gallery__item--4 {
    grid-column-start: 1;
    grid-column-end: 9;
    grid-row-start: 1;
    grid-row-end: 9;
}

.gallery__item--5 {
    grid-column-start: 1;
    grid-column-end: 4;
    grid-row-start: 1;
    grid-row-end: 9;
}
.gallery__item--6 {
    grid-column-start: 4;
    grid-column-end: 6;
    grid-row-start: 1;
    grid-row-end: 9;
}

.gallery__item--7 {
    grid-column-start: 6;
    grid-column-end: 9;
    grid-row-start: 1;
    grid-row-end: 9;
}

figure::before {
    position: absolute;
     top: 50%;
     left: 50%;
     z-index: 2;
     display: block;
     content: '';
     width: 0;
     height: 0;
     background: rgba(0,0,0,.2);
     border-radius: 100%;
     transform: translate(-50%, -50%);
     opacity: 0;
 }
 figure:hover{
   animation: bloom ease-in-out .75s forwards;
 }
 figure:hover::before {
     animation: circle .75s;
 }
 @keyframes bloom {
     0% {
         filter: grayscale(.8);
     }
     40% {
         filter: grayscale(.5);
     }
     100% {
         filter: grayscale(0);
     }
 }
 @keyframes circle {
     0% {
         opacity: .5;
     background: rgba(213,156,34,.2);

     }
     40% {
         opacity: 1;
     background: rgba(213,34,160,.2);
     }
     100% {
         width: 200%;
         height: 200%;
         opacity: 0;
     }
 }


 /* footer section */
 #footer {
   margin-top: 200px;
   color: #0779e4;
   background-color:#16213e ;
   padding: 5% 10%;
   text-align: center;
 }
 .social-icon{
   transition: all 0.3s ease;
   font-size: 18px;
   margin: 15px;
 }
 .social-icon:hover{
    cursor: pointer;
     color: #fff;
 }
