html,
body {
   margin:0;
   padding:0;
   height:100%;
}
html {
  position: relative;
  min-height: 100%;
  /*always shows the scrollbar so that it prevents jumping of content when no scrollbar would be shown*/
  overflow-y: scroll;
}
body {
  background-color: #f3f3f3;
}
.clickable{  
    position: relative;  
    cursor: pointer; 
    cursor: hand; 
    z-index: 1;
}


/* Index  */
.absolute-center {
    font-family: "Helvetica Neue",Helvetica,Arial,sans-serif;
    font-size: 16px;
    line-height: 1.42857143;
    color: #333;
    text-align: center;
    margin: auto;
    height: 200px;
    width: 150px;
    position: absolute;
    overflow: visible;
    top: 0; left: 0; bottom: 0; right: 0;
}

#spinner {
    width: 150px;
    animation-delay: 0.1s;
    animation-play-state: running;
    animation-name: spinner;
    animation-duration: 2.5s;
    animation-iteration-count: infinite;
}

@keyframes spinner{
    0% {
    -webkit-transform: rotate(0);
    transform: rotate(0);
    animation-timing-function: cubic-bezier(0.55,0.055,0.675,0.19);
    }
    50% {
        -webkit-transform: rotate(900deg);
        transform: rotate(900deg);
        animation-timing-function: cubic-bezier(0.215,0.61,0.355,1);
    }
    100% {
        -webkit-transform: rotate(1800deg);
        transform: rotate(1800deg);
    }
}

@font-face {
    font-family: Datalegreya;
    src: url("../assets/fonts/Datalegreya-Thin.otf") format("opentype");
    font-weight: bolder;
}


/* wrap long link text */
.long-link{
    white-space: pre-wrap; /* css-3 */    
    white-space: -moz-pre-wrap; /* Mozilla, since 1999 */
    white-space: -pre-wrap; /* Opera 4-6 */    
    white-space: -o-pre-wrap; /* Opera 7 */    
    word-wrap: break-word; /* Internet Explorer 5.5+ */
}

#wrap {
   min-height:100%;
   position:relative;
}

#body {
   padding:10px;
   padding-bottom:100px;   /* Height of the footer */
   margin-top:30px;
}
/* This is needed to move the links/video in front of the footer an make them clickable. */
#body a,
.video {
    position: relative;
    z-index: 1;
}
#footer {
   position:absolute;
   bottom:0;
   width:100%;
   height:120px;   /* Height of the footer */
   background-repeat: no-repeat;
   background-size: 100%;
   background-position: bottom;
   background-image:url("../images/footer3.png");
}



/****FOOTER****/

#footer ul {
    position: absolute;
    padding-left: 15px;
    padding-bottom: 20px;
    margin-bottom:0;
    bottom:0;
}
#footer li {
    padding: 0;
}
#footer,
#footer a {
    color: #f3f3f3;
}
#footer a {
    padding: 15px 5px;
}


/*** Flexbox ***/
/*.flex-container {
  display: -webkit-flex; /* Safari *
  display: flex;
  -webkit-justify-content: space-between; /* Safari *
  justify-content:         space-between;
}*/


/****NAVIGATON*******/
.navbar-brand {
  padding-top: 10px;
  padding-bottom: 10px;
}
.navbar-brand img {
    height: 30px;
}
.logo img {
    height: 44px;
}

.nav-pills-lg{
    padding: 10px 0;
    font-size: 18px;
    line-height: 1.3333333;
    padding-top: 20px;
}
.nav-pills-lg li{
    margin-right: 5px;
}
.nav-pills-lg li a{
    padding: 10px 15px;
}
.nav-pills-lg > li.active > a,
.nav-pills-lg > li.active > a:focus,
.nav-pills-lg > li.active > a:hover,
.nav-pills-lg > li > a:hover {
    border-bottom: 4px solid #515151;
    background-color: #f3f3f3;
    padding-bottom: 6px;
    text-decoration: none;
}
.nav-pills-lg > li > a,
.nav-pills-lg > li > a:focus {
    color: #337ab7;
    border-radius: 0px;
    background-color: #f3f3f3;
    text-decoration: none;
}

/*** Home page image ***/
 .home-image{
    overflow: visible;
    height: 200px;
    width: 100%;
    margin-top:50px;
    background:url("../images/home_768.jpg") no-repeat;
    background-size: cover;
    border-bottom: 1px solid #515151;
}
.home-heading {
    font-family: Datalegreya;
    font-size: 5em;
    margin-top: -10px;
    margin-left: -8px;
}
/*.home-image img {
    height: auto;
    max-width: 100%;
    background:url("images/home_768.jpg") no-repeat;
}*/



/***PROJECTS page***/
.project {
    margin-bottom: 30px;
}
.project h3 {
    margin-top: 25px;
}
.img-gallery {
    margin-top: 35px;
    display: flex;
    flex-wrap: wrap;
}
.img-gallery figure{
    margin: 0 10px 10px 0;
}
.img-gallery img:hover {
    filter: drop-shadow(1px 3px 4px grey);
    -webkit-filter: drop-shadow(1px 3px 4px grey);
}
.img-gallery img {
    /* filter: url("data:image/svg+xml;utf8,<svg xmlns=\'http://www.w3.org/2000/svg\'><filter id=\'grayscale\'><feColorMatrix type=\'matrix\' values=\'0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0 0 0 1 0\'/></filter></svg>#grayscale"); */
    /* Firefox 3.5+, IE10 */
    filter: opacity(95%);
    transition: all .2s ease;
    backface-visibility: hidden;
    /* IE6-9 */
    -webkit-filter: opacity(95%);
    /* Chrome 19+ & Safari 6+ */
    -webkit-transition: all .2s ease;
    /* Fade to color for Chrome and Safari */
    -webkit-backface-visibility: hidden;
    /* Fix for transition flickering */
}
.img-gallery .gallery-video{
    height: 113px;
    width: 200px;
}

figcaption {
    display:none;
}

/* ABOUT page */

.about-content {
    margin-bottom: 20px;
}
.my-gallery img {
    filter: opacity(95%);
    transition: all .2s ease;
    backface-visibility: hidden;
    /* IE6-9 */
    -webkit-filter: opacity(95%);
    /* Chrome 19+ & Safari 6+ */
    -webkit-transition: all .2s ease;
    /* Fade to color for Chrome and Safari */
    -webkit-backface-visibility: hidden;
    /* Fix for transition flickering */
}
.my-gallery img:hover {
    filter: drop-shadow(1px 5px 6px rgb(201, 201, 201));
    -webkit-filter: drop-shadow(1px 5px 6px rgb(201, 201, 201));
}


/*****MEDIA QUERIES********/

/* For width 480px and larger: */
@media only screen and (min-width: 480px) {
    #body{
        padding-bottom:180px;
    }
    #footer{
        height: 200px;
    }
    .home-image {
        height: 300px;
        background:url("../images/home_992.jpg") no-repeat;
        background-size: cover;
    }
    /*.footer-content{
        height: 150px;
        width: 100%;
    }*/
}
/* For width 768px and larger: */
@media only screen and (min-width: 768px) {
    #body{
        padding-bottom:200px;
    }
    #footer{
        height: 250px;
    }
    .home-heading {     
        font-size: 6em;
    }
    .home-image {
        height: 400px;
        margin-top:-85px;
        background-size: cover;
    }
    /* content general */
    .content {
        margin-top: 45px;
    }
}
/* For width 992px and larger: */
@media only screen and (min-width: 992px) {
    #body{
        padding-bottom:150px;
    }
    #footer{
        height: 300px;
    }
    .home-image {
        height: 450px;
        background:url("../images/home_1200.jpg") no-repeat;
        background-size: cover;
    }

    /*Push logo and navigation down on bigger screens*/
    .navbar-brand,
    .main-navigation ul {
        margin-top:20px;
    }
    .project {
        margin-bottom: 60px;
    }
}
/* For width 1200px and larger: */
@media only screen and (min-width: 1200px) {
    #body{
        padding-bottom:200px;
    }
    #footer{
        height: 500px;
    }
    .home-image {
        height: 500px;
        background:url("../images/home_1920.jpg") no-repeat;
        background-size: cover;
    }
}
/* For width 1900px and larger: */
@media only screen and (min-width: 1900px) {
    #body{
        padding-bottom:350px;
    }
    #footer{
        height: 650px;
    }
    .home-image {
        height: 700px;
        background:url("../images/home.jpg") no-repeat;
        background-size: cover;
    }
}