html, body {
    background-color:rgb(40, 40, 40);
}
.container {
    overflow:hidden;
}
.all_photos_container {
    display:block;
    background-color:rgb(40, 40, 40);
    overflow:hidden;
    /*margin:auto;*/
    padding:0 0 0 3px;
    float:left;
    margin-bottom:1em;
    max-width:1204px !important;
}
.filter_container {
    background-color: rgb(40,40,40);
    float:left;
    width:250px;
    padding:0 0 3px 0;
    margin-right:4px;
    color: #eee;
}
#search-photo {
    width:100%;
    background-color: rgb(30, 30, 30);
    color: #fff;
}

input:focus {
    outline: none;
    box-shadow: none;
    -webkit-box-shadow: none;
}

.search-form-input-block {
    margin:5px 3px;
}
.search-form-input-block .form-group{
    width:100%;
}
.search-data-panel {
    margin:0 0 3px -3px;
    font-size:0.8em;
    padding:8px;
    color:#fff;
    height:32px;
}
.search-form-input-group {
    border-radius:0;
    overflow:hidden;

    font-size:12px;
    height:32px;
}
.search-form-input-group .search-form-input-group-label {
    display:inline-block;
    height:32px;
    padding:0 3px;
    line-height:30px;
    min-width:80px;
}
.search-form-input-group select {
    width:100%;
    border-radius: 0;
}

.search-form-input-group input,
.search-form-input-group select {
    display:inline-block;
    height:28px;
    line-height:28px;
    max-width:155px;
    background-color: rgb(30,30,30);
    color:#eee;
    border-radius: 0;
}
.search-form-input-group select[name="day"] {
    width:16%;
    border-radius: 0;

}
.search-form-input-group select[name="month"] {
    width:16%;
    border-radius: 0;

}
.search-form-input-group select[name="year"] {
    width:30%;
    border-radius: 0;

}
label {
    font-weight:100;
    font-size:0.75em;
}
.filter-checkbox-block input{
   margin:0;
   padding:0; 
}
.filter-checkbox-block label{
    margin:0;
    padding:0;
}
.pagination-container {
    float:none;
    clear:both;
    margin-top:8px;
    margin-left:-3px;
    padding:4px;
    text-align:center;
}
.pagination-container a {
    display:inline-block;
    height:30px;
    line-height:30px;
    width:30px;
    text-align:center;
    background-color:#111;
    color:#ddd;
    margin:2px;
    transition: 0.5s;

}
.pagination-container a:hover {
    background-color:#444;
    color:#fff;
    text-decoration: none;
    transition: 0.5s;
}
.pagination-container a.active{
    background-color:#ccc;
    color:#000;
}
.pagination-container a.active:hover{
    background-color:#eee;
    color:#111;
}
.photo-tile {
    display:block;
    width:245px;
    height:195px;
    float:left;
    margin:2px;
    background-position:center center;
    background-size:cover;
    overflow:hidden;
    position:relative;
}
.photo-tile a.img_link{
    display:block;
    width:100%;
    height:100%;
}

.photo-tile img{
    position:absolute;
    top:0;
    left:0;
    right:0;
    bottom:0;
    margin:auto;
    min-height:175px;
    min-width:198px;
    -webkit-filter: saturate(120%) contrast(110%);
    -moz-filter: saturate(120%) contrast(110%);
    filter: saturate(120%) contrast(110%);
}
.photo-tile .photo-data strong{
    color:#fff;
}
.photo-tile .photo-data{
    position:absolute;
    color:#ddd;
    width:100%;
    text-shadow:0 0 3px rgba(0, 0, 0, 1);
    bottom:0;
    left:0;
    height:12%;
    font-size:0.7em;
    padding:3px;
    background: -moz-linear-gradient(top, rgba(0,0,0,0.05) 0%, rgba(0,0,0,0.12) 6%, rgba(0,0,0,0.81) 95%, rgba(0,0,0,0.97) 100%);
    background: -webkit-linear-gradient(top, rgba(0,0,0,0.05) 0%,rgba(0,0,0,0.12) 6%,rgba(0,0,0,0.81) 95%,rgba(0,0,0,0.97) 100%);
    background: linear-gradient(to bottom, rgba(0,0,0,0.05) 0%,rgba(0,0,0,0.12) 6%,rgba(0,0,0,0.81) 95%,rgba(0,0,0,0.97) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00000000', endColorstr='#f7000000',GradientType=0 );
    transition:0.4s;
}

.photo-data .photo_information {
    display:none;
    height:none;

}

.photo-name {
    margin:0;
    font-weight: 500;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
    height:1.5em;
    width:100%;
    display:block;
    text-shadow:0 0 0.5px rgba(0, 0, 0, 1), 0 0 0.7px rgba(0, 0, 0, 1), 0 0 1px rgba(0, 0, 0, 1), 0 0 5px  rgba(0, 0, 0, 1);
}
.photo-tile:hover .photo-name {
    overflow:visible;
    white-space:normal;
}

.photo-tile:hover .photo_information {
    display:block;
    height:auto;
}
.photo-tile:hover .photo-data{
    height:51%;
    transition:0.2s;
}
figcaption a:hover{
    color:#4396DE;
}
.span_label {
    color:#eee;
    font-weight:bold;
}
span.date, span.period {
    color:#dfdfdf;
}
.photo_information{
/*    border-top:1px solid rgba(255,255,255,0.5);*/

    font-size:0.95em;
    position:absolute;
    bottom:0;
}

.transparent{
    position:fixed;
    display:none;
    background-color:#000;
    background-color:rgba(0, 0, 0, 0.8);
    top:0;
    left:0;
    width:100%;
    height:100%;
}

.photo-info-fields span{
    font-weight:100;
    color:#333;
    
}
.photo-info-fields{
    background-color:#fff;
    height:100px;
    position:absolute;
    bottom:0;
    width:100%;
    font-size:0.9em;
    box-shadow:0px 0 4px 0px rgba(0,0,0,0.9);
}
#image-close{
    float:right;
    font-size:1.5em;
    margin:4px 4px;
    cursor:pointer;
    position:relative;
    z-index:1000;
}
#image-close:hover{
    color:red;
}
.photo-container{
    position:relative;
    height:427px;
    margin:0;
    padding:0;
    width:100%;
    height:calc(100% - 100px);
}
.img_wrapper {
    height:100%;
    width:100%;
    text-align:center;
}
#bigimage{
   
    max-height:100%;
    max-width:100%;
}
.loader{
    text-align:center;
    top:40%;
    position:absolute;
    width:100%;
}
.loader img{
    display:inline-block;
    margin:auto;
    float:none;
}

.buttons{
    width:120px;
    height:100%;
    background-color:rgba(200,200,200,0.3);
    cursor:pointer;
    margin:0;
    font-size:2em;
    opacity:0.3;
    position:relative;
    text-align:center;
}
.button-nav {
    position:absolute;
    top:0;
    bottom:0;
    left:0;
    right:0;
    display:inline-block;
    color:#ddd;
    margin:auto;
    height:40px;
    width:40px;
}

.buttons:hover{
    /*background-color:rgba(200,200,200,0.7);*/
    color:#fff;
    opacity:1;
}

.accordion-button {
    cursor: pointer;
    position: relative;
}
.accordion-button::after {
    display: block;
    border-width: 8px;
    border-color: #fff transparent transparent transparent;
    border-style: solid;
    width:0;
    height:0;
    top:0;
    right:0;
    position: absolute;
    content: "";
    transition: 0.5s;
}
.accordion-button.collapsed::after {
    display: block;
    border-width:7px;
    border-color:  transparent #fff transparent transparent;
    border-style: solid;
    width:0;
    height:0;
    top:0;
    position: absolute;
    content: "";
    transition: 0.5s;
}
#findPhotos {
    background-color: #ddd;
    color:#222;
    transition: 0.5s;
}
#findPhotos:active {
    outline: none;
}
#findPhotos:hover {
    background-color: #fff;
    color:#000;
    transition: 0.5s;
}
.prev{
    background: -moz-linear-gradient(left, rgba(0,0,0,0.71) 0%, rgba(0,0,0,0) 100%);
    background: -webkit-linear-gradient(left, rgba(0,0,0,0.71) 0%,rgba(0,0,0,0) 100%);
    background: linear-gradient(to right, rgba(0,0,0,0.71) 0%,rgba(0,0,0,0) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#b5000000', endColorstr='#00000000',GradientType=1 );
    position:absolute;
    left:0;
    top:0;
    z-index:1000;
}

.next{
    background: -moz-linear-gradient(left,  rgba(0,0,0,0) 0%, rgba(0,0,0,0.71) 100%);
    background: -webkit-linear-gradient(left,  rgba(0,0,0,0) 0%,rgba(0,0,0,0.71) 100%);
    background: linear-gradient(to right,  rgba(0,0,0,0) 0%,rgba(0,0,0,0.71) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00000000', endColorstr='#b5000000',GradientType=1 );
    position:absolute;
    right:0;
    top:0;
    z-index:1000;
}

.text-white {
    color:#fff !important;
}
.bg-white {
	background-color:#fff;
}

.bg-gray {
	background-color:#6f6f6f;
}

#more {
    background-color:#efefef;
    border:1px solid #ddd;
}
.gallery-header {
    height:3em;
    position:relative;
}
.gallery-header h1{
    padding:0;
    margin:0;
    color:#eee;
    font-size:1.5em;
    line-height:2em;
    font-family: 'Book Antiqua', Times, serif !important
}
.gallery-header .logo-container {
    height:3em;
    position:relative;

}
.gallery-header .logo-container img {
    height:100%;
    width:auto;
    position:absolute;
    top:0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
}
.mobile-gallery-header{
    display:none;
}
.mobile-gallery-header-placeholder{
    display: none;
}
.photo-info-fields span.description{
    color:#999 !important;
	font-size:0.9em;
	max-height:47px;
	overflow:auto;
	display:block;
}
.img-description {
    color:#eee;
}
.img-description input.bbcode {
    background-color: #222;
    color:#eee;
}
.img-description input {
    outline: none !important;
}
.img-description a{
    color:#ddd;
}
.img-description a.label, a.btn{
    color:#eee;
    border-radius: 0;
}
.img-description a:hover{
    color:#fff;
}
footer {
    font-size:0.9em;
    padding:0.1em;
}
button, input, select {
    border-radius: 0 !important;
}

.search-form-mobile-block {
    margin-top:0.5%;
}

@media all and (min-width: 200px) and (max-width: 800px) {
    .all_photos_container {
        width:100%;
        margin:0;
        padding:0;
        float:none;
    }
	
	.filter_container.floated {
		display:block;
		position: fixed;
		z-index: 1000;
		box-shadow: 2px 2px 100px 10px #000;
		height:100%;
		overflow:auto;
		padding-bottom:2em;
        top:30px;
	}
    
    .container {
        margin:0 1% 0 1%;
        padding:0;
    }
    
    .photo-container{
        height:calc(100% - 70px);
    }

    #image-close {
        width:30px;
        height:30px;
        font-size:30px;
    }
    .mobile-gallery-header{
        display:block;
        position: fixed;
        width: 100%;
        z-index: 1000;
    }
    .mobile-gallery-header-placeholder{
        display: block;
        height: 22px;
    }
    .filter_container.hidden {
		display:none;
	}
    .gallery-header, .photos-links-block, .photos-links-block *  {
        display:none !important;
    }
    .photo-info-fields{
        font-size:0.75em;
        height:66px
    }
    .photo-info-fields h4{
        font-size: 0.95em;
        margin-bottom:0;
        font-weight:bold;
    }
    .photo-tile {
        width:100% !important;
        margin:0;
        padding:0;
		min-height:240px !important;
        /*height:175px;*/
        
    }
    .photo-tile a.img_link {
        width:100%;
        height:auto;
        
    }
    .photo-tile img {
        width:100%;
        height:auto;
    }
    #search-photo-mobile {
        width:120px;
        min-width:120px;
    }
}

@media all and (min-width: 621px) and (max-width: 640px) {
    .all_photos_container {
        width:604px;
        margin:auto;
        float:none;

    }
    .photo-container{
        height:calc(100% - 70px);
    }

    #image-close {
        width:30px;
        height:30px;
        font-size:30px;
    }
    .mobile-gallery-header{
        display:block;
    }
    .filter_container.hidden {
		display:none
	}
    .gallery-header, .photos-links-block, .photos-links-block *  {
        display:none !important;
    }
    .photo-info-fields{
        font-size:0.75em;
        height:66px
    }
    .photo-info-fields h4{
        font-size: 0.95em;
        margin-bottom:0;
        font-weight:bold;
    }
}

@media screen and (min-width: 641px) and (max-width: 658px) {
    .all_photos_container {
        width:100%;
        margin:0;
        padding:0;
        float:none;
    }
    .photo-tile {
        width:100% !important;
        margin:0;
        padding:0;
		min-height:240px !important;
        /*height:175px;*/
    }
    .filter_container.floated {
		display:block;
		position: fixed;
		z-index: 1000;
		box-shadow: 2px 2px 100px 10px #000;
		height:100%;
		overflow:auto;
		padding-bottom:2em;
        top:30px;
	}
}

@media screen and (min-width: 659px) and (max-width: 769px) {
    .all_photos_container {
        width:510px;
        margin:auto;
        float:none;
    }
    .filter_container{
        width:230px;
    }
    .filter_container select {
        max-width:140px;
    }
    .search-form-input-group select[name="year"] {
        width:27%;
    }
}
@media screen and (min-width: 770px) and (max-width: 899px) {
    .all_photos_container {
        width:510px;
    }
    .container {
        width:770px;
    }

}
@media screen and (min-width: 900px) and (max-width: 1097px) {
    .all_photos_container {
        width:510px;
    }
    .container {
        width:770px;
    }

}

@media screen and (min-width: 1098px) and (max-width: 1299px) {
    .all_photos_container {
        width:757px;
    }
    .container {
        width:1017px;
    }
    
}
@media screen and (min-width: 1300px) and (max-width: 1366px) {
    .all_photos_container {
        width:1004px;
    }
    .container {
        width:1260px;
    }
}
@media screen and (min-width: 1367px) and (max-width: 1460px) {
    .all_photos_container {
        width:1004px;
    }
    .container {
        width:1260px;
    }

    
}
@media screen and (min-width: 1461px) and (max-width: 1600px) {
    .all_photos_container {
        width:1004px;
    }
    .container {
        width:1260px;
    }

    
}

@media screen and (min-width: 1601px) and (max-width: 1920px) {
    .all_photos_container {
        width:1004px;   
    }
    .container {
        width:1260px;
    }

    
}

a.navigate{
        position:absolute;
        top:50%;
        color:#fff;
        height:40px;
        width:40px;
        background-color:rgba(0,0,0,0.1);
        border-radius:50%;
        line-height:40px;
        text-align:center;
        font-size:16px;
        transition: height 0.3s, width 0.3s, line-height 0.3s, font-size 0.3s, top 0.3s;
        -webkit-transition: height 0.3s, width 0.3s, line-height 0.3s, font-size 0.3s, top 0.3s;
        -moz-transition: height 0.3s, width 0.3s, line-height 0.3s, font-size 0.3s, top 0.3s;
        -webkit-font-smoothing: antialiased;
        -webkit-text-shadow: rgba(0,0,0,.01) 0 0 1px;
        text-shadow: rgba(0,0,0,.01) 0 0 1px;


    }
    a.navigate:hover, a.navigate:active{
        background-color:rgba(0,0,0,0.4);
        height:50px;
        width:50px;
        line-height:50px;
        font-size:21px;
        top: calc(50% - 5px);
        transition: height 0.3s, width 0.3s, line-height 0.3s, font-size 0.3s, top 0.3s;
        -webkit-transition: height 0.3s, width 0.3s, line-height 0.3s, font-size 0.3s, top 0.3s;
        -moz-transition: height 0.3s, width 0.3s, line-height 0.3s, font-size 0.3s, top 0.3s;
        -webkit-font-smoothing: antialiased;

    }
    a.navigate.prev-link{
        left:0px;
    }
    a.navigate.next-link{
        right:0px;
    }
    
    @media all and (min-width: 200px) and (max-width: 1097px) {
        .categories-list-block {
            overflow-y:scroll;
            overflow-x:hidden;
        }
        a.navigate{
            height:150px;
            width:150px;
            line-height:150px;
            font-size:40px;
            z-index:10000;
            text-indent:10px;
            background-color:rgba(0,0,0,0.2);
        }
        a.navigate:hover {
            height:180px;
            width:180px;
            line-height:180px;
            font-size:44px;
            z-index:10000;
            background-color:rgba(0,0,0,0.4);
            border-radius:0 50% 50% 0;
        }
        a.navigate.prev-link{
            left:-80px;
            text-align:right;
            border-radius:0 50% 50% 0;            
        }
        a.navigate.prev-link span{
            margin-right:20px;
        }
        a.navigate.prev-link:hover, a.navigate.prev-link:active {
            left:0;
            text-align:center;
        }
        a.navigate.next-link{
            right:-80px;
            text-align:left;
            border-radius:50% 0 0 50%;
        }
        a.navigate.next-link span{
            margin-left:10px;
        }
        a.navigate.next-link:hover, a.navigate.next-link:active{
            right:0;
            text-align:center;
        }

    }