html, body { margin: 0; padding: 0; height: 100%; font-family: 'Libre Baskerville', serif; } *, *:before, *:after { box-sizing: border-box; } body { background: #fff; color: #222; } a { color: inherit; } /* background map */ #map { height: 100%; } /* filters */ #filter-picker { position: absolute; z-index: 10; top: 6px; right: 6px; pointer-events: none; } #filter-picker ul { margin: 0; padding: 0; list-style: none; } #filter-picker a { pointer-events: auto; } .year-filter li { display: inline-block; } .year-filter a { display: block; width: 72px; padding: 12px; margin: 3px; background: #222; text-decoration: none; color: #ddd; text-align: center; transition: background .3s ease; } .year-filter a:hover { background: #333; } .year-filter .active a { background: #444; } .category-filter { text-align: right; } .category-filter li { margin: 12px 0; opacity: .5; transition: opacity .3s ease; } .category-filter li.active { opacity: 1; } .category-filter a { text-decoration: none; color: #333; padding: 6px; text-shadow: 0 0 0.1em white, 0 0 0.1em white, 0 0 0.1em white, 0 0 0.2em white, 0 0 0.2em white, 0 0 0.2em white, 0 0 0.3em white, 0 0 0.6em white; position: relative; } .category-filter a:after { content: ''; display: inline-block; width: 9px; height: 9px; border-radius: 50%; border: 2px solid #f00; background: #fff; position: absolute; top: 50%; left: -.5em; margin-top: -4.5px; box-shadow: 0 0 0.1em white, 0 0 0.1em white, 0 0 0.1em white, 0 0 0.2em white, 0 0 0.2em white, 0 0 0.2em white, 0 0 0.3em white, 0 0 0.6em white; } .category-filter .racism a:after { border-color: #F8B195; } .category-filter .antisemitism a:after { border-color: #F67280; } .category-filter .sexism a:after { border-color: #C06C84; } .category-filter .homophobia a:after { border-color: #6C5B7B; } .category-filter .uncategorized a:after { border-color: #355C7D; } .circle-marker { border-radius: 50%; border: 2px solid rgba(0,0,0,.5); background: rgba(0,0,0,.2); } /* overlay text */ #overlay { position: absolute; z-index: 1001; height: 100%; width: 100%; top: 0; left: 0; background: linear-gradient(to bottom left, rgba(255,255,255,.2), white 50%); display: table-cell; vertical-align: center; } #overlay .text { position: absolute; top: 50%; left: 50%; width: 90%; max-width: 1024px; transform: translate(-50%,-50%); } #overlay h1 { margin-top: -1.2em; font-size: 48px; margin-bottom: 0; display: inline-block; font-weight: 500; font-style: italic; } #overlay p { margin: 1em 0 1.2em; padding: 1.6em 0 .6em; line-height: 1.5; font-size: 20px; border-top: 3px solid #c0c0c0; } #overlay a { text-decoration: none; border-bottom: 1px dotted #333; padding-bottom: .2em; } #overlay a:hover { border-bottom-color: transparent; } #overlay .begin { font-size: 24px; border-bottom: none; font-weight: bold; } #overlay .begin:after { content: '›'; padding-left: .1em; }