html, body {
    height: 100%;
}

body {
    background: #01163e url(../img/bg.jpg) 0 0 repeat-x;
}

#templates {
    display: none;
}

#container {
    padding: 40px;
}

.hidden {
    display: none !important;
}

#header {
    position: relative;
    margin: 0 0 1.5em 0;
}
    #header .logo {
        font-family: Lato, Arial, sans-serif;
        font-weight: 900;
        font-size: 16px;
        color: #669dfe;
        margin: 0;
        padding: 6px 0;
        display: inline-block;
        vertical-align: top;
    }
        #header .logo a {
            color: #669dfe;
            text-decoration: none;
        }

        #header .close-current-search {
            display: none;
        }

        .work #header .close-current-search {
            display: inline-block;
            vertical-align: middle;
            padding: 0 8px;
            font-family: Lato, Arial, sans-serif;
            font-size: 44px;
            line-height: 33px;
            font-weight: 300;
            color: #fff;
            text-decoration: none;
            float: right;
        }

    form.search {
        margin: 0;
        padding: 0;
        display: inline-block;
        vertical-align: top;
        border: solid 2px #669dfe;
    }
        form.search input {
            background: transparent;
            border: none;
            padding: 6px 12px;
            color: #fff;
        }
            form.search input::-webkit-input-placeholder { /* WebKit */
                color:    #669dfe;
            }
            form.search input:-moz-placeholder { /* Firefox 4+ */
                color:    #669dfe;
                opacity:  1;
            }
            form.search input::-moz-placeholder { /* Firefox 19+ */
                color:    #669dfe;
                opacity:  1;
            }
            form.search input:-ms-input-placeholder { /* IE 10+ */
                color:    #669dfe;
            }

        form.search button {
            border: none;
            background: transparent url(../img/search.png) 0 2px no-repeat;
            width: 26px;
            text-indent: 100px;
            overflow: hidden;
        }

        form.search.at-home {
            font-family: Lato, Arial, sans-serif;
            font-size: 3em;
        }
            form.search.at-home button {
                background-position: -28px 50%;
                width: 46px;
            }

    #progress {
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        z-index: 2;
        height: 4px;
    }
    #progress .bar {
        display: inline-block;
        vertical-align: top;
        width: 0%;
        height: 6px;
        background: red;
    }


#panel {
    /*background: #fff;*/
    /*padding: 20px;*/
    /*background: #eee;*/
    font-size: 0;
    opacity: 0;
}

#panel .column {
    display: inline-block;
    vertical-align: top;
}

#panel .item {
    position: relative;
    opacity: 0;
    margin: 0 10px 15px 10px;
    overflow: hidden;
    padding: 10px;
    background: #fff;

    box-shadow: 0 2px 5px rgba(0,0,0, 0.3);
}

    #panel .item .description {
        display: none;
        position: absolute;
        top: 0;
        left: 0;
        padding: 10px;
        /*margin: 10px;*/
        width: 80%;
        height: 80%;
        vertical-align: middle;
        text-align: center;
        background: #fff;
        opacity: .5;
    }

    #panel .item img {
        background: #fff;
        width: 100%;
        height: auto;
    }

    #panel .item h3 {
        margin: 0;
        padding: 0;
    }

    #panel .item .author {

    }

#panel .item img {
    -webkit-transform: scale(1);
    -webkit-transition: 0.25s ease-out;
    -moz-transform: scale(1);
    -moz-transition: 0.25s ease-out;
    -ms-transform: scale(1);
    -ms-transition: 0.25s ease-out;
    -o-transform: scale(1);
    -o-transition: 0.25s ease-out;
    transform: scale(1);
    transition: 0.25s ease-out;
}

.work #panel .item:hover img {
    cursor: zoom-in;
    cursor:-webkit-zoom-in;
    cursor:-moz-zoom-in;

    -webkit-transform-origin: 50% 50%;
    -webkit-transform: scale(1.1);
    -webkit-transition: 5s ease-out;
    -moz-transform-origin: 50% 50%;
    -moz-transform: scale(1.1);
    -moz-transition: 5s ease-out;
    -ms-transform-origin: 50% 50%;
    -ms-transform: scale(1.1);
    -ms-transition: 5s ease-out;
    -o-transform-origin: 50% 50%;
    -o-transform: scale(1.1);
    -o-transition: 5s ease-out;
    transform-origin: 50% 50%;
    transform: scale(1.1);
    transition: 5s ease-out;
}

.work #panel .item:active img {
    cursor: zoom-in;
    cursor:-webkit-zoom-in;
    cursor:-moz-zoom-in;

    -webkit-transform-origin: 50% 50%;
    -webkit-transform: scale(0.9);
    -webkit-transition: 0.5s ease-out;
    -moz-transform-origin: 50% 50%;
    -moz-transform: scale(1.1);
    -moz-transition: 5s ease-out;
    -ms-transform-origin: 50% 50%;
    -ms-transform: scale(1.1);
    -ms-transition: 5s ease-out;
    -o-transform-origin: 50% 50%;
    -o-transform: scale(1.1);
    -o-transition: 5s ease-out;
    transform-origin: 50% 50%;
    transform: scale(1.1);
    transition: 5s ease-out;
}

#container .message {
    font-family: Lato, Arial, sans-serif;
    font-weight: 900;
    font-size: 14px;
    margin: 10px 0;
    text-align: center;
    color: #fff;

    opacity: 1;
    visibility: visible;
    display: block;

    -webkit-transition:
        display 0s linear,
        visibility 0s linear,
        opacity 0.75s ease;
    -moz-transition:
        display 0s linear,
        visibility 0s linear,
        opacity 0.75s ease;
    -ms-transition:
        display 0s linear,
        visibility 0s linear,
        opacity 0.75s ease;
    -o-transition:
        display 0s linear,
        visibility 0s linear,
        opacity 0.75s ease;
    transition:
        display 0s linear,
        visibility 0s linear,
        opacity 0.75s ease;
}
    #container .message.hidden {
        opacity: 0;
        visibility: hidden;
        display: none;
    }
    #container .message a {
        color: #fff;
    }

    #container .load-more a {
        display: block;
        padding: 10px;
        background: #669dfe;
        color: #fff;
        text-decoration: none;
    }

    #container .finish-message {
        font-weight: 300;
        color: #ccc;
        padding: 10px;
    }

    #container .no-search-message {
        background: red;
        padding: 10px;
    }

#container .search {
    display: none;
}
    #container #home .search {
        display: inline-block;
    }
    #container.work .search.at-work {
        display: inline-block;
        margin-left: 40px;
    }

#container #panel {
    position: relative;
}

/* ****************************** */

#container #home {
    position: absolute;
    overflow: hidden;
}

#container #home {
    opacity: 1;
    visibility: visible;
    -webkit-transition: visibility 0s linear,
        opacity 0.5s ease 0.5s;
}

#container.work #home {
    opacity: 0;
    visibility: hidden;
    -webkit-transition: visibility 0s linear 0.5s,
        opacity 0.5s ease;
}

#container #home h3 {
    font-family: Lato, Arial, sans-serif;
    font-weight: 900;
    font-size: 5em;
    line-height: 1em;
    color: #fff;
    padding: 0;
    margin: 1em 0 0.4em 0;
}

#container #panel {
    opacity: 0;
    visibility: hidden;
    display: none;

    -webkit-transition:
        display 0s linear 0.5 s,
        visibility 0s linear 0.5s,
        opacity 0.5s ease;
    -moz-transition:
        display 0s linear 0.5 s,
        visibility 0s linear 0.5s,
        opacity 0.5s ease;
    -ms-transition:
        display 0s linear 0.5 s,
        visibility 0s linear 0.5s,
        opacity 0.5s ease;
    -o-transition:
        display 0s linear 0.5 s,
        visibility 0s linear 0.5s,
        opacity 0.5s ease;
    transition:
        display 0s linear 0.5 s,
        visibility 0s linear 0.5s,
        opacity 0.5s ease;
}
#container.work #panel {
    opacity: 1;
    visibility: visible;
    display: block;

    -webkit-transition:
        display 0s linear,
        visibility 0s linear,
        opacity 0.5s ease;
    -moz-transition:
        display 0s linear,
        visibility 0s linear,
        opacity 0.5s ease;
    -ms-transition:
        display 0s linear,
        visibility 0s linear,
        opacity 0.5s ease;
    -o-transition:
        display 0s linear,
        visibility 0s linear,
        opacity 0.5s ease;
    transition:
        display 0s linear,
        visibility 0s linear,
        opacity 0.5s ease;
}

#container.work #panel .item.failed {
    display: none;
}

#container.work #panel .item.ready {
    opacity: 1;
    visibility: visible;
    display: block;

    -webkit-transition:
        display 0s linear,
        visibility 0s linear,
        opacity 0.5s ease;
    -webkit-transform-origin: 50% 50%;
    -webkit-animation: item-to-work 0.5s ease 1 forwards normal;
    -moz-transition:
        display 0s linear,
        visibility 0s linear,
        opacity 0.5s ease;
    -moz-transform-origin: 50% 50%;
    -moz-animation: item-to-work 0.5s ease 1 forwards normal;
    -ms-transition:
        display 0s linear,
        visibility 0s linear,
        opacity 0.5s ease;
    -ms-transform-origin: 50% 50%;
    -ms-animation: item-to-work 0.5s ease 1 forwards normal;
    -o-transition:
        display 0s linear,
        visibility 0s linear,
        opacity 0.5s ease;
    -o-transform-origin: 50% 50%;
    -o-animation: item-to-work 0.5s ease 1 forwards normal;
    transition:
        display 0s linear,
        visibility 0s linear,
        opacity 0.5s ease;
    transform-origin: 50% 50%;
    animation: item-to-work 0.5s ease 1 forwards normal;
}

@-webkit-keyframes item-to-work {
    0% {-webkit-transform: scale(1.1);}
    100%  {-webkit-transform: scale(1);}
}
@-moz-keyframes item-to-work {
    0% {-moz-transform: scale(1.1);}
    100%  {-moz-transform: scale(1);}
}
@-ms-keyframes item-to-work {
    0% {-ms-transform: scale(1.1);}
    100%  {-ms-transform: scale(1);}
}
@-o-keyframes item-to-work {
    0% {-o-transform: scale(1.1);}
    100%  {-o-transform: scale(1);}
}
@keyframes item-to-work {
    0% {transform: scale(1.1);}
    100%  {transform: scale(1);}
}


@-webkit-keyframes single-to-work {
    0% {-webkit-transform: scale(0.9); left: -100;}
    100%  {-webkit-transform: scale(1); left: 0;}
}
@-moz-keyframes single-to-work {
    0% {-moz-transform: scale(0.9); left: -100;}
    100%  {-moz-transform: scale(1); left: 0;}
}
@-ms-keyframes single-to-work {
    0% {-ms-transform: scale(0.9); left: -100;}
    100%  {-ms-transform: scale(1); left: 0;}
}
@-o-keyframes single-to-work {
    0% {-o-transform: scale(0.9); left: -100;}
    100%  {-o-transform: scale(1); left: 0;}
}
@keyframes single-to-work {
    0% {transform: scale(0.9); left: -100;}
    100%  {transform: scale(1); left: 0;}
}


.item.active {
    -webkit-animation : item-active 2s 1;
    -moz-animation : item-active 2s 1;
    -ms-animation : item-active 2s 1;
    -o-animation : item-active 2s 1;
    animation : item-active 2s 1;

    z-index: 10;
}
    @-webkit-keyframes item-active {
        50% {
            width: 80%;
            height: 80%;
        }
        100% {
            width: 200%;
            height: 200%;
        }
    }

.overlayContainer {
    position: absolute;
    left: 0;
    opacity: 1;
    visibility: visible;

    -webkit-transform-origin: 50% 50%;
    -webkit-animation: single-to-work 0.5s ease 1 forwards normal;
    -moz-transform-origin: 50% 50%;
    -moz-animation: single-to-work 0.5s ease 1 forwards normal;
    -ms-transform-origin: 50% 50%;
    -ms-animation: single-to-work 0.5s ease 1 forwards normal;
    -o-transform-origin: 50% 50%;
    -o-animation: single-to-work 0.5s ease 1 forwards normal;
    transform-origin: 50% 50%;
    animation: single-to-work 0.5s ease 1 forwards normal;
}
.overlayContainer .hidden {
    opacity: 0;
    visibility: hidden;


}

.overlayBg{
    opacity: 1;
    visibility: visible;

    -webkit-transition:
        display 0s linear,
        visibility 0s linear,
        opacity 1s ease;
    -webkit-transform-origin: 50% 50%;
    -moz-transition:
        display 0s linear,
        visibility 0s linear,
        opacity 1s ease;
    -moz-transform-origin: 50% 50%;
    -ms-transition:
        display 0s linear,
        visibility 0s linear,
        opacity 1s ease;
    -ms-transform-origin: 50% 50%;
    -o-transition:
        display 0s linear,
        visibility 0s linear,
        opacity 1s ease;
    -o-transform-origin: 50% 50%;
    transition:
        display 0s linear,
        visibility 0s linear,
        opacity 1s ease;
    transform-origin: 50% 50%;
}
.overlayBg .hidden {
    opacity: 0;
    visibility: hidden;
}


.overlayContainer .single {
    margin: 20px 40px;
    text-align: center;
}
    .overlayContainer .single .description {
        display: none;
    }

    .overlayContainer .single .main {
        display: inline-block;
        vertical-align: middle;
    }

    .overlayContainer .single .prev,
    .overlayContainer .single .next {
        display: inline;
        vertical-align: middle;
    }

    .overlayContainer .single .prev {
        margin: 0 30px 0 0;
    }
    .overlayContainer .single .next {
        margin: 0 0 0 30px;
    }

    .overlayContainer .single .prev a ,
    .overlayContainer .single .next a {
        display: inline-block;
        vertical-align: middle;
        padding: 10px;
        border: solid 2px #669dfe;
        max-width: 6%;
        max-height: 20%;
        width: auto;
        height: auto;
    }

    .overlayContainer .single .prev img ,
    .overlayContainer .single .next img {
        width: 100%;
    }


    .overlayContainer .single .main {
        padding: 20px;
        border: solid 6px #669dfe;
    }


.overlayContainer .close {
    text-align: center;
    display: block;
}
    .overlayContainer .close a {
        color: #000;
        text-decoration: none;
        font-family: Lato, Arial, sans-serif;
        font-size: 44px;
        font-weight: 300;
        display: inline-block;
        vertical-align: middle;
        padding: 0px 8px;
    }

.overlayContainer{
    z-index: 12;
    position: absolute;
    top: 10%;
    left: 0;
    width: 100%;
    display: inline-block;
    vertical-align: top;
    overflow: hidden;
}
    .overlayContainer.hidden {
        opacity: 0;
        visibility: hidden;
    }

    .overlayContainer .image {
        max-width: 60%;
        max-height: 60%;
        width: auto;
        height: auto;
    }

.overlayBg {
    z-index: 10;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #fff;
    opacity: 0.9;
}



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

@media(max-width:360px){
    #container #home h3 { font-size: 1.66em; }
    #conainer form.search.at-home { width: 80%; }
    form.search.at-home { font-size: 1em; }
    form.search.at-home button { background-position: 0 2px; width: 28px; }
    .overlayContainer .single .nav.prev, .overlayContainer .single .nav.next { display: block; clear: both; }
    .overlayContainer .single .nav.prev { margin: 0 0 10px 0; }
    .overlayContainer .single .nav.next { margin: 10px 0 0 0; }
    #container.work #header .logo { display: none; }
    #container.work .search.at-work input { margin-left: 0; width: 100px; }
    #container #panel .column { width: 100% }
    #container #panel .column:nth-child(1) { display: inline-block; }
    #container #panel .column:nth-child(2) { display: none; }
    #container #panel .column:nth-child(3) { display: none; }
    #container #panel .column:nth-child(4) { display: none; }
    #container #panel .column:nth-child(5) { display: none; }

}
@media(min-width:361px){
    #container #home h3 { font-size: 2em; }
    form.search.at-home { font-size: 1.25em; }
    form.search.at-home button { background-position: 1px 3px; width: 28px; }
    #container.work #header .logo { display: none; }
    #container.work .search.at-work { margin-left: 0; }
    #container #panel .column { width: 50% }
    #container #panel .column:nth-child(1) { display: inline-block; }
    #container #panel .column:nth-child(2) { display: inline-block; }
    #container #panel .column:nth-child(3) { display: none; }
    #container #panel .column:nth-child(4) { display: none; }
    #container #panel .column:nth-child(5) { display: none; }
}
@media(min-width:768px){
    #container #home h3 { font-size: 4em; }
    form.search.at-home { font-size: 2em; }
    form.search.at-home button { width: 28px; background-position: -28px 50%; width: 46px; }
    #container.work #header .logo { display: inline-block; }
    #container.work .search.at-work { margin-left: 40px; }
    #container #panel .column { width: 33.333334% }
    #container #panel .column:nth-child(1) { display: inline-block; }
    #container #panel .column:nth-child(2) { display: inline-block; }
    #container #panel .column:nth-child(3) { display: inline-block; }
    #container #panel .column:nth-child(4) { display: none; }
    #container #panel .column:nth-child(5) { display: none; }
}
@media(min-width:992px){
    #container #home h3 { font-size: 5em; }
    form.search.at-home { font-size: 3em; }
    #container #panel .column { width: 25% }
    #container #panel .column:nth-child(1) { display: inline-block; }
    #container #panel .column:nth-child(2) { display: inline-block; }
    #container #panel .column:nth-child(3) { display: inline-block; }
    #container #panel .column:nth-child(4) { display: inline-block; }
    #container #panel .column:nth-child(5) { display: none; }
}
@media(min-width:1200px){
    #container #panel .column { width: 20% }
    #container #panel .column:nth-child(1) { display: inline-block; }
    #container #panel .column:nth-child(2) { display: inline-block; }
    #container #panel .column:nth-child(3) { display: inline-block; }
    #container #panel .column:nth-child(4) { display: inline-block; }
    #container #panel .column:nth-child(5) { display: inline-block; }
}

