/* All CSS written by Jeffrey B. Madden 2023. */

#halfstack { margin:0px; }
#amp { display:none; }

#gallery {
   position:relative;
   width:60%;
   height:auto;
   margin:80px auto 100px auto;
   border:30px solid transparent;
   border-radius:30px;
   border-image:url('images/border_14.png') 30 30 stretch;
   -webkit-border-image:url('images/border_14.png') 30 30 stretch;
   -moz-border-image:url('images/border_14.png') 30 30 stretch;
   padding-top:50px;
   padding-bottom:50px;
   background-image:url('images/rnav_bg_pattern_09.png');
   background-repeat:repeat;
   box-shadow:0px 20px 30px 10px #000000;
   overflow:hidden;
}

/* Gallery Grid */

#image_wrap {
   display:flex;
   margin:0px;
   border:0px;
   padding:0px;
   flex-direction:column;
   align-items:flex-start;
}

#image_wrap .row {
   display:flex;
   width:auto;
   height:200px;
   margin:0px;
   border:0px;
   padding:0px;
   flex-direction:row;
   justify-content:flex-start;
}

#image_wrap .row .image_thumb {
   display:flex;
   width:auto;
   height:100%;
   margin:0px;
   border:0px;
   padding:5px;
   box-sizing:border-box;
}

#image_wrap .row img {
   width:auto;
   height:100%;
   margin:0px;
   border:0px;
   align-self:center;
   cursor:pointer;
}

/* Gallery Pop-up */

#gallery_pop {
   display:block;
   position:fixed;
   left:0px;
   top:0px;
   width:100%;
   height:100%;
   margin:0px;
   border:0px;
   padding:0px;
   z-index:12;
}

.filter_shade {
   display:block;
   position:fixed;
   left:0px;
   top:0px;
   width:100%;
   height:100%;
   margin:0px;
   border:0px;
   padding:0px;
   background-color:Black;
   opacity:0.9;
   z-index:0;
}

#gallery_pop_wrap {
   display:block;
   position:relative;
   width:100%;
   height:100%;
   margin:0px;
   border:0px;
   padding:0px;
   z-index:1;
}

#gallery_pop_wrap .left, #gallery_pop_wrap .center, #gallery_pop_wrap .right {
   display:flex;
   position:absolute;
   top:0px;
   width:100%;
   height:100%;
   margin:0px;
   border:0px;
   padding:0px;
   z-index:1;
   justify-content:center;
   align-items:center;
   transition:left 0.3s linear;
   -webkit-transition:left 0.3s linear;
   -moz-transition:left 0.3s linear;
}

#gallery_pop_wrap .left { left:-100%; }
#gallery_pop_wrap .center { left:0px; }
#gallery_pop_wrap .right { left:100%; }

#gallery_pop_wrap .no_trans {
   transition:none;
   -webkit-transition:none;
   -moz-transition:none;
}

#gallery_pop_wrap .image_contain {
   display:flex;
   width:auto;
   height:auto;
   max-width:90vw; 
   max-height:90vh; 
   margin:0px;
   border:0px;
   padding:0px;
   flex-direction:column;
}

#gallery_pop_wrap .gallery_image {
   display:inline-block;
   width:auto;
   height:auto;
   margin:0px;
   border:0px;
   align-self:center;
}

#gallery_pop_wrap .description {
   display:block;
   position:relative;
   width:100%;
   max-width:100%;
   height:auto;
   margin:-100px 0px 0px 0px;
   border:0px;
   padding:0px;
   box-sizing:border-box;
   align-self:center;
}

#gallery_pop_wrap .description .bg {
   display:block;
   position:absolute;
   left:0px;
   top:0px;
   width:100%;
   height:100%;
   margin:0px;
   border:0px;
   padding:0px;
   background-color:Black;
   opacity:0.5;
   z-index:0;
}

#gallery_pop_wrap .description p {
   position:relative;
   width:0px;
   line-height:30px;
   min-width:100%;
   margin:0px;
   border:0px;
   padding:10px;
   font-family:Arial;
   font-size:20px;
   text-align:center;
   box-sizing:border-box;
   z-index:1;
}

#gallery_left_button, #gallery_right_button {
   display:block;
   position:fixed;
   top:50%;
   width:66px;
   height:100px;
   margin:-50px 0px 0px 0px;
   border:0px;
   padding:0px;
   background-repeat:no-repeat;
   background-size:contain;
   cursor:pointer;
   z-index:2;
}

#gallery_left_button {
   left:30px;
   background-image:url('images/arrow_left_02.png');
}

#gallery_right_button {
   right:30px;
   background-image:url('images/arrow_right_01.png');
}

#closer {
   display:block;
   position:fixed;
   right:30px;
   top:30px;
   width:75px;
   height:75px;
   margin:0px;
   border:0px;
   padding:0px;
   background-image:url('images/closer_02.png');
   background-repeat:no-repeat;
   background-size:contain;
   cursor:pointer;
   z-index:3;
}

#downloader {
   display:block;
   position:fixed;
   left:30px;
   top:30px;
   width:75px;
   height:75px;
   margin:0px;
   border:0px;
   padding:0px;
   background-image:url('images/download_icon_01.png');
   background-repeat:no-repeat;
   background-size:contain;
   cursor:pointer;
   z-index:3;
}

#observer_dude {
   display:block;
   height:30px;
   margin:0px;
   border:0px;
   padding:0px;
   background-color:transparent;
   visibility:hidden;
}