/*
    extensions.css - v6.0 - 11.20.19

    This file includes the rules to support:

    (1) Image Hover Effects
        source - https://github.com/ashleydw/lightbox/releases/tag/v4.0.2
    (2) Lightbox 
        source - https://github.com/ashleydw/lightbox

*/


/* ========================================================= */

/* --------------------------------------------------------- */
/* 

    (1) Image Hover Effects  
        source:  source - https://github.com/ashleydw/lightbox/releases/tag/v4.0.2 
*/


/* --------------------------------------------------------- */
/* hover item - general */

.hover-item {
    position: relative;
    -webkit-transition: all 0.35s ease-in-out;
    -moz-transition: all 0.35s ease-in-out;
    transition: all 0.35s ease-in-out;
}

.hover-item,
.hover-item * {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

.hover-item a {
    color: #333;
}

.hover-item a:hover {
    text-decoration: none;
}

.hover-item img {
    width: 100%;
    height: 100%;
}


/* --------------------------------------------------------- */


/* hover item - for square components */

.hover-item {
    position: relative;
    width: 100%;
    height: 100%;
    box-shadow: 0 1px 2px rgba(0, 0, 0, .075);
}

.hover-item .hover-info {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    text-align: center;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}


/* --------------------------------------------------------- */


/* top_and_bottom effect */

.hover-item.top_and_bottom {
    overflow: hidden;
}

.hover-item.top_and_bottom .hover-img {
    -webkit-transition: all 0.35s ease-in-out;
    -moz-transition: all 0.35s ease-in-out;
    transition: all 0.35s ease-in-out;
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -ms-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1);
}

.hover-item.top_and_bottom .hover-info {
    background: #333333;
    background: rgba(0, 0, 0, 0.6);
    visibility: hidden;
    opacity: 0;
    -webkit-transition: all 0.35s ease-in-out;
    -moz-transition: all 0.35s ease-in-out;
    transition: all 0.35s ease-in-out;
}

.hover-item.top_and_bottom .hover-info h3 {
    text-transform: uppercase;
    color: #fff;
    text-align: center;
    font-size: 17px;
    padding: 10px;
    background: #111111;
    margin: 30px 0 0 0;
    -webkit-transition: all 0.35s ease-in-out;
    -moz-transition: all 0.35s ease-in-out;
    transition: all 0.35s ease-in-out;
}

.hover-item.top_and_bottom .hover-info p {
    font-style: italic;
    font-size: 12px;
    position: relative;
    color: #bbb;
    padding: 20px 20px 20px;
    text-align: center;
    -webkit-transition: all 0.35s 0.1s linear;
    -moz-transition: all 0.35s 0.1s linear;
    transition: all 0.35s 0.1s linear;
}

.hover-item.top_and_bottom a:hover .hover-img {
    -webkit-transform: scale(1.2);
    -moz-transform: scale(1.2);
    -ms-transform: scale(1.2);
    -o-transform: scale(1.2);
    transform: scale(1.2);
}

.hover-item.top_and_bottom a:hover .hover-info {
    visibility: visible;
    opacity: 1;
}

.hover-item.top_and_bottom .hover-info h3 {
    -webkit-transform: translateY(-100%);
    -moz-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    -o-transform: translateY(-100%);
    transform: translateY(-100%);
}

.hover-item.top_and_bottom .hover-info p {
    -webkit-transform: translateY(100%);
    -moz-transform: translateY(100%);
    -ms-transform: translateY(100%);
    -o-transform: translateY(100%);
    transform: translateY(100%);
}

.hover-item.top_and_bottom a:hover .hover-info h3,
.hover-item.top_and_bottom a:hover .hover-info p {
    -webkit-transform: translateY(0);
    -moz-transform: translateY(0);
    -ms-transform: translateY(0);
    -o-transform: translateY(0);
    transform: translateY(0);
}


/* --------------------------------------------------------- */


/* ih-item square effect8 scale_up */

.hover-item.scale_up {
    overflow: hidden;
}

.hover-item.scale_up .hover-img {
    opacity: 1;
    -webkit-transition: all 0.35s ease-in-out;
    -moz-transition: all 0.35s ease-in-out;
    transition: all 0.35s ease-in-out;
}

.hover-item.scale_up .hover-info {
    background: #333333;
    visibility: hidden;
    opacity: 0;
    -webkit-transition: all 0.35s ease-in-out;
    -moz-transition: all 0.35s ease-in-out;
    transition: all 0.35s ease-in-out;
}

.hover-item.scale_up .hover-info h3 {
    text-transform: uppercase;
    color: #fff;
    text-align: center;
    font-size: 17px;
    padding: 10px;
    background: #111111;
    margin: 30px 0 0 0;
    -webkit-transition: all 0.35s 0.1s ease-in-out;
    -moz-transition: all 0.35s 0.1s ease-in-out;
    transition: all 0.35s 0.1s ease-in-out;
}

.hover-item.scale_up .hover-info p {
    font-style: italic;
    font-size: 12px;
    position: relative;
    color: #bbb;
    padding: 20px 20px 20px;
    text-align: center;
    -webkit-transition: all 0.35s 0.15s linear;
    -moz-transition: all 0.35s 0.15s linear;
    transition: all 0.35s 0.15s linear;
}

.hover-item.scale_up a:hover .hover-img {
    opacity: 0;
}

.hover-item.scale_up a:hover .hover-info {
    visibility: visible;
    opacity: 1;
}

.hover-item.scale_up .hover-img {
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -ms-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1);
}

.hover-item.scale_up .hover-info {
    -webkit-transform: scale(0);
    -moz-transform: scale(0);
    -ms-transform: scale(0);
    -o-transform: scale(0);
    transform: scale(0);
}

.hover-item.scale_up .hover-info h3,
.hover-item.scale_up .hover-info p {
    -webkit-transform: scale(0);
    -moz-transform: scale(0);
    -ms-transform: scale(0);
    -o-transform: scale(0);
    transform: scale(0);
}

.hover-item.scale_up a:hover .hover-img {
    -webkit-transform: scale(5);
    -moz-transform: scale(5);
    -ms-transform: scale(5);
    -o-transform: scale(5);
    transform: scale(5);
}

.hover-item.scale_up a:hover .hover-info {
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -ms-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1);
}

.hover-item.scale_up a:hover .hover-info h3,
.hover-item.scale_up a:hover .hover-info p {
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -ms-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1);
}


/* --------------------------------------------------------- */


/* ih-item square effect13 bottom_to_top */

.hover-item.bottom_to_top {
    overflow: hidden;
}

.hover-item.bottom_to_top .hover-img {
    -webkit-transition: all 0.35s ease-in-out;
    -moz-transition: all 0.35s ease-in-out;
    transition: all 0.35s ease-in-out;
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -ms-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1);
}

.hover-item.bottom_to_top .hover-info {
    background: #333333;
    background: rgba(0, 0, 0, 0.6);
    visibility: hidden;
    opacity: 0;
    pointer-events: none;
    -webkit-transition: all 0.35s ease-in-out;
    -moz-transition: all 0.35s ease-in-out;
    transition: all 0.35s ease-in-out;
}

.hover-item.bottom_to_top .hover-info h3 {
    text-transform: uppercase;
    color: #fff;
    text-align: center;
    font-size: 17px;
    padding: 10px;
    background: #111111;
    margin: 30px 0 0 0;
}

.hover-item.bottom_to_top .hover-info p {
    font-style: italic;
    font-size: 12px;
    position: relative;
    color: #bbb;
    padding: 20px 20px 20px;
    text-align: center;
}

.hover-item.bottom_to_top a:hover .hover-img {
    -webkit-transform: scale(1.2);
    -moz-transform: scale(1.2);
    -ms-transform: scale(1.2);
    -o-transform: scale(1.2);
    transform: scale(1.2);
}

.hover-item.bottom_to_top a:hover .hover-info {
    visibility: visible;
    opacity: 1;
}

.hover-item.bottom_to_top .hover-info {
    -webkit-transform: translateY(100%);
    -moz-transform: translateY(100%);
    -ms-transform: translateY(100%);
    -o-transform: translateY(100%);
    transform: translateY(100%);
}

.hover-item.bottom_to_top a:hover .hover-info {
    -webkit-transform: translateY(0);
    -moz-transform: translateY(0);
    -ms-transform: translateY(0);
    -o-transform: translateY(0);
    transform: translateY(0);
}


/* ========================================================= */

/* --------------------------------------------------------- */
/*
    (2) Lightbox 
        https://github.com/ashleydw/lightbox
        License: https://github.com/ashleydw/lightbox/blob/master/LICENSE
*/

.ekko-lightbox {
    display: -ms-flexbox!important;
    display: flex!important;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding-right: 0!important;
    padding-top: 4em !important; /* hack to lower the modal for fixed-nav */
}

.ekko-lightbox-container {
    position: relative
}

.ekko-lightbox-container>div.ekko-lightbox-item {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    width: 100%
}

.ekko-lightbox iframe {
    width: 100%;
    height: 100%
}

.ekko-lightbox-nav-overlay {
    z-index: 1;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: -ms-flexbox;
    display: flex
}

.ekko-lightbox-nav-overlay a {
    -ms-flex: 1;
    flex: 1;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    opacity: 0;
    transition: opacity .5s;
    color: #fff;
    font-size: 30px;
    z-index: 1
}

.ekko-lightbox-nav-overlay a>* {
    -ms-flex-positive: 1;
    flex-grow: 1
}

.ekko-lightbox-nav-overlay a>:focus {
    outline: none
}

.ekko-lightbox-nav-overlay a span {
    padding: 0 30px
}

.ekko-lightbox-nav-overlay a:last-child span {
    text-align: right
}

.ekko-lightbox-nav-overlay a:hover {
    text-decoration: none
}

.ekko-lightbox-nav-overlay a:focus {
    outline: none
}

.ekko-lightbox-nav-overlay a.disabled {
    cursor: default;
    visibility: hidden
}

.ekko-lightbox a:hover {
    opacity: 1;
    text-decoration: none
}

.ekko-lightbox .modal-dialog {
    display: none
}

.ekko-lightbox .modal-footer {
    text-align: left
}

.ekko-lightbox-loader {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    width: 100%;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center
}

.ekko-lightbox-loader>div {
    width: 40px;
    height: 40px;
    position: relative;
    text-align: center
}

.ekko-lightbox-loader>div>div {
    width: 100%;
    height: 100%;
    border-radius: 50%;
    background-color: #fff;
    opacity: .6;
    position: absolute;
    top: 0;
    left: 0;
    animation: a 2s infinite ease-in-out
}

.ekko-lightbox-loader>div>div:last-child {
    animation-delay: -1s
}

.modal-dialog .ekko-lightbox-loader>div>div {
    background-color: #333
}

@keyframes a {
    0%,
    to {
        transform: scale(0);
        -webkit-transform: scale(0)
    }
    50% {
        transform: scale(1);
        -webkit-transform: scale(1)
    }
}

