.thumbnail { width: 100%; max-width: 300px; overflow: hidden; position: relative; .image { width: 100%; padding-bottom: 100%; position: relative; background-repeat: no-repeat; background-color: $light_grey; background-position: 50% 50%; background-size: cover; } .zoom { @include animate(); display: none; position: absolute; bottom: 5px; right: 5px; z-index: 1; padding: 6px; border-radius: 100%; background: rgba(0,0,0,0.4); font-size: 10px; cursor: pointer; color: #FFFFFF; &:hover { background: #000000; } } &.small { max-width: 50px; } &.circle { border-radius: 50%; } &:hover { .zoom { display: block; } } } .parallax { height: 50vh; width: 100%; overflow: hidden; background: $dark_grey; canvas { width: 100%; height: 100%; opacity: 0; @include animate( 0.1s ); &.loaded { opacity: 0.5; } } }