* { margin: 0; box-sizing: border-box; }
:root { font-size: 13px; font-family: 'Source Sans Pro', sans-serif; line-height: 1.618; font-weight: 400; }
body { background-color: #2f3238; color: #f5f5f5; }
a { color: #1abc89; }
a:hover { opacity: .8; }
p { font-size: 1.2rem; color: rgba(245, 245, 245, 0.5); }
.small { font-size: 1rem; margin-top: 1em; }
.container { max-width: 1200px; margin: 0 auto; padding: 4rem 2rem; }
header { text-align: center; padding-bottom: 3rem; }
h1 { font-size: 2.6rem; line-height: 1.2em; padding-bottom: 1rem; font-weight: 600; }
svg { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
circle { -webkit-transform-origin: 50% 50%; transform-origin: 50% 50%; -webkit-transform: scale(0); transform: scale(0); -webkit-transition: -webkit-transform 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); transition: -webkit-transform 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); transition: transform 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); transition: transform 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), -webkit-transform 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); }
text { font-size: 1.1rem; text-transform: uppercase; text-anchor: middle; letter-spacing: 1px; font-weight: 600; }
.svg-text { fill: #545a64; }
.svg-masked-text { fill: white; }
image { -webkit-transform: scale(1.1); transform: scale(1.1); -webkit-transform-origin: 50% 50%; transform-origin: 50% 50%; -webkit-transition: -webkit-transform 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); transition: -webkit-transform 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); transition: transform 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); transition: transform 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), -webkit-transform 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); }
.items { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-flow: row wrap; flex-flow: row wrap; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; }
.item { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; position: relative; overflow: hidden; width: 300px; height: 200px; margin: 5px; cursor: pointer; background-color: #3b3e46; border-radius: 2px; box-shadow: 0 5px 5px rgba(0, 0, 0, 0.02), inset 0 0px 0px 1px rgba(0, 0, 0, 0.07); -webkit-transform: translateZ(0); transform: translateZ(0); }
.item:hover circle, .item:hover image { -webkit-transform: scale(1); transform: scale(1); }
button { width: 12px; height: 12px; border: none; -webkit-appearance: none; -moz-appearance: none; appearance: none; box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.5); border-radius: 1px; }
button.dark { background-color: #2f3238; }
button.light { background-color: #f9f9f9; }
.options { position: absolute; top: 1rem; right: 1rem; }
.options button { margin-left: .5rem; }
.light { background-color: #f9f9f9; color: #1a1a1a; }
.light p { color: rgba(26, 26, 26, 0.5); }
.light .item { background: #f5f5f5; }
.light .svg-text { fill: rgba(0, 0, 0, 0.1); }
