/* --------------------------------- */
/* Css Styles                        */
/*---------------------------------- */

/**
    Grovie  - Portfolio Template 
    Author : Soonlabs
    Copyright 2019


/* Table of Content
==================================================

    1. Body and Core Css
    2. Home Page
    3. About Page 
    4. Portfolio List
    5. News Page
    6. Contact Page
    7. Responsive
*/ 

@import url("margins.css");
@import url("reset.css");
@import url("assets.css");

/*------------------------ 1 Body and Core Css ------------------------*/   

body{
   font-family: 'Poppins', sans-serif;
   background: #000;
}

p {
    font-size: 18px;
    line-height: 35px;
}

/*preloader */
.loader-wrapper {
    position: fixed;
    width: 100%;
    height: 100%;
    background-color: #000;
    z-index: 9999;
    top: 0;
}

.preloader {
    height: 1px;
    background-color: #fff;
    position: absolute;
    z-index: 9999;
}

.outter{
    display: table;
    height: 100%;
    width: 100%;
}

.inner{
    display: table-cell;
    vertical-align: middle;
}

@keyframes scroll {
    0% {
        transform: translateY(0);
    }
    30% {
        transform: translateY(60px);
    }
}

svg #wheel {
    animation: scroll ease 2s infinite;
}

header{
    position: fixed;
    width: 100%;
    top: 0;
    z-index: 20;
    padding: 60px;
}

header .logo img{
    max-height: 100px;
}

.navmenu li a.hassub:after{
    content: "\f107";
    font-family: Font Awesome\ 5 Free;
    font-weight: 900;
    font-size: 15px;
    position: absolute;
    right: -20px;
    top: -7px;
}

/* Nav Icon */

.nav-icon span {
    display: block;
    position: absolute;
    height: 3px;
    width: 100%;
    background: #fff;
    opacity: 1;
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-transition: .25s ease-in-out;
    -moz-transition: .25s ease-in-out;
    -o-transition: .25s ease-in-out;
    transition: .25s ease-in-out;
}

.nav-icon:hover span:nth-child(2){
    width: 100%;
}

.nav-icon span:nth-child(1) {
  top: 0px;
  -webkit-transform-origin: left center;
  -moz-transform-origin: left center;
  -o-transform-origin: left center;
  transform-origin: left center;
}

.nav-icon span:nth-child(2) {
  top: 8px;
  -webkit-transform-origin: left center;
  -moz-transform-origin: left center;
  -o-transform-origin: left center;
  transform-origin: left center;
  width: 60%;
  right: 0 !important;
}


.nav-icon {
    float: right;
    width: 35px;
    height: 18px;
    position: relative;
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-transition: .5s ease-in-out;
    -moz-transition: .5s ease-in-out;
    -o-transition: .5s ease-in-out;
    transition: .5s ease-in-out;
    cursor: pointer;
}

.wrapper {
    position: relative;
}


#full-menu {
    position: fixed;
    z-index: 999;
    padding: 0;
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
    margin: 0;
    display: none;
    overflow: hidden;
    background: #000;
    opacity: 0;    
    width: 100%;
    height: 100%;
    cursor: url(../img/close.png), e-resize;
}

.menu-container {
    text-align: center;
    display: table-cell;
    vertical-align: middle;
    width: 100%;
}
.navmenu {
    list-style: none;
    margin: 0;
    clear: left;
    -moz-backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    text-align: center;
}
.navmenu > li {
    display: block;
    position: relative;
    margin: 0;
}
.navmenu > li > a {
    display: inline;
    font-size: 36px;
    line-height: 70px;
    font-weight: 600;
    color: #fff;
    transition: all 500ms ease;
    letter-spacing: 1px;
    width: 100%;
    position: relative;
}
.navmenu > li > a:hover {
    opacity: .5;
    font-size: 40px;
    transition: all 500ms ease;
}

.navmenu > li > ul {
    display: none;
}

.navmenu > li > ul > li > a{
    color: #fff;
    line-height: 30px;
}

.navmenu > li > ul > li > a:hover{
    opacity: .7;
    transition: all ease 0.3s;
    -webkit-transition: all ease 0.3s;
    -moz-transition: all ease 0.3s;
}

.menu-close {
    background: rgba(0, 0, 0, 0) url(../img/close.png) no-repeat 0px -20px;
    position: absolute;
    height: 20px;
    width: 20px;
    right: 40px;
    top: 40px;
    transition: none 1s ease 0s;
    z-index: 30;
    background-size: 100% !important;
}

.menu-close:hover{
   background: rgba(0, 0, 0, 0) url("../img/close.png") no-repeat 0px 0px;   
}



/*------------------------Home ------------------------*/   

.home{ 
    position: fixed;
    top: 0;
}

.home{
    background: url(../img/home.jpg) no-repeat;
    background-size: cover;
    width: 100%;
    height: 100vh;
    text-align: center;
}

.home.home-video{
    background: url(../img/home-video.jpg) no-repeat;

}

.home .title{
     color: #fff;
    font-size: 100px;
    font-weight: 700;
    letter-spacing: -2px;
}

.home p{
    color: #fff;
    line-height: 32px;
    font-size: 18px;
}

.home-video:before {
    content: ''; 
    position: absolute;
    width: 100%;
    top: 0;
    background: rgba(4, 4, 4, 0.40);
    z-index: 1000;
    height: 100vh;
    left: 0;
    z-index: 2;
}

.down-icon{
    position: absolute;
    bottom: 90px;
    left: 0;
    right: 0;
    cursor: pointer;
    margin: 0 auto;
    z-index: 10;
    text-align: center;
}

.social{
    position: relative;
    z-index: 3;
}

.social a{
    color: #fff;
    margin-right: 20px;
    font-size: 24px;
    font-weight: 600;
}

.social a:hover{
    opacity: .7;
    transition: all ease 0.3s;
    -webkit-transition: all ease 0.3s;
    -moz-transition: all ease 0.3s;
}

.social a:last-child{
    margin-right: 0px;
}

.home .social{
    position: absolute;
    right: 60px;
    bottom: 40px;
}

/* music */

.sound{
    width: 79px;
    color: #fff;
    font-size: 13px;
    line-height: 38px;
    height: 27px;
    font-weight: 600;
}

.sound span{
    float: left;
}

.audio-on .music-wave .sound .on{
    display: block;
}

.audio-on .music-wave .sound .off, .audio-off .music-wave .sound .on{
    display: none;
}

.music-wave {
    cursor: pointer;
    position: absolute;
    bottom: 40px;
    left: 60px;
    width: 95px;
    height: 27px;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: all ease 0.3s;
    z-index: 10;
    visibility: hidden;
}

.music-wave.erect{
    transform: rotate(-90deg) translateY(-50px) translateX(30px);
    position: fixed;
}

.music-wave .lines {
    display: flex;
    padding-bottom: 1px;
    width: 16px;
    height: 21px;
    align-items: flex-end;
}

.music-wave .lines span {
    display: inline-flex;
    margin: 0 1px;
    width: 2px;
    height: 5px;
    background: #fff;
}

.audio-on .music-wave .lines span:nth-child(1) {
    -moz-animation: musicline 2s 0.5s ease-out alternate infinite;
    -webkit-animation: musicline 2s 0.5s ease-out alternate infinite;
    animation: musicline 2s 0.5s ease-out alternate infinite;
}  

.audio-on .music-wave .lines span:nth-child(2) {
    -moz-animation: musicline 2s 1s ease-out alternate infinite;
    -webkit-animation: musicline 2s 1s ease-out alternate infinite;
    animation: musicline 2s 1s ease-out alternate infinite;
} 

.audio-on .music-wave .lines span:nth-child(3) {
    -moz-animation: musicline 2s 1.5s ease-out alternate infinite;
    -webkit-animation: musicline 2s 1.5s ease-out alternate infinite;
    animation: musicline 2s 1.5s ease-out alternate infinite;
}

.audio-on .music-wave .lines span:nth-child(4) {
    -moz-animation: musicline 2s 0.25s ease-out alternate infinite;
    -webkit-animation: musicline 2s 0.25s ease-out alternate infinite;
    animation: musicline 2s 0.25s ease-out alternate infinite;
}


@-moz-keyframes musicline {
    0% {
        height: 5px
    }
    10% {
        height: 10px
    }
    20% {
        height: 5px
    }
    30% {
        height: 14px
    }
    40% {
        height: 18px
    }
    50% {
        height: 5px
    }
    60% {
        height: 16px
    }
    70% {
        height: 10px
    }
    80% {
        height: 12px
    }
    90% {
        height: 3px
    }
    100% {
        height: 18px
    }
}

@-webkit-keyframes musicline {
    0% {
        height: 5px
    }
    10% {
        height: 10px
    }
    20% {
        height: 5px
    }
    30% {
        height: 14px
    }
    40% {
        height: 18px
    }
    50% {
        height: 5px
    }
    60% {
        height: 16px
    }
    70% {
        height: 10px
    }
    80% {
        height: 12px
    }
    90% {
        height: 4px
    }
    100% {
        height: 18px
    }
}

@keyframes musicline {
    0% {
        height: 5px
    }
    10% {
        height: 10px
    }
    20% {
        height: 5px
    }
    30% {
        height: 14px
    }
    40% {
        height: 18px
    }
    50% {
        height: 5px
    }
    60% {
        height: 16px
    }
    70% {
        height: 10px
    }
    80% {
        height: 12px
    }
    90% {
        height: 4px
    }
    100% {
        height: 18px
    }
}



/* Home Video */

.home p, .home .title {
    position: relative;
    z-index: 100;
}


/*------------------------ Portfolio ------------------------*/

.portfolio-item .image{
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;  
}

.above{
    position: fixed;
    left: 0;
    top: 0;
    z-index: 100;
}

.filter-icon{
    z-index: 999;
    position: fixed;
    left: 50px;
    bottom: 40px;
    cursor: pointer;
    transform: translateX(-200%);
    transition: all ease 0.3s;
}

.filter-icon:hover svg{
    overflow: visible;
}

.filter-icon:hover svg path{
    transition: all ease 0.3s;
}

.filter-icon:hover svg path:nth-child(1) {
    -moz-transform: translate3d(-1px, -1px, 0);
    -webkit-transform: translate3d(-1px, -1px, 0);
    transform: translate3d(-1px, -1px, 0);
}

.filter-icon:hover svg path:nth-child(2) {
    -moz-transform: translate3d(1px, -1px, 0);
    -webkit-transform: translate3d(1px, -1px, 0);
    transform: translate3d(1px, -1px, 0);
}

.filter-icon:hover svg path:nth-child(3) {
    -moz-transform: translate3d(-1px, 1px, 0);
    -webkit-transform: translate3d(-1px, 1px, 0);
    transform: translate3d(-1px, 1px, 0);
}

.filter-icon:hover svg path:nth-child(4) {
    -moz-transform: translate3d(1px, 1px, 0);
    -webkit-transform: translate3d(1px, 1px, 0);
    transform: translate3d(1px, 1px, 0);
}

.filter-icon.come{
    transform: translateX(0%);
    transition: all ease 0.3s;
}

.filter-icon:hover .categories{
    opacity: 1;
    transition: all ease 0.3s;
    transform: translateX(-28px) translateY(-45px) rotate(-90deg);
}

.filter-icon .categories{
    display: block;
    transition: all ease 0.3s;
    transform: translateX(-28px) translateY(-60px) rotate(-90deg);
    font-size: 13px;
    opacity: 0;
    color: #fff;
}

.portfolio_filter{
    position: fixed;
    width: 100%;
    top: 0;
    left: 0;
    height: 100vh;
    text-align: center;
    background: rgba(0, 0, 0, 0.70);
    cursor: url(../img/close.png), e-resize;
    z-index: 101;
    display: table;
    visibility: hidden;
    opacity: 0;
    transition: all ease 0.3s;
}

.portfolio_filter.show{
    visibility: visible;
    opacity: 1;
    display: table !important;
    transition: all ease 0.3s;
}

.portfolio_filter ul{
    display: table-cell;
    vertical-align: middle;
}

.portfolio_filter ul li a{
    color: #fff;
    font-size: 30px;
    font-weight: 600;
    cursor: pointer;    
    line-height: 53px;
    transition: all ease 0.3s;
    -webkit-transition: all ease 0.3s;
    -moz-transition: all ease 0.3s;
}

.portfolio_filter ul li a:hover{
    font-size: 35px;
    transition: all ease 0.3s;
    -webkit-transition: all ease 0.3s;
    -moz-transition: all ease 0.3s;
}

.portfolio_filter ul li a.select-cat{
    opacity: .5;
}

.portfolio-item img{
    width: 100%;
}

.portfolio-item .image img{
    visibility: hidden;
}

.portfolio-item{    
    display: block;
    width: 100%;
    -webkit-transform-style: preserve-3d;
    transform-style: preserve-3d;
    -webkit-transform: perspective(1000px);
    transform: perspective(1000px);
    position: relative;
}

.portfolio-item.zom:hover:before{
    display: none !important;  
}

.portfolio-item.zom figcaption{
    opacity: 0;
    transition: all ease 0.3ss;
}

.portfolio-item figcaption{
    position: absolute;
    bottom: 20px;
    left: 25px;
}

.grid-item:hover > .portfolio-item:before{
    opacity: 1;
}

.portfolio-item:before{
    opacity: 0;
    content: '';
    width: 100%;
    height: 100%;
    background: rgba(23, 23, 23, 0.55);
    position: absolute;
    transition: all ease 0.3s;
}


.portfolio-item:hover figcaption{
    transform: translateZ(40px) !important;
}

@media screen and (max-width: 768px){
  .portfolio-item:hover figcaption {
      transform: translateZ(0px) !important;
  }
}

.portfolio-item figcaption .title{
    font-size: 23px;
}

.portfolio-item figcaption span{
    font-size: 12px;
    font-weight: 300;
    line-height: 30px;
    letter-spacing: 1px;
}

.portfolio-item figcaption{
    color: #fff;
}

.portfolio-item:hover{
  box-shadow: rgba(0, 0, 0, 0.30) -1px 20px 80px 0px;
}

.page-container {
    visibility: hidden;
    height:100vh;
    width: 100%;
    left:0px;
    position: fixed;
    top:0;
    z-index:100;
    -webkit-transform: scale(1.00);
    transform: scale(1.00); 
}

.page {
    cursor: pointer;
    position: absolute;
    height:100vh;
    width:100%;
    top:0;
    left:0px;
    position: fixed;
    background-position:center center;
    background-size:cover;
    background-repeat:no-repeat;
}

.grid-item{
    margin-bottom: 60px;
    transition: all ease 0.3s;
    -webkit-transition: all ease 0.3s;
    -moz-transition: all ease 0.3s;
}

.grid-item:hover{
    transform: scale(1.1);
    transition: all ease 0.3s;
    -webkit-transition: all ease 0.3s;
    -moz-transition: all ease 0.3s;
}


/* Video */

.portfolio-item.video figcaption{
    z-index: 10;
}

.portfolio-item.video{
    position: relative;
    width: 100%;
    overflow: hidden;
}

.video-wrapper {
  top: 0; right: 0; bottom: 0; left: 0;
  overflow: hidden;
}

.video-wrapper video{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/* 1. No object-fit support: */
@media (min-aspect-ratio: 16/9) {
  .video-wrapper > video { height: 300%; top: -100%; }
}
@media (max-aspect-ratio: 16/9) {
  .video-wrapper > video { width: 300%; left: -100%; }
}
/* 2. If supporting object-fit, overriding (1): */
@supports (object-fit: cover) {
  .video-wrapper > video {
    top: 0; left: 0;
    width: 100%; height: 100%;
    object-fit: cover;
  }
}

/* Loader */

.loader {
  height: 32px;
  width: 32px;
  -webkit-animation: loader-1-1 4.8s linear infinite;
  animation: loader-1-1 4.8s linear infinite;
}

@-webkit-keyframes loader-1 {
  0% {
    -webkit-transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
  }
}
@keyframes loader-1 {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.loader span {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  margin: auto;
  height: 32px;
  width: 32px;
  clip: rect(0, 32px, 32px, 16px);
  -webkit-animation: loader-2 1.2s linear infinite;
  animation: loader-2 1.2s linear infinite;
}

@-webkit-keyframes loader-2 {
  0% {
    -webkit-transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(220deg);
  }
}
@keyframes loader-2 {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(220deg);
  }
}
.loader span::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  margin: auto;
  height: 32px;
  width: 32px;
  clip: rect(0, 32px, 32px, 16px);
  border: 3px solid #fff;
  border-radius: 50%;
  -webkit-animation: loader-3 1.2s cubic-bezier(0.77, 0, 0.175, 1) infinite;
  animation: loader-3 1.2s cubic-bezier(0.77, 0, 0.175, 1) infinite;
}

@-webkit-keyframes loader-3 {
  0% {
    -webkit-transform: rotate(-140deg);
  }
  50% {
    -webkit-transform: rotate(-160deg);
  }
  100% {
    -webkit-transform: rotate(140deg);
  }
}
@keyframes loader-3 {
  0% {
    transform: rotate(-140deg);
  }
  50% {
    transform: rotate(-160deg);
  }
  100% {
    transform: rotate(140deg);
  }
}

#infscr-loading {
  position: absolute;
  left: 50%;
  margin-left: -15px;
  bottom: 10px;
}

#infscr-loading img {
  display: none;
}


/* Hero */

.hero{
    position: fixed;
    width: 100%;
    height: 100vh;
    overflow: hidden;
    top: 0;
}

.hero.load{
    background: #000;
}

.hero.load .hero-image{
  opacity: .7;
  transition: all ease 0.5s;
}

.hero.load .hero-content .title{
  transform: translateY(0px);
  opacity: 1;
  transition: all ease 0.5s 0.2s;
}

.hero.load .hero-content .category{
  transform: translateY(0px);
  opacity: 1;
  transition: all ease 0.5s 0.4s;
}

.hero .hero-content .category{  
    transform: translateY(30px);
    opacity: 0;
    display: block;
}

.hero .hero-content .title{  
    transform: translateY(30px);
    opacity: 0;
}

.hero.load .down-icon{
    opacity: 1;
  transition: all ease 0.5s 0.7s;
}

.hero .down-icon{
    opacity: 0;
}

header{
    opacity: 0;
}

header.load{
  opacity: 1;
  transition: all ease 0.5s;
}


.hero-image{
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    background-size: cover;
    background-position-x: center;
    background-position-y: center;    
}


.hero-content{
    position: absolute;
    z-index: 10;
    width: 100%;
    height: 100vh;
    text-align: center;
    left: 0;
    top: 0;
    display: table;
}

.hero-content .title{
    color: #fff;
    font-size: 60px;
    font-weight: 700;
}

.hero-content .category{
    color: #fff;
    font-weight: 500;
}


.next-link {
    text-decoration: none;
    overflow: hidden;
    height: 54px;
    display: inline-block;
}

.next-link .nav-title {
    color: #fff;
    font-size: 33px;
    font-weight: 600;
}

.next-link .next-title {
    color: #fff;
    font-size: 30px;
    font-weight: 600;
}

.next-link .next-title,
.next-link .nav-title {
    transform: translateY(0);
    -webkit-transform: translateY(0);
    transition: all ease 0.2s;
    -webkit-transition: all ease 0.2s;
}

.next-link:hover .next-title,
.next-link:hover .nav-title {
    transform: translateY(-100%);
    -webkit-transform: translateY(-100%);
    transition: all ease 0.2s;
    -webkit-transition: all ease 0.2s;
}

.project-detail{
    color: #fff;
}

.project-detail .title {
    font-size: 40px;
    font-weight: 700;
    color: #fff;
}

.lightbox-gallery .image img{
    width: 100%;
}

.lightbox-gallery .image{
    margin-bottom: 60px;
    display: block;
    overflow: hidden;
  transition:  all ease 0.4s;
  -webkit-transition:  all ease 0.4s;
  -moz-transition:  all ease 0.4s;
}

.lightbox-gallery .col, .lightbox-gallery .col-1, .lightbox-gallery .col-10, .lightbox-gallery .col-11, .lightbox-gallery .col-12, .lightbox-gallery .col-2, .lightbox-gallery .col-3, .lightbox-gallery .col-4, .lightbox-gallery .col-5, .lightbox-gallery .col-6, .lightbox-gallery .col-7, .lightbox-gallery .col-8, .lightbox-gallery .col-9, .lightbox-gallery .col-lg, .lightbox-gallery .col-lg-1, .lightbox-gallery .col-lg-10, .lightbox-gallery .col-lg-11, .lightbox-gallery .col-lg-12, .lightbox-gallery .col-lg-2, .lightbox-gallery .col-lg-3, .lightbox-gallery .col-lg-4, .lightbox-gallery .col-lg-5, .lightbox-gallery .col-lg-6, .lightbox-gallery .col-lg-7, .lightbox-gallery .col-lg-8, .lightbox-gallery .col-lg-9, .lightbox-gallery .col-md, .lightbox-gallery .col-md-1, .lightbox-gallery .col-md-10, .lightbox-gallery .col-md-11, .lightbox-gallery .col-md-12, .lightbox-gallery .col-md-2, .lightbox-gallery .col-md-3, .lightbox-gallery .col-md-4, .lightbox-gallery .col-md-5, .lightbox-gallery .col-md-6, .lightbox-gallery .col-md-7, .lightbox-gallery .col-md-8, .lightbox-gallery .col-md-9, .lightbox-gallery .col-sm, .lightbox-gallery .col-sm-1, .lightbox-gallery .col-sm-10, .lightbox-gallery .col-sm-11, .lightbox-gallery .col-sm-12, .lightbox-gallery .col-sm-2, .lightbox-gallery .col-sm-3, .lightbox-gallery .col-sm-4, .lightbox-gallery .col-sm-5, .lightbox-gallery .col-sm-6, .lightbox-gallery .col-sm-7, .lightbox-gallery .col-sm-8, .lightbox-gallery .col-sm-9, .lightbox-gallery .col-xl, .lightbox-gallery .col-xl-1, .lightbox-gallery .col-xl-10, .lightbox-gallery .col-xl-11, .lightbox-gallery .col-xl-12, .lightbox-gallery .col-xl-2, .lightbox-gallery .col-xl-3, .lightbox-gallery .col-xl-4, .lightbox-gallery .col-xl-5, .lightbox-gallery .col-xl-6, .lightbox-gallery .col-xl-7, .lightbox-gallery .col-xl-8, .lightbox-gallery .col-xl-9 {
    padding-right: 30px;
    padding-left: 30px;
}

.lightbox:hover img{
  transform: scale(1.13);
  transition:  all ease 0.4s;
  -webkit-transition:  all ease 0.4s;
  -moz-transition:  all ease 0.4s;
}


/* Showcase */

#showcase .section {
  text-align:left;
  font-size: 3em;
  padding: 0 120px;
  overflow: hidden;
}

#showcase .text{
    position: relative;
    z-index: 20;
    color: #fff;
    transition: padding ease 0.4s;
}

#showcase .text .title{
    color: #FFF;
    font-size: 80px;
    font-weight: 700;
}

#showcase .text hr{
    width: 30px;
    height: 2px !important;
    border: solid 0px #FFF;
    background-color: #FFF;
    display: inline-block;
    margin-right: 5px;
    margin-top: 31px;
    padding: 0;
    vertical-align: middle;
}

a.view-project{   
    display: table;
    color: #000;
    border: solid 2px #ffffff;
    border-radius: 50px;
    line-height: 0px;
    width: 54px;
    position: relative;
    height: 54px;
    -webkit-transition: all ease 0.3s;
    transition: all ease 0.3s;
    background: #fff;
}

a.view-project:hover{    
    width: 170px;
    padding-left: 24px;
    -webkit-transition: all ease 0.3s;
    transition: all ease 0.3s;
}

a.view-project:hover span {
    display: block;
    opacity: 1;
    -webkit-transition: all ease 0.3s 0.3s;
    transition: all ease 0.3s 0.3s;
}


a.view-project:hover i {
    left: auto;
    transform: translateX(110px);
    -webkit-transition: all ease 0.3s; 
    transition: all ease 0.3s;
}

a.view-project span{  
    opacity: 0; 
    font-size: 14px;
    width: 110px;
    height: 46px;
    display: none;
    line-height: 51px;
    -webkit-transition: all ease 0.3s 0.3s;
    transition: all ease 0.3s 0.3s;
}

a.view-project i {
    font-size: 13px;
    position: absolute;
    left: 19px;
    top: 19px;
    transform: translateX(0);
    -webkit-transition: all ease 0.3s;
    transition: all ease 0.3s;
}


#showcase .text p{
    display: inline-block;
    font-size: 18px;
    font-weight: 600;
}

#showcase .section .slide-image{
    position: absolute;
    left: 0;
    top: 0;
    opacity: .7;
    width: 100%;
    height: 100%;    
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
}

#showcase .slide-overlay{
    background: black;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    z-index: 1;
    transition: opacity ease 0.4s;
}

#showcase .section.slide-anime .text{
    padding-left: 250px;
    transition: padding ease 0.5s;
}

.section.slide-anime .slide-overlay{
    opacity: 1 !important;
    transition: opacity ease 0.4s;
}

.showcase-bottom{
    position: absolute;
    bottom: 0;
    width: 100%;
    padding: 60px;
    z-index: 10;
}

.showcase-bottom .social{
    display: inline-block;
}

#showcase-counter {
    float: right;
    margin-right: 22px;
}

#showcase-number {
    left: 0px;
    line-height: 20px;
    margin: 0;
    padding: 0;
    position: absolute;
    text-align: left;
    width: 40px;
    z-index: 100;
    -webkit-transition: all 0.6s ease-in-out 0.8s;
    transition: all 0.6s ease-in-out 0.8s;
}

#showcase-number li {
    list-style: none;
    letter-spacing: 1px;
    color: #ececec;
    font-size: 40px;
    font-weight: 400;
    line-height: 38px;
    margin: 0;
    padding: 0;
    display: block;
    width: 40px;
    font-family: sans-serif;
}

#counter-outter {
    width: 85px;
    height: 30px;
    position: relative;
    bottom: 0;
    overflow: hidden;
    opacity: 1;
    margin: 0 auto;
    -webkit-transition: all 0.3s ease-in-out 0.15s;
    -moz-transition: all 0.3s ease-in-out 0.15s;
    -o-transition: all 0.3s ease-in-out 0.15s;
    transition: all 0.3s ease-in-out 0.15s;
}


#counter-total {    
    color: #fff;
    letter-spacing: 1px;
    font-weight: 400;
    font-size: 16px;
    font-weight: 400;
    right: 0;
    width: 88px;
    line-height: 13px;
    position: absolute;
    bottom: 0;
    text-align: right;
    font-family: sans-serif;
    opacity: .6;
}

#counter-outter:before {    
    background-color: rgba(255, 255, 255, 0.65);
    content: "";
    height: 18px;
    right: 30px;
    opacity: 1;
    position: absolute;
    bottom: -1px;
    width: 1px;
}

.black-grid {
    height: 100%;
    padding: 0;
    z-index:10;
    position: absolute
}

.black-grid-border-right {
    border-right: solid 1px #FFF;
    opacity: .1;
}

.black-line {
    height: 100%;
}

#ft-nav{
    top: 48%;
}

#fp-nav.right {
    right: 60px;
}

#fp-nav ul li a span, .fp-slidesNav ul li a span{
    right: 0;
    left: auto;
}

#fp-nav ul li a.active span, .fp-slidesNav ul li a.active span, #fp-nav ul li:hover a.active span, .fp-slidesNav ul li:hover a.active span {
    height: 2px;
}

#fp-nav ul li a span, .fp-slidesNav ul li a span {
    height: 2px;
}

#fp-nav ul li:hover a span, .fp-slidesNav ul li:hover a span {
    height: 2px;
    background: #fff;
}

#fp-nav.yok{
    display: none;
}





/*------------------------ About ------------------------*/

.subpage{
    width: 100%;
}

.subtitle{
    padding: 15vh 0 5vh 0;
}

.subtitle .title{
    font-size: 50px;
    color: #fff;
    font-weight:700;
}

.subpage p{
    font-size: 22px;
    color: #fff;
    line-height: 40px;
}

.services .service i {
    color: #fff;
    font-size: 40px;
}

.services .service .title {
    font-weight: 400;
    color: #fff;
    font-size: 14px;
}

.services .service p {
    font-size: 13px;
    line-height: 22px;
    color: #ffffff63;
    margin-bottom: 0;
    margin-top: 12px;
}

/* Testimonial */

.testimonials .item p {
    color: #919193;
    font-size: 16.5px;
    line-height: 30px;
}

.testimonials .item span {
    color: #fff;
    margin: 20px 0 15px;
    display: block;
}

.owl-theme .owl-dots .owl-dot span {
    width: 9px;
    height: 9px;
}

.owl-theme .owl-dots .owl-dot.active span,
.owl-theme .owl-dots .owl-dot:hover span {
    background: #fff;
    opacity: .4;
    outline: 0;
}

.owl-theme .owl-dots .owl-dot {
    display: inline-block;
    zoom: 1;
    outline: 0;
}

.owl-theme .owl-nav.disabled+.owl-dots {
    margin-top: 30px;
}

.list-style li {
    color: #fff;
    font-size: 11px;
    font-weight: 600;
}

.list-style li a {
    color: #fff;
    font-size: 11px;
}

.list-style li a span {
    transition: color ease 0.3s;
    -webkit-transition: color ease 0.3s;
    -moz-transition: color ease 0.3s;
}

.list-style li a:hover > span {
    color: #0067ff;
    transition: color ease 0.3s;
    -webkit-transition: color ease 0.3s;
    -moz-transition: color ease 0.3s;
}

.list-style li span {
    display: block;
    font-weight: 400;
    color: #6d6d6d;
    font-size: 12px;
    line-height: 24px;
}

/* Our Team */

.teammates .team img{
    width: 100%;
    -webkit-filter: grayscale(100%);
    filter: grayscale(100%);
    transform: scale(1);    
    border-radius: 4px;
    -webkit-border-radius: 4px;
    
}

.teammates .team .name{
    color: #fff;
    margin-top: 15px;
    display: block;
    opacity: 0;
}

.teammates .team:hover > img{
    -webkit-filter: grayscale(0%);
    filter: grayscale(0%);
    transition: all ease 0.6s;
    -webkit-transition: all ease 0.6s;
}

.teammates .team:hover > .name{
    transform: translateY(0px);
    opacity: 1;
    transition: all ease 0.6s;
    -webkit-transition: all ease 0.6s;
}




/*------------------------ Contact ------------------------*/


.form-inp {
    width: 100%;
    height: 45px;
    border: 0;
    color: #fff;
    border-bottom: solid 1px #525252;
    font-size: 13px;
    padding-left: 10px;
    margin-bottom: 15px;
    background: none;
}

.contact-form textarea {
    width: 100%;
    border: 0;
    color: #fff;
    border-bottom: solid 1px #525252;
    font-size: 13px;
    padding: 20px 0 0 10px;
    height: 119px;
    margin-bottom: 15px;
    background: none;
    transition: all ease 0.5s;
    -webkit-transition: all ease 0.5s;
    -moz-transition: all ease 0.5s;
}

.form-inp:focus {
    border-bottom: solid 1px #b5b5b5 !important;
    transition: all ease 0.5s;
    -webkit-transition: all ease 0.5s;
    -moz-transition: all ease 0.5s;
}

.contact-form textarea:focus {
    border-bottom: solid 1px #b5b5b5 !important;
    transition: all ease 0.5s;
    -webkit-transition: all ease 0.5s;
    -moz-transition: all ease 0.5s;
}

.form-title {
    font-size: 21px;
    line-height: 38px;
    font-weight: 500;
    color: #fff;
    text-align: center;
}

.form-btn {
    cursor: pointer;
    color: #000;
    background: #fff;
    padding: 15px 55px;
    border-radius: 4px;
    -webkit-border-radius: 4px;
    font-size: 13px;
    font-weight: 600;
    border: none;
    transition: all ease 0.4s;
    -webkit-transition: all ease 0.4s;
    -moz-transition: all ease 0.4s;
    margin: 60px auto 0;
    display: block;
}

.form-btn:hover {    
    background: #d0d0d0;
    transition: all ease 0.4s;
    -webkit-transition: all ease 0.4s;
    -moz-transition: all ease 0.4s;
}

.site-btn{
    cursor: pointer;
    color: #fff;
    padding: 12px 40px;
    border-radius: 50px;
    -webkit-border-radius: 40px;
    font-size: 13px;
    font-weight: 600;
    border: none;
    transition: all ease 0.4s;
    -webkit-transition: all ease 0.4s;
    -moz-transition: all ease 0.4s;
    outline: 0 !important;
    background: none;
    border: solid 2px #fff;
}

.site-btn:hover{
    transition: all ease 0.4s;
    -webkit-transition: all ease 0.4s;
    -moz-transition: all ease 0.4s;
    background: #fff;
    color: #000;
}

.site-btn:focus{
    border: solid 2px #fff;    
}

.contact-info .info i{
    font-size: 30px;
    color: #fff;
}

.contact-info .info p{
    font-size: 15px;
    line-height: 25px;
    padding: 30px 0 0px;
}

.contact-info .info span{
    color: #808080;
}

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

footer{
    background: #171717;
    color: #fff;
    padding: 30px;
}


footer .social{
    margin-left:auto;
    margin-right:auto;
}

footer .social a{
    color: #fff;
    margin-right: 45px;
    margin-bottom: 30px;
    font-size: 14px;
}

footer p{
    font-size: 14px;
    line-height: 15px;
}


footer a{
    color: #fff;
    opacity: 1;
}

footer a:hover{
    color: #fff;
    opacity: .5;
    transition: all ease 0.3s;
}

footer .copyright{
    color: #ababab;
}

footer .social-icons{
    border-bottom: 1px solid rgba(119, 119, 119, 0.30);
}

footer .bottom-sound{
    position: relative;
    width: 100%;
    height: 60px;
    display: inline-block;
}

footer .bottom-sound .music-wave{
    left: 0;
    right: 0;
    margin: 0 auto;
    bottom: 20px;
}



/*------------------------ News ------------------------*/


.news-posts{
    padding: 60px 0;
}

.news{
    margin-bottom: 90px;
    width: 100%;
    transition: all ease 0.3s;
    -webkit-transition: all ease 0.3s;
    -moz-transition: all ease 0.3s;
}

.news-title{
    color: #fff;
    font-size: 50px;
    line-height: 70px;
    font-weight: 600;
    letter-spacing: -1px;
}

.news.active{
    opacity: .2;
    transition: all ease 0.3s;
    -webkit-transition: all ease 0.3s;
    -moz-transition: all ease 0.3s;
}

.news-info{
    color: #fff;
    font-size: 15px;
    margin-top: 30px;
    display: block;
    opacity: .7;
}

.news-images {
    white-space: nowrap;
    position: fixed;
    opacity: 0;
    visibility: hidden; 
    height: auto;
    z-index: -1;
    transition: all ease 0.3s;
    -webkit-transition: all ease 0.3s;
    -moz-transition: all ease 0.3s;    
    left: 0;
    right: 0;
    margin: 0 auto;
}

.news-images img{
    opacity: .7;
}

.news-images.visible{
    opacity: 1;
    visibility: visible;
    transition: all ease 0.3s;
    -webkit-transition: all ease 0.3s;
    -moz-transition: all ease 0.3s;
}


.nav-links {
    margin: auto;
    border-top: solid 1px #333333;
    padding: 80px 0px;
}

.nav-links ul {
    padding: 0px;
    margin: 0px;
}

.nav-links ul li {
    display: inline-block;
    color: #FFFFFF;
    padding: 0px 10px;
    font-size: 20px;
    line-height: 40px;
    font-weight: 500;
}

.nav-links ul li .current {
    font-weight: 700;
    font-size: 30px;
    vertical-align: middle;
}

.nav-links ul li a {
    color: #FFFFFF;
    opacity: .5;
    vertical-align: middle;
}

.nav-links ul li a:hover{
    opacity: 1;
    transition: all ease 0.3s;
    -webkit-transition: all ease 0.3s;
    -moz-transition: all ease 0.3s;
}

.news-article .new-image{
    width: 100%; 
}

.news-article .news-image img{
    width: 100%; 
}

.news-article p{    
    font-size: 18px;
    line-height: 33px;
    opacity: .8;
}

.news-article .news-info {
    margin-top: 5px;
}

blockquote {
    color: #000;
    font-size: 18px;
    line-height: 30px;
    margin-bottom: 24px;
    border-left: 4px #565656 solid;
    padding: 20px 20px 20px 40px;
    margin:30px 0;
}

blockquote p {
    opacity: 1 !important;
}


/*Comments*/

.article-comments .comment {    
    border-bottom: solid 1px #383838;
    padding-bottom: 30px;
}

.article-comments .comment figure img {
    width: 100%;
    border-radius: 2px;
    -webkit-border-radius: 2px;
}

.article-comments .comment-content .title {
    font-weight: 500;
    font-size: 16px;
    margin-bottom: 0;
    color: #fff;
}

.article-comments .comment-content .date {
    color: #505050;
    font-size: 12px;
}

.article-comments .comment-content p {
    color: #818080;
    font-size: 14px;
    line-height: 24px;
    font-weight: 400;
    margin-top: 4px;
}

.article-comments .comment-content .reply {
    font-size: 12px;
    color: #fff;
    margin-top: 10px;
    display: inline-block;
}

.article-comments .comment-content .reply:before {
    content: "\f3e5";
    font-family: 'Font Awesome 5 Free';
    font-weight: bold;
    margin-right: 7px;
    font-size: 10.5px;
}

.article-comments .comment:last-child {
    border: none;
}

.article-comments .comment.reply {
    padding-left: 30px;
}

.secondtitle {
    color: #fff;
    font-size: 25px;
    font-weight: 600;
}

/* sidebar */

.widget-title {
    font-size: 18px;
    font-weight: 600;
    color: #fff;
}

.recent-post ul li {
    list-style: none;
}

.recent-post ul li a {
    border-bottom: 1px solid #2d2d2d;
    width: 100%;
    display: block;
    padding: 15px 0;
    transition: all ease 0.3s;
}

.recent-post ul li:last-child a{
    border: none;
}

.recent-post .title {
    font-size: 14px;
    line-height: 20px;
    color: #989898;
}

.recent-post ul li span {
    color: #b8b8b8;
    font-size: 12px;
}

.categories ul li {
    list-style: none;
}

.categories ul li a {
    color: #9a9a9a;
    font-size: 14px;
    padding: 10px 0;
    border-bottom: 1px solid #2d2d2d;
    display: block;
    transition: all ease 0.3s;
}


.categories ul li:last-child a{
    border: none;
}

.sidebar{
    padding-left: 40px;
    display: inline-table;
}

/*------------------------ Responsive ------------------------*/


@media screen and (min-width: 1500px) {

    .portfolio .container {
        width: 1500px;
    }

    .news-article .news-title {
        font-size: 43px;
        line-height: 57px;
    }

}


@media screen and (min-width: 1280px) {

    .container {
        width: 1300px;
    }

      
  #portfolio{
      min-height: 1200px;
  }

}


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

  .news-title {
    font-size: 40px;
    line-height: 60px;
    }

    .news-info {
        margin-top: 20px;
    }

}



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


    .home .title {
        font-size: 80px;
    }

    .filter-icon{
        background: #000;
        padding: 14px;
        height: 50px;
    }

    .filter-icon .categories{
        display: none;
    }

    .music-wave, .home .social, footer .bottom-sound{
        display: none;
    }

    .next-link .next-title{
        display: none;
    }

    .nav-title {
        transform: translateY(0) !important;
        -webkit-transform: translateY(0) !important;
    }

    #showcase .section {
        padding: 0 60px;
    }

    #showcase .text .title {
        font-size: 64px;
    }

    #showcase .section.slide-anime .text{
        padding-left: 90px;
        transition: padding ease 0.5s;
    }

    .showcase-bottom .social{
        display: inline-block;
    }

    .video-wrapper{
        display: none;
    }



}


@media screen and (min-width: 769px) {


    .masonry .col, .masonry .col-1, .masonry .col-10, .masonry .col-11, .masonry .col-12, .masonry .col-2, .masonry .col-3, .masonry .col-4, .masonry .col-5, .masonry .col-6, .masonry .col-7, .masonry .col-8, .masonry .col-9, .masonry .col-lg, .masonry .col-lg-1, .masonry .col-lg-10, .masonry .col-lg-11, .masonry .col-lg-12, .masonry .col-lg-2, .masonry .col-lg-3, .masonry .col-lg-4, .masonry .col-lg-5, .masonry .col-lg-6, .masonry .col-lg-7, .masonry .col-lg-8, .masonry .col-lg-9, .masonry .col-md, .masonry .col-md-1, .masonry .col-md-10, .masonry .col-md-11, .masonry .col-md-12, .masonry .col-md-2, .masonry .col-md-3, .masonry .col-md-4, .masonry .col-md-5, .masonry .col-md-6, .masonry .col-md-7, .masonry .col-md-8, .masonry .col-md-9, .masonry .col-sm, .masonry .col-sm-1, .masonry .col-sm-10, .masonry .col-sm-11, .masonry .col-sm-12, .masonry .col-sm-2, .masonry .col-sm-3, .masonry .col-sm-4, .masonry .col-sm-5, .masonry .col-sm-6, .masonry .col-sm-7, .masonry .col-sm-8, .masonry .col-sm-9, .masonry .col-xl, .masonry .col-xl-1, .masonry .col-xl-10, .masonry .col-xl-11, .masonry .col-xl-12, .masonry .col-xl-2, .masonry .col-xl-3, .masonry .col-xl-4, .masonry .col-xl-5, .masonry .col-xl-6, .masonry .col-xl-7, .masonry .col-xl-8, .masonry .col-xl-9 {
        padding-right: 30px;
        padding-left: 30px;
    }


}


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

    .home .title {
        font-size: 70px;
    }    

    .home p {
        line-height: 30px;
        font-size: 16px;
    }

    .subpage p {
        font-size: 19px;
        line-height: 37px;
    }

    .service{
        margin-bottom: 60px;
    }

    .teammates .team .name{
        opacity: 1 !important;
    }

    .contact-info .info{
        margin-bottom: 60px;
    }


}



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

    .home .title {
        font-size: 64px;
        margin-bottom: 15px;
    }

    header .logo img{
        max-height: 80px;
    }

    .grid-item {
        margin-bottom: 30px;
    }    
    br{
        display: none;
    }

       .portfolio-item.video .video-wrapper{
        visibility: hidden;
    }

    .portfolio-item.video .image{
        visibility: visible !important;
    }

    .hero .video-wrapper{
        visibility: hidden;
    }

    .hero .mobile-image {
        visibility: visible !important;
    }

    #showcase .text .title {
        font-size: 50px;
    }

    header {
        padding: 50px;
    }

    #showcase-counter {
         margin-right: 0px; 
    }

    .news-title {
        font-size: 30px;
        line-height: 50px;
    }

    .news-posts {
        padding: 30px 0;
    }
           
    .comment.reply {
        padding-left: 0 !important;
    }

    .comment figure img {
        display: none;
    }

    .news-article {
        padding: 0 15px;
    }

.subpage p {
    font-size: 17px;
    line-height: 34px;
}

}



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

    .home .title {
        font-size: 40px;
        margin-bottom: 15px;
    }

    .home p{
        padding: 0 15px;
    }

    footer, header{
        padding: 30px;
    }

    header .logo img{
        max-height: 65px;
    }

    footer .social a {
        margin-right: 25px;
    }

    footer p {
        font-size: 14px;
        line-height: 23px;
    }

    .hero-content .title {
        font-size: 32px;
    }

    .project-detail .title {
        font-size: 25px;
        font-weight: 700;
        color: #fff;
    }

    p {
        font-size: 15px;
        line-height: 30px;
    }

    .next-link .nav-title {
        font-size: 23px;
    }

    .subtitle {
        padding: 15vh 0 10px 0;
    }

    .subtitle .title{
        font-size: 35px;
    }

    .subpage p {
        font-size: 15px;
        line-height: 30px;
    }

    .form.top_60.bottom_120{ 
        margin-top: 30px;
        margin-bottom: 54px;
    }

    .contact-info .info {
        padding: 0 20px;
    }

    footer .social {
        margin-bottom: 30px;
    }

    .social-icons{
        margin-bottom: 25px;
    }

    .contact-info{
        margin-bottom: 30px;
    }

    .service {
        padding: 0 20px;
    }

    .team{
        margin-bottom: 60px;
    }

    .navmenu > li > a {
        font-size: 30px;
        line-height: 53px;
    }

    #showcase .text .title {
        font-size: 23px;
    }

    #showcase .section {
        padding: 0 40px;
    }

    .showcase-bottom {
        padding: 30px;
    }

    .showcase-bottom .social a {
        margin-right: 14px;
    }

    #counter-outter {
        height: 25px;
    }

    #showcase-number li {
        font-size: 30px;
    }

    #counter-outter {
        width: 77px;
    }

    #fp-nav.right {
        right:25px;
    }

    #showcase .text p {
        font-size: 15px;
        margin-bottom: 0;
    }

    #showcase .text hr {
        width: 16px;
        margin-right: 0px;
    }

    #showcase .section.slide-anime .text{
        padding-left: 30px;
    }

    .subtitle {
        padding: 120px 0 10px 0;
    }

    .news-title {
        font-size: 21px;
        line-height: 36px;
    }

    .news {
        margin-bottom: 50px;
        padding: 0 20px;
    }

    .nav-links {
        padding: 50px 0px;
    }

}

/* Mobile horizontal */

@media screen and (min-device-width: 481px) 
           and (max-device-height: 450px) 
           and (orientation: landscape) {
  
    header {
        padding: 30px;
    }

    header .logo img{
        max-height: 65px;
    }

    .home .title {
        font-size: 50px;
    }

    .down-icon {
        bottom: 30px;
    }

    .home p {
        padding: 0 5%;
    }

    .navmenu > li > a {
        font-size: 25px !important;
        line-height: 50px;
    }

    .down-icon svg{
        width: 20px;
    }

    #showcase .text .title {
        font-size: 30px;
    }

    .showcase-bottom {
        padding: 30px;
    }

    #showcase-number li {
        font-size: 30px;
    }

    #counter-outter {
        width: 74px;
    }

    #showcase-number li {
        line-height: 40px;
    }

    #fp-nav.right {
        right: 26px;
    }

    #showcase .text p {
        margin-bottom: 0;
    font-size: 15px;
    }

    #showcase .text hr {
        width: 20px;
        margin-right: 0px;
    }

    a.view-project {
        width: 40px;
        height: 40px;
        margin-top: 20px;
    }

    a.view-project i {
        font-size: 13px;
        left: 12px;
        top: 13px;
    }

    .showcase-bottom {
        padding: 18px 30px;
    }

    .hero-content .title {
        font-size: 40px;
    }

    .subtitle .title {
        font-size: 40px;
    }

}























