/*
    Colorbox Core Style
*/
#colorbox, #cboxOverlay, #cboxWrapper{position:absolute; top:0; left:0; z-index:9999; overflow:hidden; -webkit-transform: translate3d(0,0,0);}
#cboxWrapper {max-width:none;}
#cboxOverlay{position:fixed; width:100%; height:100%; background: rgba(0,0,0,0.8);}
#cboxMiddleLeft, #cboxBottomLeft{clear:left;}
#cboxContent{position:relative;}
#cboxLoadedContent{overflow:auto; -webkit-overflow-scrolling: touch;}
#cboxTitle{margin:0;}
#cboxLoadingOverlay, #cboxLoadingGraphic{position:absolute; top:0; left:0; width:100%; height:100%;}
#cboxPrevious, #cboxNext, #cboxClose, #cboxSlideshow{cursor:pointer;}
.cboxPhoto{float:left; margin:auto; border:0; display:block; max-width:none; -ms-interpolation-mode:bicubic;}
.cboxIframe{width:100%; height:100%; display:block; border:0; padding:0; margin:0;}
#colorbox, #cboxContent, #cboxLoadedContent{box-sizing:content-box; -moz-box-sizing:content-box; -webkit-box-sizing:content-box;}

/*
    User Style:
    Change the following styles to modify the appearance of Colorbox.
*/
#cboxOverlay{background: rgba(0,0,0,0.8);}
#colorbox{outline:0;}
#cboxTopLeft{width:20px; height:20px; background:url(../images/controls.png) no-repeat -100px 0;}
#cboxTopCenter{height:20px; background:url(../images/border.png) repeat-x top left;}
#cboxTopRight{width:20px; height:20px; background:url(../images/controls.png) no-repeat -80px 0;}
#cboxBottomLeft{width:20px; height:20px; background:url(../images/controls.png) no-repeat -100px -20px;}
#cboxBottomCenter{height:20px; background:url(../images/border.png) repeat-x bottom left;}
#cboxBottomRight{width:20px; height:20px; background:url(../images/controls.png) no-repeat -80px -20px;}
#cboxMiddleLeft{width:20px; background:url(../images/controls.png) left top repeat-y;}
#cboxMiddleRight{width:20px; background:url(../images/controls.png) right top repeat-y;}
#cboxTopCenter, #cboxBottomCenter, #cboxContent{background:#fff;}
#cboxError{padding:50px; border:1px solid #ccc;}
#cboxLoadedContent{margin-bottom:28px;}
#cboxTitle{position:absolute; bottom:4px; left:0; text-align:center; width:100%; color:#949494;}
#cboxCurrent{position:absolute; bottom:4px; left:58px; color:#949494;}
#cboxLoadingGraphic{background:url(../images/loading.gif) no-repeat center center;}

/* these elements are buttons, and may need to have additional styles reset to avoid unwanted base styles */
#cboxPrevious, #cboxNext, #cboxSlideshow, #cboxClose {border:0; padding:0; margin:0; overflow:visible; width:auto; background:none; }

/* avoid outlines on :active (mouseclick), but preserve outlines on :focus (tabbed navigating) */
#cboxPrevious:active, #cboxNext:active, #cboxSlideshow:active, #cboxClose:active {outline:0;}

#cboxSlideshow{position:absolute; bottom:4px; right:30px; color:#0092ef; cursor:pointer;}
#cboxPrevious{position:absolute; bottom:0; left:0; background:url(../images/controls.png) no-repeat -75px 0; width:25px; height:25px; text-indent:-9999px;}
#cboxPrevious:hover{background-position:-75px -25px;}
#cboxNext{position:absolute; bottom:0; left:27px; background:url(../images/controls.png) no-repeat -50px 0; width:25px; height:25px; text-indent:-9999px;}
#cboxNext:hover{background-position:-50px -25px;}
#cboxClose{position:absolute; bottom:0; right:0; background:url(../images/controls.png) no-repeat -25px 0; width:25px; height:25px; text-indent:-9999px;}
#cboxClose:hover{background-position:-25px -25px;}

/*
  The following fixes a problem where IE7 and IE8 replace a PNG's alpha transparency with a black fill
  when an alpha filter (opacity change) is set on the element or ancestor element. This style is not applied to or needed in IE9.
  See: http://jacklmoore.com/notes/ie-transparency-problems/
*/
.cboxIE #cboxTopLeft,
.cboxIE #cboxTopCenter,
.cboxIE #cboxTopRight,
.cboxIE #cboxBottomLeft,
.cboxIE #cboxBottomCenter,
.cboxIE #cboxBottomRight,
.cboxIE #cboxMiddleLeft,
.cboxIE #cboxMiddleRight {
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#00FFFFFF,endColorstr=#00FFFFFF);
}

/* Modern Colorbox Styling */
#colorbox {
    border-radius: 10px;
    overflow: hidden;
    box-shadow: 0 15px 35px rgba(0,0,0,0.5);
}

#cboxContent {
    border-radius: 10px;
    overflow: hidden;
}

#cboxLoadedContent {
    background: #fff;
    padding: 0;
}

#cboxTitle {
    background: linear-gradient(135deg, #8B4513, #A0522D);
    color: white;
    padding: 10px;
    font-size: 16px;
    font-weight: bold;
    text-align: center;
    bottom: 0;
    left: 0;
}

#cboxCurrent {
    background: rgba(139, 69, 19, 0.9);
    color: white;
    padding: 5px 10px;
    border-radius: 15px;
    font-size: 12px;
    bottom: 10px;
    left: 10px;
}

#cboxPrevious, #cboxNext, #cboxClose {
    background: rgba(139, 69, 19, 0.9);
    border-radius: 50%;
    width: 40px;
    height: 40px;
    margin: 5px;
    transition: all 0.3s ease;
    color: white;
    font-size: 18px;
    line-height: 40px;
    text-align: center;
}

#cboxPrevious:hover, #cboxNext:hover, #cboxClose:hover {
    background: rgba(139, 69, 19, 1);
    transform: scale(1.1);
}

#cboxPrevious:before {
    content: "‹";
}

#cboxNext:before {
    content: "›";
}

#cboxClose:before {
    content: "×";
}

#cboxLoadingGraphic {
    background: url('data:image/gif;base64,R0lGODlhEAAQAPIAAP///wAAAMLCwkJCQgAAAGJiYoKCgpKSkiH/C05FVFNDQVBFMi4wAwEAAAAh/hpDcmVhdGVkIHdpdGggYWpheGxvYWQuaW5mbwAh+QQJCgAAACwAAAAAEAAQAAADMwi63P4wyklrE2MIOggZnAdOmGYJRbExwroUmcG2LmDEwnHQLVsYOd2mBzkYDAdKa+dIAAAh+QQJCgAAACwAAAAAEAAQAAADNAi63P5OjCEgG4QMu7DmikRxQlFUYDEZIGBMRVsaqHwctXXf7WEYB4Ag1xjihkMZsiUkKhIAIfkECQoAAAAsAAAAABAAEAAAAzYIujIjK8pByJDMlFYvBoVjHA70GU7xSUJhmKtwHPAKzLO9HMaoKwJZ7Rf8AYPDDzKpZBqfvwQAIfkECQoAAAAsAAAAABAAEAAAAzMIumIlK8oyhpHsnFZfhYumCYUhDAQxRIdhHBGqRoKw0R8DYlJd8z0fMDgsGo/IpHI5TAAAIfkECQoAAAAsAAAAABAAEAAAAzIIunInK0rnZBTwGPNMgQwmdsNgXGJUlIWEuR5oWUIpz8pAEAMe6TwfwyYsGo/IpFKSAAAh+QQJCgAAACwAAAAAEAAQAAADMwi6IMKQORfjdOe82p4wGccc4CEuQradylesojEMBgsUc2G7sDX3lQGBMLAJibufbSlKAAAh+QQJCgAAACwAAAAAEAAQAAADMgi63P7wjRLuYxbAU5kkDgFmj4nMBWQOaEUA7FkKaYkqN7kqoFJLqm0FkrZScBpqLQwHAB7KCQkCADs=') no-repeat center center;
    width: 32px;
    height: 32px;
    margin: auto;
}

/* Responsive */
@media (max-width: 768px) {
    #colorbox {
        width: 95% !important;
        height: 95% !important;
        top: 2.5% !important;
        left: 2.5% !important;
    }
    
    #cboxPrevious, #cboxNext, #cboxClose {
        width: 35px;
        height: 35px;
        line-height: 35px;
        font-size: 16px;
    }
}