html, body { margin: 0; padding: 0; width: 100%; height: 100%; overflow: hidden; background: black; font-family: "Merriweather", serif; } .scene-tooltip { background: black; color: white !important; padding: 4px; max-width: 250px; text-align: center; font-size: 1rem !important; line-height: 1.5; font-family: "Merriweather", serif !important; } /** Legend */ .legend { position: absolute; bottom: 0; left: 0; font-size: 1rem; line-height: 1.25; padding: 1rem; margin: 1rem 2rem; background: rgba(0, 0, 0, 0.5); color: #fff; transition: opacity 0.2s; text-transform: capitalize; font-variant: small-caps; } .legend .category { cursor: pointer; } .legend .category:hover { text-decoration: underline; opacity: 1; } .legend .selected { text-decoration: underline; } .legend .unselected { opacity: 0.8; } .legend .removeSelection { cursor: pointer; opacity: 0.6; margin-bottom: 0.5rem; } .legend .removeSelection:hover { opacity: 0.8; text-decoration: underline; } /** Detail view */ .detail { position: absolute; top: 0; left: 0; width: 100vw; height: 100vh; pointer-events: none; transition: opacity 0.2s; opacity: 0; background: rgba(0, 0, 0, 0.75); color: white; display: flex; flex-direction: row; } .detail.visible { opacity: 1; pointer-events: auto; } .detail > div { height: 100vh; width: 50vw; } .detail .content > div { min-height: 100%; padding: 3rem 5rem 6rem 5rem; background: rgba(0, 0, 0, 0.5); } .detail .media { padding: 3rem 5rem; } .detail .content { overflow-x: hidden; overflow-y: scroll; } .detail .content::-webkit-scrollbar { width: 0; opacity: 0; } .detail .content > div { max-width: 600px; } .detail .title { font-size: 1.25rem; line-height: 1.5; margin-bottom: 2rem; text-transform: capitalize; font-variant: small-caps; } .detail .title .index { margin-bottom: 0.75rem; } .detail .citation { font-size: 1rem; line-height: 1.5; margin-bottom: 2rem; } .detail .description { font-size: 1rem; line-height: 1.75; } .detail .description p { text-indent: 2rem; } .detail .description p:first-of-type { text-indent: 0; } /** Image galleries */ .gallery { display: flex; flex-direction: column; justify-content: space-between; align-items: center; } .gallery .image img { cursor: pointer; max-height: calc(100vh - 12rem); max-width: 100%; transition: opacity 100ms; } .buttons { width: 100%; text-align: right; } .buttons.close { margin-bottom: 1rem; } .buttons img { cursor: pointer; height: 1.5rem; } .gallery .buttons { margin-top: 1rem; } /** Videos */ .video { display: flex; height: calc(100vh - 12rem); width: 100%; } .video > div, .video iframe { width: 100%; height: 100%; }