/*! * Luminous v2.3.4 * Copyright 2015-2021, Zebrafish Labs * Licensed under BSD-2 (https://github.com/imgix/luminous/blob/main/LICENSE.md) */ @keyframes lum-fade { 0% { opacity: 0; } 100% { opacity: 1; } } @keyframes lum-fadeZoom { 0% { transform: scale(.5); opacity: 0; } 100% { transform: scale(1); opacity: 1; } } @keyframes lum-loader-rotate { 0% { transform: translate(-50%, -50%) rotate(0); } 50% { transform: translate(-50%, -50%) rotate(-180deg); } 100% { transform: translate(-50%, -50%) rotate(-360deg); } } @keyframes lum-loader-before { 0% { transform: scale(1); } 10% { transform: scale(1.2) translateX(6px); } 25% { transform: scale(1.3) translateX(8px); } 40% { transform: scale(1.2) translateX(6px); } 50% { transform: scale(1); } 60% { transform: scale(.8) translateX(6px); } 75% { transform: scale(.7) translateX(8px); } 90% { transform: scale(.8) translateX(6px); } 100% { transform: scale(1); } } @keyframes lum-loader-after { 0% { transform: scale(1); } 10% { transform: scale(1.2) translateX(-6px); } 25% { transform: scale(1.3) translateX(-8px); } 40% { transform: scale(1.2) translateX(-6px); } 50% { transform: scale(1); } 60% { transform: scale(.8) translateX(-6px); } 75% { transform: scale(.7) translateX(-8px); } 90% { transform: scale(.8) translateX(-6px); } 100% { transform: scale(1); } } .lum-lightbox { background: rgba(0, 0, 0, .6); } .lum-lightbox-inner { top: 2.5%; right: 2.5%; bottom: 2.5%; left: 2.5%; } .lum-lightbox-inner img { position: relative; } .lum-lightbox-inner .lum-lightbox-caption { max-width: 700px; margin: 0 auto; color: #fff; text-align: center; } .lum-loading .lum-lightbox-loader { position: absolute; top: 50%; left: 50%; display: block; width: 66px; height: 20px; transform: translate(-50%, -50%); animation: lum-loader-rotate 1800ms infinite linear; } .lum-lightbox-loader::before, .lum-lightbox-loader::after { position: absolute; top: 50%; display: block; width: 20px; height: 20px; margin-top: -10px; background: rgba(255, 255, 255, .9); border-radius: 20px; content: ""; } .lum-lightbox-loader::before { left: 0; animation: lum-loader-before 1800ms infinite linear; } .lum-lightbox-loader::after { right: 0; animation: lum-loader-after 1800ms infinite linear; animation-delay: -900ms; } .lum-lightbox.lum-opening { animation: lum-fade 180ms ease-out; } .lum-lightbox.lum-opening .lum-lightbox-inner { animation: lum-fadeZoom 180ms ease-out; } .lum-lightbox.lum-closing { animation: lum-fade 300ms ease-in; animation-direction: reverse; } .lum-lightbox.lum-closing .lum-lightbox-inner { animation: lum-fadeZoom 300ms ease-in; animation-direction: reverse; } .lum-img { transition: opacity 120ms ease-out; } .lum-loading .lum-img { opacity: 0; } .lum-gallery-button { position: absolute; top: 50%; width: 60px; height: 100px; max-height: 100%; margin: 0; padding: 0; overflow: hidden; white-space: nowrap; text-indent: 150%; background: transparent; border: 0; outline: 0; transform: translateY(-50%); cursor: pointer; } .lum-close-button { position: absolute; top: 5px; right: 5px; width: 32px; height: 32px; opacity: .3; } .lum-close-button:hover { opacity: 1; } .lum-close-button::before, .lum-close-button::after { position: absolute; left: 15px; width: 2px; height: 33px; background-color: #fff; content: " "; } .lum-close-button::before { transform: rotate(45deg); } .lum-close-button::after { transform: rotate(-45deg); } .lum-previous-button { left: 12px; } .lum-next-button { right: 12px; } .lum-gallery-button::after { position: absolute; top: 50%; display: block; width: 36px; height: 36px; border-top: 4px solid rgba(255, 255, 255, .8); content: ""; } .lum-previous-button::after { left: 12%; border-left: 4px solid rgba(255, 255, 255, .8); border-radius: 3px 0 0 0; box-shadow: -2px 0 rgba(0, 0, 0, .2); transform: translateY(-50%) rotate(-45deg); } .lum-next-button::after { right: 12%; border-right: 4px solid rgba(255, 255, 255, .8); border-radius: 0 3px 0 0; box-shadow: 2px 0 rgba(0, 0, 0, .2); transform: translateY(-50%) rotate(45deg); } /* This media query makes screens less than 460px wide display in a "fullscreen"-esque mode. Users can then scroll around inside the lightbox to see the entire image. */ @media (max-width: 460px) { .lum-lightbox-image-wrapper { display: flex; overflow: auto; -webkit-overflow-scrolling: touch; } .lum-lightbox-caption { position: absolute; bottom: 0; width: 100%; } /* Used to centre the image in the container, respecting overflow: https://stackoverflow.com/a/33455342/515634 */ .lum-lightbox-position-helper { margin: auto; } .lum-lightbox-inner img { max-width: none; max-height: none; } }